历史上的今天
今天是:2025年05月25日(星期日)
2021年05月25日 | 51单片机的外部中断触发方式简介
2021-05-25 来源:eefocus
51单片机的外部中断有两种触发方式可选:电平触发和边沿触发。选择电平触发时,单片机在每个机器周期检查中断源口线,检测到低电平,即置位中断请求标志,向CPU请求中断。选择边沿触发方式时,单片机在上一个机器周期检测到中断源口线为高电平,下一个机器周期检测到低电平,即置位中断标志,请求中断。
这个原理很好理解。但应用时需要特别注意的几点:
1) 电平触发方式时,中断标志寄存器不锁存中断请求信号。也就是说,单片机把每个机器周期的S5P2采样到的外部中断源口线的电平逻辑直接赋值到中断标志寄存器。标志寄存器对于请求信号来说是透明的。这样当中断请求被阻塞而没有得到及时响应时,将被丢失。换句话说,要使电平触发的中断被CPU响应并执行,必须保证外部中断源口线的低电平维持到中断被执行为止。因此当CPU正在执行同级中断或更高级中断期间,产生的外部中断源(产生低电平)如果在该中断执行完毕之前撤销(变为高电平)了,那么将得不到响应,就如同没发生一样。同样,当CPU在执行不可被中断的指令(如RETI)时,产生的电平触发中断如果时间太短,也得不到执行。
2)边沿触发方式时,中断标志寄存器锁存了中断请求。中断口线上一个从高到低的跳变将记录在标志寄存器中,直到CPU响应并转向该中断服务程序时,由硬件自动清除。因此当CPU正在执行同级中断(甚至是外部中断本身)或高级中断时,产生的外部中断(负跳变)同样将被记录在中断标志寄存器中。在该中断退出后,将被响应执行。如果你不希望这样,必须在中断退出之前,手工清除外部中断标志。
3)中断标志可以手工清除。一个中断如果在没有得到响应之前就已经被手工清除,则该中断将被CPU忽略。就如同没有发生一样。
4)选择电平触发还是边沿触发方式应从系统使用外部中断的目的上去考虑,而不是如许多资料上说的根据中断源信号的特性来取舍。
上一篇:功能齐全的单片机音乐程序
史海拾趣
|
磁盘的一直在转,而且磁道是完全对称的环形,怎么准确寻址扇区呢? 扇区的绝对地址是相对于第0个扇区来说的,可是磁盘的一直在转,而且磁道是完全对称的环形,没有任何一个扇区在物理上是特殊的,系统是怎么寻址磁盘的第0扇区的呢?… 查看全部问答> |
|
我系一在校学生,导师弄了块 techwell tw6802(似乎又象6805)的视频采集卡,让我写个linux驱动。 在官方网站上没有一点与技术相关的资料, 真奇怪。 请有做过这方面的朋友 能否发点 与tw6802/tw6805相关的资料(比如datasheet,代码都可)给 ...… 查看全部问答> |
|
我用的Sensor是200万的,芯片输出为1600×1200,而我在应用层只采取了 1600×1130,我不确定是不是这样引起图像不同步的原因,还是别的什么原因。 … 查看全部问答> |
|
http://www.stmsky.com/bbs/viewthread.php?tid=1446&extra=网络版原理图==stm32核心板+w5100模块可以直接联网 ping 192.168.1.2直接打开 显示 hello world… 查看全部问答> |
|
【低功耗】基于Virtex-4 FPGA的低功耗图像融合系统 基于电源模块、外部存储器和FPGA器件等具体分析了融合系统的低功耗设计.FPGA器件选择了Xilinx公司针对高性能信号处理的Virtex-4 SX35三百万门级芯片,电源模块采用TI公司的两片TPS54310和一片TPS54610,具有低功耗特性,电压调节范围为0.9~3.3 V,调节 ...… 查看全部问答> |
|
Error[Pe065]: expected a ";"另一个程序就没有这个问题啊 #pragma vector=ADC_VECTOR __interrupt void ADC12ISR (void) { static uchar index = 0; results[index++] = ADC12MEM1; // Mo ...… 查看全部问答> |




