这张图是一条外部中断线或外部事件线的示意图,图中信号线上划有一条斜线,旁边标志19字样的注释,表示这样的线路共有19套。
图中的蓝色虚线箭头,标出了外部中断信号的传输路径,首先外部信号从编号1的芯片管脚进入,经过编号2的边沿检测电路,通过编号3的或门进入中断“挂起请求寄存器”,最后经过编号4的与门输出到NVIC中断控制器;在这个通道上有4个控制选项,外部的信号首先经过边沿检测电路,这个边沿检测电路受上升沿或下降沿选择寄存器控制,用户可以使用这两个寄存器控制需要哪一个边沿产生中断,因为选择上升沿或下降沿是分别受2个平行的寄存器控制,所以用户可以同时选择上升沿或下降沿,而如果只有一个寄存器控制,那么只能选择一个边沿了。
接下来是编号3的或门,这个或门的另一个输入是“软件中断/事件寄存器”,从这里可以看出,软件可以优先于外部信号请求一个中断或事件,既当“软件中断/事件寄存器”的对应位为“1”时,不管外部信号如何,编号3的或门都会输出有效信号。
一个中断或事件请求信号经过编号3的或门后,进入挂起请求寄存器,到此之前,中断和事件的信号传输通路都是一致的,也就是说,挂起请求寄存器中记录了外部信号的电平变化。
外部请求信号最后经过编号4的与门,向NVIC中断控制器发出一个中断请求,如果中断屏蔽寄存器的对应位为“0”,则该请求信号不能传输到与门的另一端,实现了中断的屏蔽。
明白了外部中断的请求机制,就很容易理解事件的请求机制了。图中红色虚线箭头,标出了外部事件信号的传输路径,外部请求信号经过编号3的或门后,进入编号5的与门,这个与门的作用与编号4的与门类似,用于引入事件屏蔽寄存器的控制;最后脉冲发生器把一个跳变的信号转变为一个单脉冲,输出到芯片中的其它功能模块。
在这张图上我们也可以知道,从外部激励信号来看,中断和事件是没有分别的,只是在芯片内部分开,一路信号会向CPU产生中断请求,另一路信号会向其它功能模块发送脉冲触发信号,其它功能模块如何相应这个触发信号,则由对应的模块自己决定。
在图上部的APB总线和外设模块接口,是每一个功能模块都有的部分,CPU通过这样的接口访问各个功能模块,这里就不再赘述了。
关键字:STM32 单片机 中断机制
引用地址:
STM32单片机的中断机制
推荐阅读最新更新时间:2024-03-16 13:18
2012年MCU低功耗之王到底花落谁家?
低功耗,拼的到底是什么? 低功耗一直是各大芯片厂商的兵家必争之地。今年3月份以来,市场上一下子出来很多基于M0、M3内核的产品,瑞萨、飞思卡尔、德仪、Microchip这四大家族各自标榜着自家产品的低功耗技压群雄,每个厂商对于降低功耗都有不同的处理方式,然而低功耗之战,拼的到底是什么? 飞思卡尔今年8月份举办的FTF北京站上的一例功耗对比的demo演示引发了一系列的低功耗之争,在那一场比赛中Kinetis L完胜。但是,也有业内人士表示,这个实验只是通过跑一段程序就说明哪家MCU更省电,有些片面,毕竟MCU还要从外设功耗、待机功耗等综合考量。于是,MCU几大家族纷纷搬出自己的看家之作,TI的金刚狼、瑞萨的RL78家族、Micr
[单片机]
C51-单片机STC11L系列
STC11L32XE STC11L48XE STC11L60XE 1. 内部flash大小 : 32KB 48KB 60KE,可以进行code变量定义。如: uchar code data; 内部EEPROM(操作类似NOR flash都是sector操作)大小: 29KB 13KB 1KB; 引脚数:64引脚(宏晶科技的单片机引脚数目最多为64PIN,最少8PIN); 2. UART:都有2个串口UART,但是2个串口是分时复用的。烧写程序固定为串口P3.0(RXD)/P3.1(TXD)。串口波特率设置有相应的上位机计算软件工具,163邮箱中有此软件。 3. 中
[单片机]
串行AD转换器TLC2543与51单片机的接口设计
TLC2543是11个输入端的12位模数转换器,具有转换快、稳定性好、与微处理器接口简单、价格低等优点,应用前景好。由于它带有串行外设接口(SPI,Seri-al PeripheralInterface),而51系列单片机没有SPI,因此研究它与51单片机的接口就非常有意义。 1 TLC2543的引脚及功能 TLC2543是12位开关电容逐次逼近模数转换器,有多种封装形式,其中DB、DW或N封装的管脚图见图1。引脚的功能简要分类说明如下。 I/OCLOCK:控制输入输出的时钟,由外部输入。 DATAINPUT:控制字输入端,用于选择转换及输出数据格式。 DATAOUT:A/
[单片机]
基于51单片机的锅炉水位温度压力检测系统仿真设计
仿真图proteus7.8及以上 程序编译器:keil 4/keil 5 编程语言:C语言 设计编号:S0056 1.主要功能: 基于51单片机AT89C51/52(与AT89S51/52、AT89C51/52、STC89C51/52等51内核单片机通用) 1.系统实时通过LCD1602显示水位检测值,锅炉炉膛温度值,锅炉内部压力值。 2、可对锅炉的水位上下限、炉膛温度上下限、压力上下限进行设置,第一行显示上限值,第二行显示下限值。 3、如果水位、温度、压力过限则蜂鸣器报警,通过LED指示报警类型。 4、默认水位下限值10cm,上限值40cm,压力下限值30kPa,压力上限值50kPa,温度下限值5℃,温度上限值105℃。 5、温
[单片机]
大联大携手联发科技,力推高性能、低功耗智能手表解决方案
2016年9月6日,致力于亚太地区市场的领先半导体元器件分销商---大联大控股宣布,将在大联大电商上推广由其旗下品佳集团代理的联发科技(Mediatek)MT2523高整合度低耗电可穿戴智能手表解决方案。 联发科技的MT2523高整合低耗电可穿戴智能手表平台是专为运动及健身型智能手表而设计,为全球首款集成GPS、双模低功耗蓝牙及支持高分辨率MIPI显示屏的系统级封装(SiP)芯片平台。 MT2523具备超长续航、支持高质量显示以及体积小巧等特点,能够提供最佳的用户体验。采用系统级封装的印刷电路板面积要比竞争对手的方案小41%。搭载MT2523方案的可穿戴设备充电一次就可待机一周多时间,大幅领先其他同级产品。
[物联网]
在STM32上如果不使用外部晶振,OSC_IN和OSC_OUT的接法
如果使用内部RC 振荡器 而不使用外部晶振,请按照下面方法处理:
1)对于100脚或144脚的产品,OSC_IN应接地,OSC_OUT应悬空。 2)对于少于100脚的产品,有2种接法: 2.1)OSC_IN和OSC_OUT分别通过10K 电阻 接地。此方法可提高 EMC 性能。 2.2)分别重映射OSC_IN和OSC_OUT至PD0和PD1,再配置PD0和PD1为推挽输出并输出'0'。此方法可以减小功耗并(相对上面2.1)节省2个外部电阻。
以下是在 ST 英文网站FAQ上抄下的详细解释:
1) In 100 and 144 packages, the OSC_IN /OSC_Out pins are a de
[单片机]
arduino好还是单片机好,arduino和单片机的区别
很多初学者和我当初一样不知道arduino和单片机的区别。 其实我也是学完才知道arduino的存在,还好当初是直接学的51单片机,不然可能就去学arduino了,因为这个平台对初学者比较友好。 如果当初先尝试arduino可能就不会往单片机发展。 我们要想搞清楚arduino和单片机哪个更好之前,我们需要先知道它们之间的区别。 一、Arduino和单片机的区别? arduino和51都是入门级学习套件。 1.arduino Arduino的开发一般是一套以AVR单片机为核心控制器的硬件(开发板),还有配套他们的开发环境Arduino IDE。 简单来说呢就是arduino是对单片机的二次封装,所有外设、模块接口都是现成
[单片机]
基于单片机及传感器为控制器核心的智能机器人控制系统设计
1 前 言 机器人技术是融合了机械、、、、人工智能等许多学科的知识,涉及到当今许多前沿领域的技术。一些发达国家已把机器人制作比赛作为创新教育的战略性手段。如日本每年都要举行诸如“NHK杯大学生机器人大赛”、“全日本机器人相扑大会”、“机器人足球赛”等各种类型的机器人制作比赛,参加者多为学生,旨在通过大赛全面培养学生的动手能力、创造能力、合作能力和进取精神,同时也普及智能机器人的知识。 开展机器人的制作活动,是培养大学生的创新精神和实践能力的最佳实践活动之一,特别是机电专业学生开展综合知识训练的最佳平台。本文针对具有引导线环境下的路径跟踪这一热点问题,基于控制及传感器原理,通过硬件制作和编程,制作了一个机器人,实现了机器人
[机器人]