若采用INT1中断源,电路如何连接,程序如何修改?c语言
时间: 2024-03-27 10:38:24 浏览: 37
单片机C语言程序设计 INT0及INT1中断计数(有源码)
5星 · 资源好评率100%
要采用INT1中断源,需要将INT1引脚连接到外部中断源。在8051中,INT1引脚是P3.3引脚。连接外部中断源时,需要将其连接到P3.3引脚上。
在程序中,需要对INT1中断进行初始化,使其能够响应外部中断源的信号。具体的程序如下:
```
#include<reg51.h>
#define LED P1
void init_int1(void)
{
IT1 = 1; // 设置为边沿触发模式
EX1 = 1; // 允许INT1中断
EA = 1; // 允许中断总开关
}
void int1_isr(void) interrupt 2
{
// 中断服务程序
LED = ~LED;
}
void main()
{
LED = 0xff; // 初始化LED灯为全灭状态
init_int1(); // 初始化INT1中断
while(1);
}
```
在上面的程序中,我们首先定义了LED为P1口,然后编写了一个初始化INT1中断的函数init_int1()。在这个函数中,我们将INT1中断设置为边沿触发模式,并允许INT1中断以及中断总开关。然后,我们编写了一个INT1中断的中断服务程序int1_isr()。在这个中断服务程序中,我们将LED灯取反。最后,在主函数中,我们初始化LED灯为全灭状态,并调用init_int1()函数初始化INT1中断。然后进入一个死循环,等待中断的发生。
当外部中断源触发时,会进入INT1中断服务程序中执行相应的操作。这样就完成了对INT1中断的使用。
阅读全文