矩陣鍵盤+單個數碼管
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
0.png (26.07 KB, 下載次數: 51)
下載附件
2017-5-22 16:11 上傳
0.png (75.34 KB, 下載次數: 46)
下載附件
2017-5-22 16:11 上傳
單片機源程序如下:
- #include<reg52.h>
- #define uchar unsigned char
- #define uint unsigned int
- unsigned char code table[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0X88,0x83,0xc6,0xa1,0x86,0x8e,0xbf};
- void delaylms(uint i)
- {
- uchar j;
- while(i--)
- {
- for(j=0;j<115;j++)
- {
- ;
- }
- }
- }
- void display(unsigned char i)
- {
- P0=table[i];
- }
- void main(void)
- {
- unsigned char temp;
- display(16);
- while(1)
- {
- P1=0xf0;
- temp=P1;
- if(temp!=0xf0)
- {
- delaylms(15);
- if(temp!=0xf0)
- {
- P1=0xfe;
- temp=P1;
- switch(temp)
- {
- case(0xee):display(0);break;
- case(0xde):display(1);break;
- case(0xbe):display(2);break;
- case(0x7e):display(3);break;
- }
- P1=0xfd;
- temp=P1;
- switch(temp)
- {
- case(0xed):display(4);break;
- case(0xdd):display(5);break;
- case(0xbd):display(6);break;
- case(0x7d):display(7);break;
- }
- P1=0xfb;
- temp=P1;
- switch(temp)
- {
- case(0xeb):display(8);break;
- case(0xdb):display(9);break;
- case(0xbb):display(10);break;
- case(0x7b):display(11);break;
- }
- P1=0xf7;
- temp=P1;
- ……………………
- …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載:
鍵盤.rar
(49.83 KB, 下載次數: 38)
2017-5-22 12:07 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|