-
數碼管的操作規範,首先,由於微控制器是按順序執行的(一次一條指令),所以在變化段要選擇重影,對應的選位引腳沒有變化,導致在很短的時間內某個位上出現兩個數字(微觀)的重疊。
這個問題在點陣屏中也會遇到,如何規避這個問題,其實很簡單,我們可以建立數碼管的操作規範。
規格:對於某次重新整理(在點陣屏中,是行或列重新整理),我們遵循以下順序。
1. 關閉顯示屏。
2.更改段落內容。
3. 開啟顯示屏。
例如,在您的示例中,在您的案例中,當選擇位 = 0xff 時,顯示是關閉的,而當相應的位開啟時,顯示是開啟的(即,該位向下移動到下乙個位)。
祝你好運,這種方法基本上可以解決任何情況下的重影問題,有時可能需要新增步驟4,延遲。
-
在更改顯示內容之前,足以使選擇無效。
-
更改顯示時,足以使選擇無效。
-
呵呵,這是個好問題。 這可以通過每次輸入資料,然後開啟數碼管坐位,然後在稍作延遲後關閉所有坐位來完成。 每個顯示器都是這樣的,絕對沒問題。
-
我沒有看到你展示程式,所以我只能描述它。
選擇每個位後,該位以 1 5ms 的延遲點亮,然後關閉位選擇。 共陰極,延遲(3); p2=0x00;將位置控制設定為 P2
-
每次傳送段選擇資料後,在傳送位選擇資料之前需要新增一句“p0=0xff; 這種說法是“滅絕”。
寫乙個片段:dula=1;
p0=table[1];
dula=0;
p0=0xff;在傳送資料之前關閉所有顯示器wela=1;
p0=0xfe;
wela=0;
delayms(10);
到共陽極數碼管)。
-
可以使用晶元74HC245,還有一些帶消隱引腳的數字晶元,可以線上檢視。
-
你可以清除資料,也可以清除位置,你看到差事。
-
方法如下:
每次傳送段選擇資料後,在傳送位選擇資料之前需要新增一句“p0=0xff; 這種說法是“滅絕”。
寫乙個片段:dula=1;
p0=table[1];
dula=0;
p0=0xff;在傳送資料之前關閉所有顯示器wela=1;
p0=0xfe;
wela=0;
delayms(10);
到共陽極數碼管)。
-
可以將段計算機增加 1,第 11 個是 0x00 或 0xff,即不顯示任何內容。
然後像這樣顯示之前的判斷:返回。
if(answer: bai==0) bai=10;
對於十位數 if((bai==0)&&shi==0))shi=10;
-
這兩個程式都將失敗。 向郭大夏學習的少,那是商人,不是設計師。
他的程式,在更新選擇之前,沒有關閉選擇,新的選擇資料將顯示在舊的選擇上,然後消失。
你的程式,同樣的方式。
另外,如果你知道如何計時器,你就不需要使用這個delay()函式,如果你養成了延遲的習慣,它很快就會成為你的缺陷。
-
通常使用迴圈顯示方式,如果點陣低電平處於活動狀態,則所有輸入都設定為0xff
-
汗! 你們都知道動態需要去視覺化,那麼你為什麼不考慮一下為什麼動態需要去視覺化呢?
動態湮滅是因為:這次顯示的資料會短暫地出現在之前的數碼管中。 從長遠來看,以前的數碼管上會有陰影。 需要運動功能減退(通過關閉位置選擇或段選擇)。
靜態數碼管,一般為乙個。 沒有數碼管這樣的東西。 如果是多位靜態數碼管,那麼它們都是鎖存的,資料互不影響。
也沒有出現在前一位數字中的資料。 所以沒有必要進行麻醉。
-
靜態顯示和動態顯示的區別在於硬體電路。
如果你了解電路,你就會明白消隱問題。
電源電路為微控制器提供穩定的電源。
時鐘電路使用晶體振盪器和電容器為微控制器提供穩定的時鐘參考訊號。 >>>More
我和你一樣,我也在學微控制器程式設計,首先要學C基礎,我現在也在學C,看**學攜帶,我現在看夏老師的,感覺還不錯,最吸引我的就是能聽懂我在說什麼,而且不累贅,簡明扼要,才是關鍵所在。以前看過郝斌的《金文什麼的》,康輝的也讀過一點,覺得太深奧了,哪些是重點聽不出來,分不清哪些是用的,什麼沒用,像我這樣的初學者已經失去了學習的信心。
微控制器是指微控制器。 簡單地說,它是一種整合了計算機所有功能的電路晶元。 方法:建議使用 Keil 的 C 語言和簡單的 congreusance。 >>>More