- 8
- 0
- 约小于1千字
- 约 6页
- 2020-11-03 发布于四川
- 举报
子任务二 用外部中断控制数码管显示数的增减;一、任务分析;二、硬件电路 ;三、程序设计;uchar Table_yang[10]={0xc0,0xf9,0xa4,
0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
/*共阳数码管0~9的字型编码,数组元素的下标值与字型相同*/
char shu=0; //外部变量,数码管显示数值
void main( ) //主函数
{ IT1=1; //外中断1下降沿触发
EA=1; //开总中断
EX1=1; //外中断1允许
while(1) // 无限循环
{ P0=Table_yang[shu/10];
//P2口输出十位数的字型编码
P2=Table_yang[shu%10];
//P3口输出个位数的字型编码
}
};void int1(void)interrupt 2
//外中断1中断服务程序
{ if(P1_6==0) //K1闭合
{ shu++; //显示值加1
if(shu59)shu=0;
//显示值大于59时,显示值清0
}
if(P1_7==0) //K2闭合
{ shu--; //显示值减1
if(shu0)shu=59;
//显示值小于0时,显示值变为59
}
}
原创力文档

文档评论(0)