写一个51单片机两个外部中断控制led 亮灭的代码
时间: 2024-05-08 13:18:27 浏览: 241
C51单片机外部中断代码
好的,这里是一个简单的示例代码:
```
#include <reg51.h>
sbit LED1 = P1^0;
sbit LED2 = P1^1;
void main()
{
IT0 = 1; // 设置INT0为下降沿触发
IT1 = 1; // 设置INT1为下降沿触发
EX0 = 1; // 使能INT0中断
EX1 = 1; // 使能INT1中断
EA = 1; // 总中断使能
while(1)
{
LED1 = ~LED1; // 交替切换LED1状态
delay(500); // 延时500ms
}
}
void INT0_ISR() interrupt 0
{
LED2 = ~LED2; // 切换LED2状态
}
void INT1_ISR() interrupt 2
{
LED2 = 0; // 关闭LED2
delay(500); // 延时500ms
LED2 = 1; // 打开LED2
}
```
上面的代码使用了两个外部中断 INT0 和 INT1 来控制 LED 灯的亮灭。其中 INT0 控制 LED2 的亮灭,INT1 控制 LED2 闪烁。
请注意,上面的代码只是示例代码,可能不够完善、不够健壮,只是为了演示如何使用外部中断来控制 LED 灯的亮灭,请在具体的应用中根据需要进行修改和优化。
阅读全文