C51单片机外部中断调用P3_2 ,P3_3口。
中断方式有两种,分别为电平方式和脉冲方式。
中断请求有0和1。中断总允许为EA=1,
IE0:外部中断请求0标志位;
IT0:外部中断0触发方式设置位,IT0=1下降沿触发,IT0=0低电平触发;
IE1:外部中断请求1标志位;
IT1:外部中断1触发方式设置位,IT1=1下降沿触发,IT1=0低电平触发;
外部中断0中断服务程序的编写:
void 函数名()interrupt 0
{
}
外部中断1中断服务程序的编写:
void 函数名()interrupt 2
{
}
参考实验程序(主程序为P1口输出跑马灯程序),编写中断子程序使得发生外部中断0,且为低电平触发时,LED灯全亮。中断结束后LED继续接上次状态进行跑马灯闪烁。
#include<reg51.h>
#include<intrins.h>
sbit P3_2=P3^2;
void delay(unsigned char i);
void main()
{
unsigned char ii;
P1=0xFE;
P3_2=1;
EA=1;
EX0=1;
IT0=0;
while(