C51单片机程序。利用外部中断INT0,INT1,当INT0产生中断时,使LED8亮8灭闪烁4次;
答案:2 悬赏:10 手机版
解决时间 2021-04-04 00:52
- 提问者网友:不爱我么
- 2021-04-03 07:27
C51单片机程序。利用外部中断INT0,INT1,当INT0产生中断时,使LED8亮8灭闪烁4次;
最佳答案
- 五星知识达人网友:枭雄戏美人
- 2021-04-03 08:17
#include
#include
#define uint unsigned int
#define uchar unsigned char
sbit LED1=P0^0;
sbit LED2=P0^1;
sbit LED3=P0^2;
sbit LED4=P0^3;
sbit LED5=P0^4;
sbit LED6=P0^5;
sbit LED7=P0^6;
sbit LED8=P0^7;
void Delay(uint ms)
{
uint i,j;
for(i=0;i for(j=0;j<1141;j++)
}
void main()
{
EX0=1;//开中断0
IT0=1;//下降沿触发
EX1=1;//开中断1
IT1=1;//下降沿触发
EA=1;//开总中断
LED1=1;
LED2=1;
LED3=1;
LED4=1;
LED5=1;
LED6=1;
LED7=1;
LED8=1;//LED初始状态为全灭
}
void INT0() interrupt 0
{
uint i;
for(i=0;i<4;i++)
{
LED8=0;
Delay(500);
LED8=1;
}
}
void INT1() interrupt 1
{
uint i;
for(i=0;i<4;i++)
{
LED1=0;
LED2=0;
Delay(500);
LED1=1;
LED2=1;
LED3=0;
LED4=0;
Delay(500);
LED3=1;
LED4=1;
LED5=0;
LED6=0;
Delay(500);
LED5=1;
LED6=1;
LED7=0;
LED8=0;
Delay(500);
LED7=0;
LED8=0;
}
}
备注:1、led对应引脚可以修改,程序中默认单片机引脚低电平点亮led,如果是高电平点亮
led,反过来设置引脚电平就可以了;
2、延时时间可以按自己需要修改;
3、#include这一句中的52根据实际需要修改,是51系列则改为51,52则改为
52,一定不能错,否则会出错。
#include
#define uint unsigned int
#define uchar unsigned char
sbit LED1=P0^0;
sbit LED2=P0^1;
sbit LED3=P0^2;
sbit LED4=P0^3;
sbit LED5=P0^4;
sbit LED6=P0^5;
sbit LED7=P0^6;
sbit LED8=P0^7;
void Delay(uint ms)
{
uint i,j;
for(i=0;i
}
void main()
{
EX0=1;//开中断0
IT0=1;//下降沿触发
EX1=1;//开中断1
IT1=1;//下降沿触发
EA=1;//开总中断
LED1=1;
LED2=1;
LED3=1;
LED4=1;
LED5=1;
LED6=1;
LED7=1;
LED8=1;//LED初始状态为全灭
}
void INT0() interrupt 0
{
uint i;
for(i=0;i<4;i++)
{
LED8=0;
Delay(500);
LED8=1;
}
}
void INT1() interrupt 1
{
uint i;
for(i=0;i<4;i++)
{
LED1=0;
LED2=0;
Delay(500);
LED1=1;
LED2=1;
LED3=0;
LED4=0;
Delay(500);
LED3=1;
LED4=1;
LED5=0;
LED6=0;
Delay(500);
LED5=1;
LED6=1;
LED7=0;
LED8=0;
Delay(500);
LED7=0;
LED8=0;
}
}
备注:1、led对应引脚可以修改,程序中默认单片机引脚低电平点亮led,如果是高电平点亮
led,反过来设置引脚电平就可以了;
2、延时时间可以按自己需要修改;
3、#include
52,一定不能错,否则会出错。
全部回答
- 1楼网友:鸽屿
- 2021-04-03 09:37
你可以再主函数里面写一个条件语句,在这个条件语句里写LED8亮8灭闪烁4次。然后在外部中断中写入达成这个条件的表达式追问能不能帮我写的详细点?谢谢追答你不会写中断吗????
我现在还得去做实验,等我中午有空的时候再给你写吧!!
我现在还得去做实验,等我中午有空的时候再给你写吧!!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯