/*行线接P1.0-P1.3,列线接P1.4-P1.7。
根据扫描键盘返回的键值编码查键值编码表,从而得到键值并送数码管显示。
开机时,数码管显示“-”。
当键按下时,数码管显示按下键的键值,蜂鸣器响一声。*/
#include <reg52.h> #include <intrins.h>//有什么用?
#define uchar unsigned char #define uint unsigned int
sbit BEEP = P2^1; //蜂鸣器驱动线
uchar key;
unsigned char code disp_code[]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xbf};
unsigned char code key_code[]={ 0xee,0xde,0xbe,0x7e,0xed,0xdd,0xbd,0x7d, 0xeb,0xdb,0xbb,0x7b,0xe7,0xd7,0xb7,0x77 };
/**********************************************************
延时子函数
**********************************************************/ void delayms(uint ms) { uchar t; while(ms--) { for(t = 0; t < 120; t++); } }
/**********************************************************
x*0.14MS 延时子函数
**********************************************************/ void delay0(uchar x) { uchar i; |