目录
1什么是中断
2中断系统在单片机系统中的作用
3如何使用单片机的中断系统
4实践
1什么是中断
RST
P0想输出高电平接上拉电阻
2中断系统在单片机系统中的作用
3如何使用单片机的中断系统
可位寻址:IE中的EA可以直接,EA=1;
外部中断:先EA=1;再EX1=1; IT1=1;此时只要引脚产生下降沿,cpu进入中断处理
4实践
#include<reg52.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
sbit DU = P2^6;
sbit WE = P2^7;
sbit Key_s1 = P3^5;
sbit flag = P3^7;//外部中断信号产生脚
//uchar num;//数码管的值
code固定table的值,code很大8kram区小
//uchar code table[] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00};
void delay(unsigned int xms) //@12.000MHz
{
unsigned char i, j;
while(xms--)
{
i = 2;
j = 239;
do
{
while (--j);
} while (--i);
}
}
void int1Init()
{
EA = 1;//开总中断
EX1 = 1;//开外部中断1
IT1 = 1;//外部中断1下降沿触发器
}
void int1 ()interrupt 2
{
P1 = ~P1;
}
void main()
{
int1Init();
while(1)
{
if(Key_s1 == 0)
{
delay(20);//消抖
if(Key_s1==0)
{
flag = 1;
flag = 0;
while(!Key_s1);//判断是否松手
}
}
}
}