前言:學機械的,軟硬兼修必需!從基礎再學起。
數碼管是一種半導體發光器件,其基本單元是發光二極體。下見數碼管結構圖。
按發光二極體單元連線方式分為共陽極數碼管和共陰極數碼管。共陽數碼管是指將所有發光二極體的陽極接到一起形成公共陽極(com)的數碼管。共陽數碼管在應用時應將公共極com接到+5v,當某一欄位發光二極體的陰極為低電平時,相應欄位就點亮;反之為高電平時不亮。
共陰數碼管是指將所有發光二極體的陰極接到一起形成公共陰極(com)的數碼管。
數碼管按段數分為七段數碼管和八段數碼管(多乙個小數點顯示);按能顯示多少個「8」,可分為1位、2位、3位、4位等數碼管。
驅動方式分靜態式和動態式兩類。靜態驅動程式設計簡單,顯示高度高,但占用i/o埠多,增加硬體電路的複雜性;動態驅動通過分時輪流控制各個數碼管的選通控制開啟,就使各個數碼管輪流受控顯示。只要掃瞄的速度足夠快,二極體的餘輝效應給人印象就是一組穩定的顯示資料,不會有閃爍感,能夠節省大量的i/o埠,而且功耗更低。
微控制器(at89c51)、4位共陰極數碼管(7seg-mpx4-cc-blue)。
對於數碼管,p1段控,p2位控。
共陰極數碼管,低電平位有效;數碼管位控以逐位顯示,段控以輸出當位內容;數碼管發光,各位顯示延時,產生常亮錯覺。
#include #define uint unsigned int
#define uchar unsigned char
void delay(uint);
voidledscan(void);
// common cathode(共陰極)
// led code, "0~9, a~f"
ucharledofnum =
;/******************** main function ********************/
void main(void)}
/******************** led scan ********************/
// p1控制段碼顯示
// p2位控(共陰極)
voidledscan(void)}
/******************** delay function ********************/
void delay(uint x)
a. 常顯
b. 分解(改延時delay1000)
一開始有兩根線接錯,後來再一步步檢查線路找出來。延時時間略短,亮度有點不足,或限流電阻太大了。
四位共陰極數碼管使用經驗
led數碼管是由多個發光二極體封裝在一起組成 8 字型的器件,引線已在內部連線完成,只需引出它們的各個筆劃,公共電極。led數碼管常用段數一般為7段,有的另加乙個小數點。按發光二極體單元連線方式可分為共陽極數碼管和共陰極數碼管。共陰數碼管是指將所有發光二極體的陰極接到一起形成公共陰極 com 的數碼...
stm32共陰極四位數碼管驅動
自己寫的四位數碼管驅動 74hc595 使用hal庫 led.c include main.h include gpio.h define getbit x,y x y 1 first bit is y 0 define sclk0 hal gpio writepin sclk gpio port,...
基於Proteus的四位數碼管顯示
p0口接斷碼線,p2口低四位接位選線,第一位數碼管的位選線由p2.0來控制,第二位數碼管的位選線由p2.1來控制,依次類推,由此可知可以控制p2.0到p2.3引腳,從而控制這個數碼管哪一位來顯示字元,而通過控制p0口輸出斷碼值來控制數碼管顯示什麼樣的字元 從而實現四位數碼管的顯示,由此也可推出多位數...