首页 理论教育 从零开始:ATmega16的外部中断实例

从零开始:ATmega16的外部中断实例

时间:2023-10-17 理论教育 版权反馈
【摘要】:ATmega16有INT0、INT1和INT23个外部中断源,分别由芯片外部引脚PD2、PD3、PB2上的电平的变化或状态作为中断触发信号。INT0/INT1的中断条件检测INT2则是异步的。电平以看门狗的频率检测两次。在5.0V、25℃的条件下,看门狗的标称时钟周期为1μs。在ATmega16中,除了寄存器SREG中的全局中断允许标志位I外,与外部中断有关的寄存器有4个,共有11个标志位。其作用分别是3个外部中断各自的中断标志位、中断允许控制位和用于定义外部中断的触发类型。

从零开始:ATmega16的外部中断实例

ATmega16有INT0、INT1和INT23个外部中断源,分别由芯片外部引脚PD2、PD3、PB2上的电平的变化或状态作为中断触发信号

一旦使能了中断,即使引脚INT0..2配为输出,只要电平发生了合适的变化,中断也会触发。这个特点可以用来产生软件中断。通过设置MCU控制寄存器MCUCR与MCU控制与状态寄存器MCUCSR,中断可以由下降沿、上升沿,或者是低电平触发(INT2为边沿触发中断)。当外部中断使能并且配置为电平触发(INT0/INT1),只要引脚电平为低,中断就会产生。若要求INT0与INT1在信号下降沿或上升沿触发,I/O时钟必须工作。INT0/INT1的中断条件检测INT2则是异步的。也就是说,这些中断可以用来将器件从睡眠模式唤醒。在睡眠过程(除了空闲模式)中I/O时钟是停止的。

通过电平方式触发中断,从而将MCU从掉电模式唤醒时,要保证电平保持一定的时间,以降低MCU对噪声的敏感程度。电平以看门狗的频率检测两次。在5.0V、25℃的条件下,看门狗的标称时钟周期为1μs。看门狗时钟受电压的影响,只要在采样过程中出现了合适的电平,或是信号持续到启动过程的末尾,MCU就会唤醒。启动过程由熔丝位SUT决定。若信号出现于两次采样过程,但在启动过程结束之前就消失了,MCU仍将唤醒,但不再会引发中断了。要求的电平必须保持足够长的时间以使MCU结束唤醒过程,然后触发电平中断。(www.xing528.com)

在ATmega16中,除了寄存器SREG中的全局中断允许标志位I外,与外部中断有关的寄存器有4个,共有11个标志位。其作用分别是3个外部中断各自的中断标志位、中断允许控制位和用于定义外部中断的触发类型。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈