新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 51單片機C編程(三、4位數(shù)碼管飛入效果)

51單片機C編程(三、4位數(shù)碼管飛入效果)

作者: 時間:2016-11-27 來源:網(wǎng)絡(luò) 收藏
4位數(shù)碼管飛入效果,PROTEUS仿真電路圖如下:

本文引用地址:http://butianyuan.cn/article/201611/322162.htm


#include
#define uchar unsigned char
#define LED P0

uchar code tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};//共陽數(shù)碼管數(shù)字碼
uchar disp1[8][4]={{8,10,10,10},{0,8,10,10},{5,0,8,10},{1,5,0,8},{10,1,5,0},{10,10,1,5},{10,10,10,1},{10,10,10,10}};
//數(shù)碼管的8個顯示狀態(tài)
uchar scan;
void delay1ms(int);
void display(int);

void main()
{
int i;
while(1)
{
for(i=0;i<8;i++)//依次掃描8個狀態(tài)
display(i);
}
}

void display(int m)
{
int i,j,k;
for(k=5;k>0;k--)//每個狀態(tài)共掃描5次
{
scan=0x01;//掃描碼
for(i=0;i<4;i++)
{
P3=scan;
j=disp1[m][i];//取掃描狀態(tài)中的一位
LED=tab[j];//取對應(yīng)的段碼
delay1ms(10);
scan=scan<<1;//掃描碼左移
}
}
}

void delay1ms(int x)
{
int i,j;
for(i=x;i>0;i--)
for(j=120;j>0;j--);
}



評論


技術(shù)專區(qū)

關(guān)閉