1樓:匿名使用者
建議你把掃描的程式放在中斷中處理,而把計算b1~b6的內容放在主迴圈中處理。
餘暉的問題,我感覺是掃描過程中,你延時控制的不一致引起的。幫你改了下程式,你試試
#include
#include "intrins.h"
#define uchar unsigned char#define uint unsigned intsbit wela=p2^7;
sbit dula=p2^6;
unsigned long base,num;
uchar count;
uchar code table1=;
uchar code table3=;
uchar display_buf[6];
void main()
}void inter() interrupt 1
2樓:做而論道
while(1)
加上消隱即可。
3樓:能者止於至善
顯示完一位後就關閉顯示就可以了。還有,你這樣寫不覺得太臃腫嗎?建議把經常出現的程式段寫成一個子函式呼叫。
4樓:
導致的原因一般是:選下一位的時候沒有關掉上一次的資料,導致上一次的資料被帶到下一位;所以一般都會在顯示結束後關掉數碼管,下次掃描的時候給資料就不會被黏在一起。
我也經常遇到,不過遇到多了就知道解決的方法和原因,希望能幫助到你~
5樓:風行我閃
你程式是1到6個數碼管同時顯示0,而後加上去吧,如果不是那請你詳細描述一下。
是的話那程式沒有問題,你看看是不是硬體問題。
6樓:匿名使用者
每次顯示完之後都加上一個p0=0;消影
7樓:匿名使用者
為什麼位段選都是0口?
微控制器動態掃描數碼管問題,關於用微控制器實現數碼管動態掃描顯示
電路問題不大,不需要在集電極加上拉電阻。用proteus 和抄實際電路有區別的,數碼管在軟體裡是二極體性質,在有電位差情況下才能導通,而三極體導通需要集電極和發射極之間有電位差,在 開始時,二極體和三極體都是截止的,二極體因為三極體沒有導通而無法開通,三極體因為二極體沒有導通而建立不了集電極電位,或...
微控制器用餘暉效應實現數碼管的動態顯示計時器
1.數碼管顯復示,是利用制 人眼的視覺暫留效應。不足餘輝,白熾燈斷電後還亮一會,才是餘輝,這可是有區別的,不可混淆。2.這是利用定時器t0定時1ms來實現數碼管動態顯示的。用查詢法,1ms到顯示一位,實現你說的間隔1ms顯示。3.數碼管的位控是用譯碼器74ls138的。4.雖然是書上的程式,但現在的...
c52微控制器數碼管動態顯示問題程式如圖,總提示語句shi shi temp 100 10存在系統錯誤,求大神解答
朋友,錯誤不在那一行,是上一行,少了個分號啊!細心一點。還有儘量不要用拼音來做變數名。英語不會就去查。修改一個51微控制器c語言程式問題,要求實現數碼管燈動態閃爍 數碼管的動態顯示原理沒搞懂。只要一個if語句就夠了,先顯十位,再顯各位。利用人眼的視覺暫留效應實現動態顯示。你的tr0 1只執行一次啊。...