外部中断0,1
//IE寄存器:EA,-,ET2,ES,ET1,EX1,ET0,EX0.字节地址A8H
//EX0:外部中断INT0允许位,置1,开,置0,关
//ET0:定时器T0允许位
//EX1:外部中断INT1允许位
//ET1:中断T1允许位
//ES:串口中断允许位
//ET2:定时器T2允许位(89C52)
//EA: 总中断允许位。控制所有中断使能的总开关
////////////////////////////////////////////////
//TCON:中断请求标志寄存器,TF1,TR1,TF0,TR0,IE1,IT1,IE0,IT0字节地址88H
//IT0:外部中断INT0的触发方式控制位。置0为低电平触发,置1为下降沿触发
//IE0:外部中断INT0的请求标志位,硬件自动轩1,响应后自动为0
//IT1:外部中断INT1 的触发方式控制位。
//IE1:外部中断INT1的请求标志位。
//TR0:定时器T0的运行控制位,置1为开始运行,置0停止运行
//TF0:定时器T0的溢出中断请求标志位。发生溢出中断请求时,硬件自动置1,响应后自动置0
//TR1:定时器T1的运行控制位
//TF1:定时器T1的溢出中断请求标志位
/////////////////////////
//IP中断优先级寄存器 -,-,PT2,PS,PT1,PX1,PT0,PX0
//PX0:外部中断INT0中断优先级控制位,置1为高优先级,置0为低优先级
//PT0:定时器/计数器0中断优先级控制位。
//PX1:外部中断INT1中断优先级控制位
//PT1:定时器/计数器1中断优先级控制位。
//PS:串口中断优先级控制位
//PT2:定时器/计数器2中断优先级控制位。
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit anjian4=P3^4;
sbit anjian5=P3^5;
uchar code shu_zi[]={0XC0,0XF9,0XA4,
0XB0,0X99,0X92,0X82,0XF8,0X80,0X90,0XFF};
uchar code shu_zi_wei[]={0x20,0x10,0x08,0x04,0x02,0x01};
uchar shu_zi_zai_cu[]={0,0,0,0,0,0};
uint shu_zi_A=0,shu_zi_B=0;
void yan_shi(uint ms)
{
uchar i,j;
for(i=0;i<ms;i++)
for(j=0;j<110;j++);
}
void xian_shi_shizi()
{
uchar i;
shu_zi_zai_cu[2]=shu_zi_A/100;
shu_zi_zai_cu[1]=shu_zi_A%100/10;
shu_zi_zai_cu[0]=shu_zi_A%10;
if(shu_zi_zai_cu[2]==0)//判断第2数是否为0
{
shu_zi_zai_cu[2]=10;//数组第2位存入10
if(shu_zi_zai_cu[1]==0)//判断第1位数是否为0
shu_zi_zai_cu[1]=10;
}
shu_zi_zai_cu[5]=shu_zi_B/100;
shu_zi_zai_cu[4]=shu_zi_B%100/10;
shu_zi_zai_cu[3]=shu_zi_B%10;
if(shu_zi_zai_cu[5]==0)//判断第6数是否为0
{
shu_zi_zai_cu[5]=10;//数组第6位存入10
if(shu_zi_zai_cu[4]==0)//判断第5位数是否为0
shu_zi_zai_cu[4]=10;
}
for(i=0;i<6;i++)
{ P2=shu_zi_wei[i];
P1=shu_zi[shu_zi_zai_cu[i]];
yan_shi(1);
}
}
void main()
{
IT0=1;//开外中断0,1
IT1=1;
PX0=1;//开外部中断0,优先
EA=1; //开总开关
EX1=1;//开外部中断1
EX0=1;//开外部中断0
while(1)
{
if(anjian4==0)shu_zi_A=0;
if(anjian5==0)shu_zi_B=0;
xian_shi_shizi();
}
}
//INT0中断
void zhongduan_0()interrupt 0
{
shu_zi_A++;
}
//INT1中断
void zhongduan_2()interrupt 2
{
shu_zi_B++;
}
下载程序:通过网盘分享的文件:外部中断0—1,
链接: https://pan.baidu.com/s/12i0_yfKxksd33Ad1damuNQ 提取码: ww9n








最新发布