C51单片机中断实验
实验要求:
- 要求通过中断方式检测有无按键
- 判断哪个按键(编号0-9),并且在数码管上显示对应的0-9
代码部分
#include<reg51.h>
char led_mod[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
char key_buf[]={0xee,0xde,0xbe,0xed,0xdd,0xbd,0xeb,0xdb,0xbb,0xe7};
void getKey() interrupt 0{
char key_scan[]={0xef,0xdf,0xbf,0x7f};
char i=0,j=0;
for(i=0;i<4;i++){
P2=key_scan[i];
for(j=0;j<10;j++){
if(key_buf[j]==P2){
P0=led_mod[j];
break;
}}}
P2=0x0f;
}
void main(void){
P0=0x00;
IT0=1;
EX0=1;
EA=1;
P2=0x0f;
while(1);
}
原理图
本文来自博客园,作者:、晚风、,转载请注明原文链接:https://www.cnblogs.com/xgcl/p/14716043.html