共陰極4位8段數碼管不用鎖存器該怎樣焊接51單片

2021-05-16 05:52:39 字數 3259 閱讀 7146

1樓:頂起石頭的小草

如果是課設,如果是小型數碼管,可以用微控制器直接驅動

如何使用微控制器at89c51驅動4位8段數碼管,如果用到晶片來驅動的,電路圖如何連線?

2樓:

看你將四位數碼管接在微控制器的哪一組輸出口 例如51微控制器一般都是四組八位輸i/o口p0,

專p1,p2,p3口 一般p0口是三態i/o是要接屬上拉電阻的。其他介面是不用接上拉電阻的。上拉電阻一般選用1k~4k7都可以保證各管腳輸出的電流小於500ma就可以了。

圖我傳的這個圖 六位數碼管雖然是共陰極的 (但是不影響原理)因為他接在51微控制器的三態介面上 只需接上拉電阻 (排阻)即可 。這種電路圖用兩個鎖存器u1,u2分別控制數碼管的位選和片選訊號 (在讀中標的wei1-wei6是位選訊號,a-g等是段選訊號)。鎖存器u2,u1是同型號的 用圖中的wela 和dula的(高電平和低電平)分別控制位選和段選的直通和所存。

這樣一組i/o口就能驅動數碼管了。節省了硬體的開銷。希望能幫到你!

祝你好運

3樓:

p0口接上拉電阻輸出段碼......p1口作位選

用51微控制器八位共陰極數碼管三極體,設計微控制器動態掃描顯示系統,八位數碼管穩定同時顯示1-8數字。

4樓:匿名使用者

樓上的程式不是看你圖編寫的,當然會錯,他那程式裡應該用到鎖存器了,你這兒是直接控制段選,位選的。

5樓:匿名使用者

#include

unsigned char code table=;

void show();

void delay();

void main()

void show()

}void delay()

6樓:琪羅琳

#include"reg52.h"

#define uchar unsigned char#define uint unsigned intsbit dula=p2^6;

sbit wela=p2^7;

uchar aa;

uchar code table=;

void delay(uint x)

void main()}}}

怎樣用51微控制器實現累加計時和倒計時,並用六個共陰極數碼管顯示出來。用兩個按鍵分別切換。

7樓:匿名使用者

剛開始上電時, system_mode不是1 也不是2,不知你初始化時是否給它賦值?另外你的按鍵檢測程式沒加入到迴圈程式中,剛上電時若沒有按鍵按下,則很快跳過兩個按鍵檢測語句,然後進入迴圈顯示程式中,這是一個死迴圈,只有中斷才可打斷其執行,所以再按什麼鍵也沒反應了,建議把按鍵檢測放入顯示迴圈中,它對顯示效果不會有什麼影響,或在初始化後加一個迴圈,若兩個按鍵都沒有按下,一直檢測按鍵

51微控制器的共陰數碼管怎麼顯示數字(c語言)

8樓:匿名使用者

要讓51微控制器共陰數碼管顯示數字,只需要將微控制器的p2埠輸出數字對應的段碼即可。

以顯示數字「0」為例,c語言程式如下:

#include

#define uchar unsigned char#define uint unsigned int//數碼管的段碼編碼

uchar table[10] =;

void main()

9樓:匿名使用者

共陰極數碼管也就是說,當控制訊號為1時該段led點亮,8段數碼管的數字0~9定義為:

3fh,06h,5bh,4fh,66h ;012346dh,7dh,07h,7fh,6fh ;56789以下為簡易8路搶答器的例程:

#include

#define uchar unsigned charuchar table=;

sbit rstkey=p2^2;

sbit speaker=p2^0;

void delay()//延時約400毫秒main()

switch(key)

p1=table[i];//顯示按下搶答器的號p0=key;//顯示按下鍵號的led

while(1)}}

10樓:匿名使用者

不涉及動態顯示,未用鎖存器

#include

#define _x10 (0xfe)

#define _x1 (0xfd)

unsigned char code tab=;

void main()

}void show(unsigned char duan,unsigned char wei)

else}

11樓:走在時間的前頭

你的l1/l2/l3都是什麼啊?還有latchduan??我有做過類似的設計,需要可以互相交流一下!

四位共陰數碼管,直接接到微控制器上,不加鎖存器,該怎麼辦???

12樓:休閒居大偉

這個簡單來

將共陰數碼管的

源段和位直接與微控制器相連

然後在位選上,加一個上拉電阻,組織根據數碼管的亮度來定微控制器的io埠為0有效,即0伏有效,所以直接驅動段選沒有問題至於位選,主要的供電**為上拉電阻,建議不能小於1k由下圖可以看出,實際點亮數碼管時的狀態

例如讓數碼管顯示數字 1,共陽數碼管的話,只要點亮b和c即可然而你所要用的是共陰,並且向直接與微控制器連線這樣的話,就需要特殊的點亮方式

前面講到,位選不是有上拉電阻嘛,當段選被選通的時候,數碼管全部被點亮 顯示數字8.

那麼,只要把不想被點亮的拉黑即可,如a d e f g dp數碼管的位選也是直接 與微控制器相連的,外加上拉電阻,微控制器的io埠足可以將1k電阻限流後的電壓直接拉到0伏,拉低的那個位選就不會被點亮

原理就是這麼簡單,點亮數碼管用到的陣列,自行編制一個即可

13樓:匿名使用者

共陰的估計bai驅動不了,用一個du口來驅動段(zhi如p1口),dao用四隻io口來驅動位(p2.0-p2.3),但共

回陰答的輸出全部靠微控制器供電,而且又是動態掃描顯示,估計做下來根本不會亮。

建議加上專門驅動電路,普通的鎖存驅動都老火的。所以最好是換成共陽的,驅動起來簡單點。

14樓:匿名使用者

四個控制位,八個控制段、但是估計你的io不一定能驅得動啊。

數碼管位選的問題共陰極數碼管的位選問題

不需要改硬體電路。你看的資料基本上都是 點亮1位的數碼管,然後在主程式流程中通過迴圈延時的方式保持一段時間,再去點亮第2個數碼管,再保持一段時間,如此迴圈。你說的沒錯,這種方式相當於對cpu的佔用率達到100 這裡的關鍵在延時時間,完全可以使用微控制器的定時中斷來完成這項工作。程式中可以定義1個全域...

共陽極數碼管和共陰極數碼管怎麼選擇

共陰極就是數碼管公共端接地 低電平 共陽極就是數碼管公共端都接 高電平 觸發方式是共陰極初始化時候給地電平,共陽極初始化給高電平,這樣在寫程式的時候在寫好編碼用o還是來控制鎖存器的段與位的高低就好了 共陰極和共陽極數碼管哪個比較好?如何區分?10 這個都是一樣的,只是在選用電源的時候要注意區分好。區...

如何判斷這個元件是共陽極數碼管還是共陰極數碼管

led數碼有共陽和共bai陰兩種,把些led發光du二極體zhi的正極接到dao 一塊 一般拼成一個專8字加一個小數點 而作屬為一個引腳,就叫共陽的,相反的,就叫共陰的,那麼應用時這個腳就分別的接vcc和gnd。找公共共陰和公共共陽首先,我們找個電源 3到5伏 和1個1k 幾百的也歐的也行 的電阻,...