由於藍橋杯的特殊設定,具體請看我的初始化解釋,所以藍橋杯的不同數字展示是和其他數碼管有區別的,因為藍橋杯的暫存器比較少,所以就是需要另乙個知識來實現這個不同數字顯現問題。
也就是不停轉換位選來顯現不同位置上的數字,通過分流輪流控制各個數碼管的com端,這就是動態驅動
在一定時間範圍內,儘管不是同時顯示,但掃瞄足夠快,給人印象就是一組穩定的資料。
在我的數碼管學習的部落格上介紹了數碼管的工作原理,我們也就不多嗶嗶,直接起飛~~~,直接實現程式:
來,我們讓數碼管顯示01234567。
以下是示例程式(附上注釋):
#include
"reg52.h"
sbit p25=p2^5;
sbit p26=p2^6;
sbit p27=p2^7;
sfr auxr =
0x8e
;unsigned
int yi,er,san,tt,num;
unsigned
int code tab[12]
=;/*void main()*/
void
delayms
(int ms)
void
main()
//不斷交換位選
}
大概就是這樣子
下面,既然我們學了定時器(定時器操作見我的定時器學習筆記),我們是不是可以實現一下倒計時的程式:
#include
"reg52.h"
sbit p25=p2^5;
sbit p26=p2^6;
sbit p27=p2^7;
sfr auxr =
0x8e
;unsigned
int yi,er,san,tt,num;
//取一些變數儲存各個數碼管的值
unsigned
int code tab[12]
=;void
delayms
(int ms)
void
timer0init
(void
)void
timer
() interrupt 1
}void
display()
void
main()
}
好了,這是我的動態數碼管的學習。我們可以繼續用乙個簡易時鐘來練習鞏固一 微控制器模組學習之數碼管
數碼管是led的公升級版,用到段選位選,其實都差不多 位選就是選某個數碼管com,段選就是數碼管送入資料 還有轉碼表 共陰0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71 共陽0xc0,xf...
藍橋杯 CT107D微控制器之數碼管
led數碼管是由多個發光二極體封裝在一起組成 8 字型的器件,引線已在內部連線完成,只需引出它們的各個筆劃 公共電極。led數碼管常用的段數一般為7段,有的另加乙個小數點。led數碼管根據led的接法不同,分為共陽和共陰兩類。藍橋杯cd107微控制器為共陽數碼管,共陽數碼管真值表如下。字元0 123...
藍橋杯微控制器學習過程記錄(三)靜態數碼管
微控制器靜態數碼管 靜態數碼管0 9顯示,led1亮 include unsigned int seg unsigned int i void delayms int ms void main void p2 0xa0 p0 0x00 p2 0x80 p0 0xff p01 0 while 1 vo...