|
MS板可以直接使用,其它的需要改定义的引脚和数码管的位选- #include<reg52.h>
- unsigned char const Dispay[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};
- unsigned char code Disp_bit[]={0x08,0x04,0x02,0x01};//数码管扫描
- //延时函数
- void delay(unsigned int cnt)
- {
- while(--cnt);
- }
- //主函数
- void main(void)
- {
- unsigned char i,a,b,m,j;
- while(1)
- {
- for(a=0;a<10;a++) ///千位
- for(b=0;b<10;b++) ///百位
- for(m=0;m<10;m++) ///十位
- for(j=0;j<10;j++) ///个位
- for(i=0;i<4;i++)
- {
- P1=Disp_bit[i]; //位选
- switch(i) //送显示
- {
- case 3: P0=Dispay[j];
- break;
- case 2:
- P0=Dispay[m];
- break;
- case 1:
- P0=Dispay[b];
- break;
- case 0:
- P0=Dispay[a];
- break;
- }
- delay(500);
- }
- }
- }
复制代码
|
|