一、实验内容
1. 编写外部中断0程序
2. 利用中断实现控制LED灯亮灭方式
3. 编译下载运行
4. 调试
二、实验步骤:
1.设计主程序完成流水灯工作
2.设计通过中断0输入信号(按键产生中断),改变流水灯工作方式为8个灯闪烁8次。
3.设计连接硬件
4.编写程序调试运行
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit k1=P3^2;
sbit k2=P3^3;
char i=100;
void main() //主函数
{
if(k1==0)
{
TMOD=0x01;
TH0=0Xee;
TL0=0x00;
P1=0xfe;
EA=1;
ET0=1;
IT0=0;
TR0=1;
while(1)
{
;
}
}
else {P1=0Xff;}
}
void time0() interrupt 1 //T0的中断函数
{
TH0=0xee; //重新赋初值
TL0=0x00;
i--;
if(i<=0)
{
P1=_crol_(P1,1); //左移1位
i=100; //重置循环次数
}
else if(k2==0)
{
P1=0xff;
}
}