|
所謂動(dòng)態(tài)顯示,表面看著是同時(shí)顯示,其實(shí)是用數(shù)碼管的動(dòng)態(tài)顯示方式 ,即每一時(shí)刻只有一位位選線有效,其他的都不顯示。只要控制好每位數(shù)碼管點(diǎn)亮顯示的時(shí)間和間隔,就可造成同時(shí)顯示的現(xiàn)象,因此用盡量最低的延時(shí)函數(shù)約1ms。此處我用6個(gè)數(shù)碼管顯示一段自定義字符。
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
單片機(jī)源程序如下:
- #include <reg51.h>
- #define uchar unsigned char
- #define uint unsigned int
- sbit DUAN=P2^6;
- sbit WEI=P2^7;
- uchar code led[6]=
- {0x05,0x06,0x07,0x08,0x09,0x0a};
- uchar code ledwei[6]=
- {0xfe,0xfd,0xfb,0xf7,0xef,0xdf};
- uchar code displaytab[16]=
- {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
- void delay()
- { uchar x,y;
- for(x=2; x>0; x--)
- for(y=250; y>0; y--); }
- void main()
- { uchar i;
- while(1)
- {
- for(i=0;i<6;i++)
- {
- P0=displaytab[led[i]];
- DUAN=1;
- DUAN=0;
- P0=ledwei[i];
- WEI=1;
- WEI=0;
-
- delay();
- P0=0xff;
- WEI=1;
- WEI=0;
- }} }
復(fù)制代碼
所有資料51hei提供下載:
數(shù)碼管動(dòng)態(tài)顯示.zip
(28.96 KB, 下載次數(shù): 71)
2018-12-5 09:51 上傳
點(diǎn)擊文件名下載附件
|
評(píng)分
-
查看全部評(píng)分
|