微控制器動態掃描數碼管問題,關於用微控制器實現數碼管動態掃描顯示

2021-03-11 04:39:41 字數 3152 閱讀 5960

1樓:匿名使用者

電路問題不大,不需要在集電極加上拉電阻。

2樓:

用proteus**和抄實際電路有區別的,數碼管在軟體裡是二極體性質,在有電位差情況下才能導通,而三極體導通需要集電極和發射極之間有電位差,在**開始時,二極體和三極體都是截止的,二極體因為三極體沒有導通而無法開通,三極體因為二極體沒有導通而建立不了集電極電位,或者說,三極體的集電極接數碼管的情況軟體會認為數碼管在關閉狀態下沒有電壓加到三極體的集電極,在給基極加高電位時,三極體和數碼管出現了問題,三極體需要數碼管導通後提供電流才能開通,數碼管需要三極體導通後提供電流通路,這就產生了矛盾,導致誰也沒辦法工作。在實際電路中不存在這樣的問題,就沒有必要加上拉電阻了。根本原因是軟體中認為數碼管是數字開關,非開即關,而現實中數碼管的開通是電流由小到大慢慢建立的。

看不到你的display()函式,但是也不一定是你程式的問題,proteus**真的很弱智,經常會出現各種莫名其妙的問題,像這種片選接在一起的,很容易出問題,而且是很弱智的問題,如果先學微控制器的話,勸你還是買塊實驗板,沒多少錢的,

3樓:胖大海君

嘿來嘿 俺來幫你解決問題

1、8050的這自種接法是正確bai的,需要在集du電極加上拉電阻,以增zhi加微控制器對dao數碼管的驅動電流。

2 、你設計的電路存在不合理的地方,需要改正。

即把左邊的序列變並行的介面晶片 由2個減為1個 同時為2組數碼管提供要顯示的段形

而要把三極體驅動由4個增加到8個 即每個數碼管的亮滅是單獨控制的。

這樣就不會出現你說的錯誤了。

3 display()函式一般是不會出錯的。

呵呵 滿意就給加分吧

關於用微控制器實現數碼管動態掃描顯示

4樓:匿名使用者

那是因為

抄你第一個掃襲描的時間比較長,原因bai是你第du一個的掃描時間zhi=顯示函式中的延時

dao+其他程式迴圈的時間;

解決的方法有兩個:

一、除了在顯示函式裡面顯示外,其他地方都關閉顯示,也就是說,在返回顯示函式的時候,關閉所以的顯示;

二、就是在定時中斷裡面顯示

5樓:匿名使用者

單獨做個顯示函式,其他地方只是呼叫。還有掃描時間延長到20ms ,其他中斷頻率是不是太高了!數碼管顯示掃描最好用定時器控制,

6樓:匿名使用者

如果是數碼bai管動態顯示,du那麼就是重新整理頻率造zhi成的。dao

可以調整一下頻版率。也就是每個筆段的權顯示(點亮)時長。

這個是比較繁瑣的。

頻率太慢,看起來會有閃爍的感覺,或者不能形成有效數字,只是單個顯示的迴圈了。

如果太快就會造成顯示為全亮(但亮度不是很高),但是有個別亮度會大一些。那麼亮度大的就一定是保持時間長的。

微控制器初學,數碼管動態掃描,顯示問題

7樓:

微控制器做數碼抄管和led一類的掃描時,要注意掃描的頻率,迴圈一週的時間不要超過20ms,也不要太快掃描,否則會使得數碼管出現閃爍的情況,另外在每組數碼管的切換前,需要將全部的控制公共端先關閉,然後再送數碼管要顯示的資料,然後再開起對應的控制端,然後再延時。建議迴圈一週的時間放在10ms左右。

另外,如果除了數碼管顯示外,還有其他控制要做的,建議不要用delay一類的迴圈來延時,這樣你的延時時間不好控制,掃描時間不均勻的同樣會有閃爍的問題,建議採用微控制器的定時器來控制掃描時間。

8樓:匿名使用者

dula=1;

p0=table[shi];

dula=0;

p0=0xff;

wela=1;

p0=0xfe;

wela=0;

p0=0xff;

//delayms(1); //有延時和沒有為什麼不一樣,有延時時顯示正常,沒有時就會顯專示8.8.隱隱約約有數字跳動

延時要放屬在p0=0xff;之前

動態顯示是顯示1~5ms,關顯示再下一位

9樓:匿名使用者

動態顯示的原理,就是一位一位的顯示,需要重新整理頻率的

51微控制器問題,利用動態掃描方法在六位數碼管上顯示出穩定的654321,如何用for語句實現這個功能? 10

10樓:匿名使用者

既然用了定時器, 還不如用定時器掃描

11樓:

它顯示的資料,證明是沒有問題的方案理論。會顯示錯誤資訊資料編碼,並密切相關的硬體接線。 7 led數碼管(不包括點),同時點亮的led顯示屏數字顯示資料的一部分,結合硬體接線改程式一樣。

關於微控制器數碼管動態掃描顯示。

12樓:匿名使用者

只要有程式儲存器的微控制器即可

13樓:勞笑捷錕

你的延時函式時間太短了

下面說工作流程

第一個管子的位選開啟,選中第一個管,關位選,段選開啟,送資料,關段選延時delay(5)

(注意這裡,人的眼睛有視覺暫留,大約0.1-0.4秒,如果你延時很短,這兩個數碼管分先後,第一個亮,然後第二個亮,迴圈往復,但是你的眼睛分辨不出來,就感覺它倆是一直亮,你可以把延時加的長點,慢慢試試,你就知道其中的含義了)

第二個管子的位選開啟,選中第二個管,關位選,段選開啟,送資料,關段選

51微控制器數碼管動態顯示12345,我為了讓它掃描更快,去掉了延時,結果沒有達到預期效果,請問為什麼會這樣

14樓:匿名使用者

去掉延時估計就該閃了,連數字都顯示不清楚。你給他電,他還沒亮起來呢你就斷電了

15樓:匿名使用者

一方面動態掃描顯示7段led是利用人眼的視覺暫留原理來實現的,如果你不延時,那麼暫留也就留不住了,所以要讓人眼捕捉到顯示的led,必須有足夠的延時時間,另一方面要保證led顯示的亮度,也必須有足夠的時間讓led將電壓建立起來,畢竟,從0到1實際上不是瞬時達到的,有一個漸變過程。

16樓:靜雨月軒

動態顯示數碼管,延時是必須的哦,延時個5到10ms就夠了,而且要想顯示效果好,最好還是清屏一下,

微控制器動態數碼管顯示的餘暉問題微控制器動態數碼管顯示的餘暉問題

建議你把掃描的程式放在中斷中處理,而把計算b1 b6的內容放在主迴圈中處理。餘暉的問題,我感覺是掃描過程中,你延時控制的不一致引起的。幫你改了下程式,你試試 include include intrins.h define uchar unsigned char define uint unsign...

89c52微控制器無論在做動態數碼管的掃描時,無論怎樣消影,都有一定的重影,這是怎麼回事

1.顯示前先將所有數碼管熄滅,然後再顯示。2.除了顯示數碼外,其他時間都是熄滅的。3.檢查是否存在交替顯示不同數字。4.掃描速度要足夠快。應該是你延時時間太短所致,兩個段碼之間的延時時間大於3毫秒就應該沒有重影了。89c52微控制器的靜態顯示和動態顯示消影問題 汗!你都知道 動態需要消影了,那你咋沒...

微控制器用餘暉效應實現數碼管的動態顯示計時器

1.數碼管顯復示,是利用制 人眼的視覺暫留效應。不足餘輝,白熾燈斷電後還亮一會,才是餘輝,這可是有區別的,不可混淆。2.這是利用定時器t0定時1ms來實現數碼管動態顯示的。用查詢法,1ms到顯示一位,實現你說的間隔1ms顯示。3.數碼管的位控是用譯碼器74ls138的。4.雖然是書上的程式,但現在的...