單片機(jī)LED數(shù)碼電路和C程序
讓一個(gè)單片機(jī)的LED數(shù)碼顯示器,從第一位顯示1、第二位顯示數(shù)字2、第三位顯示3、...一直到第六位顯示6,每個(gè)數(shù)字間隔0.5秒。
然后一直循環(huán)下去。求一個(gè)C 語(yǔ)言程序!
-------------------------
假定電路如下圖。
針對(duì)這個(gè)簡(jiǎn)單題目,不用編很長(zhǎng)的程序,如下所示即可:
//================================================
#include
sbit dua = P2^6;
sbit wei = P2^7;
char code Digit[6] = {0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82};
char code Wigit[6] = {0x01, 0x02, 0x04, 0x08, 0x10, 0x20};
void delay(dl_t)
{
unsigned int i, j;
for(i = dl_t; i > 0; i--) for(j = 110; j > 0; j--);
}
void main()
{
char i;
while(1) {
for (i = 0; i < 6; i++) {
dua = 1; P0 = ~Digit[i]; dua = 0;
wei = 1; P0 = ~Wigit[i]; wei = 0;
delay(500);
} } }
//================================================