1. EXTI 简介
外部中断/事件控制器(EXTI)管理了控制器的23个中断/事件线。每个中断/事件线都对应有一个边沿检测器,可以实现输入信号的上升沿检测和下降沿的检测。EXTI可以实现对每个中断/事件线进行单独配置,可以单独配置为中断或者事件,以及触发事件的属性。
EXTI 控制器的主要特性如下:
每个中断/事件线上都具有独立的触发和屏蔽
每个中断线都具有专用的状态位
支持多达 23 个软件事件/中断请求
检测脉冲宽度低于 APB2 时钟宽度的外部信号。
2. EXTI 功能框图
3. 功能点
要产生中断,必须先配置好并使能中断线。
要产生事件,必须先配置好并使能事件线。
通过在软件中对软件中断/事件寄存器写“1”,也可以产生中断/事件请求
硬件中断选择
要配置 23 根线作为中断源,请执行以下步骤:
配置 23 根中断线的屏蔽位 (EXTI_IMR)
配置中断线的触发选择位(EXTI_RTSR 和 EXTI_FTSR)
配置对应到外部中断控制器 (EXTI) 的 NVIC 中断通道的使能和屏蔽位,使得 23 个中断线中的请求可以被正确地响应。
硬件事件选择
要配置 23 根线作为事件源,请执行以下步骤:
配置 23 根事件线的屏蔽位 (EXTI_EMR)
配置事件线的触发选择位(EXTI_RTSR 和 EXTI_FTSR)
软件中断/事件选择
可将这 23 根线配置为软件中断/事件线。以下为产生软件中断的步骤。
配置 23 根中断/事件线的屏蔽位(EXTI_IMR、EXTI_EMR)
在软件中断寄存器设置相应的请求位 (EXTI_SWIER)
4. 中断与事件比较
从上图可以知道,从外部激励信号来看,中断和事件的产生源都可以是一样的.之所以分成2个部分,由于中断是需要CPU参与的,需要软件的中断服务函数才能完成中断后产生的结果;但是事件,是靠脉冲发生器产生一个脉冲,进而由硬件自动完成这个事件产生的结果,当然相应的联动部件需要先设置好,比如引起DMA操作,AD转换等;
简单举例:
外部I/O触发AD转换,来测量外部物品的重量;
如果使用传统的中断通道,需要I/O触发产生外部中断,外部中断服务程序启动AD转换,AD转换完成中断服务程序提交最后结果;使用事件通道,I/O触发产生事件,然后联动触发AD转换,AD转换完成中断服务程序提交最后结果;相比之下,后者不要软件参与AD触发,并且响应速度也更块; 使用事件触发DMA操作,就完全不用软件参与就可以完成某些联动任务了。
5. 编码要点
配置时钟,系统时钟,GPIO时钟,SYSCFG时钟。
配置NVIC
配置GPIO输入模式
配置EXTI源输入及EXTI中断/事件线
EXTI 中断服务函数
注:事件机制提供了一个完全有硬件自动完成的触发到产生结果的通道,不要软件的参与,降低了CPU的负荷,节省了中断资源,提高了响应速度(硬件总快于软件),是利用硬件来提升CPU芯片处理事件能力的一个有效方法;
上一篇:秉火429笔记之十一 Systick--滴答定时器
下一篇:STM32之SPI的迭代
推荐阅读
史海拾趣
随着公司规模的扩大和产品线的丰富,BusBoard公司开始积极寻求市场扩张的机会。通过与国内外知名电子设备制造商建立合作关系,BusBoard公司的产品逐渐打入国际市场。同时,公司还积极参与行业交流和展会,与同行分享经验、探讨合作,共同推动电子行业的发展。这种合作共赢的理念使得BusBoard公司在市场上获得了更多的机会和资源。
随着业务的不断发展,AVX开始在美国本土进行大规模扩张。它在多个州设立了生产基地和销售网络,进一步提升了公司的产能和市场覆盖率。同时,AVX还积极开拓国际市场,与全球各地的客户建立了紧密的合作关系。这种全球化布局使AVX能够更好地满足客户需求,提升公司的竞争力。
在追求经济效益的同时,RF Labs也注重可持续发展和环保责任。他们积极采用环保材料和绿色生产工艺,降低生产过程中的能耗和排放。同时,RF Labs还积极参与环保公益活动,推动电子行业的绿色发展。这些举措不仅体现了RF Labs的社会责任感,也为公司的长期发展奠定了坚实的基础。
随着对射频技术的深入研究,RF Labs在多个领域取得了技术突破。他们成功开发了一系列高性能的射频电阻、衰减器、定向耦合器等关键元件,这些产品不仅具有优异的性能,而且能够满足各种复杂的应用场景需求。同时,RF Labs还不断推出创新产品,如智能探测器温度测量端子等,这些产品为客户提供了更加便捷和高效的解决方案。
BRIGHT公司不仅在电子产品领域取得了成功,还积极拓展酒店业务。他们成立了伯瑞特酒店集团,并在全国范围内开设了多家酒店。这些酒店以高品质的服务和独特的文化特色赢得了广大消费者的喜爱。其中,宁波伯瑞特酒店荣获了全国钻级酒店评定中的五钻酒家称号,千岛湖伯瑞特度假酒店也获得了金鼎特色文化主题饭店的荣誉。这些荣誉的获得不仅彰显了BRIGHT公司在酒店业务方面的实力,也为其未来的发展奠定了坚实的基础。
DSP硬件结构的特点和软件的特点 硬件结构的特点 1 Harvard结构 程序与数据存储空间分开,各有独立的地址总线和数据总线,取指和读数可以同时进行,从而提高速度,目前的水平已达到90亿次浮点运算/秒(9000MFLOPS) 2 采用流水作业(p ...… 查看全部问答∨ |
|
本帖最后由 paulhyde 于 2014-9-15 09:09 编辑 采用ATMEL单片机AT89C2051和电机驱动芯片L293D直接完成机器人的主体。两个电机分别作为左右轮子驱动。图中sensor1~sensor3分别结红外发射和红外接收管。 … 查看全部问答∨ |
|
PC机上做了交叉编译,步骤如下: #./configure --host-cc=gcc --cc=arm-linux-gcc --target=arm-armv4l-linux --enable-static --prefix=/tmp/mplayer --disable-win32 --disable-dvdread --enable-fbdev --disable-mencoder --disable-live 2 ...… 查看全部问答∨ |
;------------------------------------------------------------------------------ ; ; Function: void Launch (UINT32 *LaunchAddress) ; ; This function is called by OEMLaunch and disables MMU, invalidates I, D ; cache and TLB. U ...… 查看全部问答∨ |
zstack的数据接收和发送。对于接收方需要作两件事情: 1)注册一个端点,通过在XXXXApp_Init()函数里调用afRegister()来实现。如果需要处理ZDO消息和案件消息还得调用相应的注册函数ZDO_RegisterForZDOMsg,RegisterForKeys。 2)注册了端点和消 ...… 查看全部问答∨ |
|
前几天刚接触430吧,属于菜鸟,然后就想把各个模块过一遍,心里有个大概,然后写了一段程序:如下 #include<msp430x14x.h> void main(void) { WDTCTL=WDTPW+WDTHOLD+WDTNMI+WDTNMIES; //RST/NMI引脚为非屏蔽中 ...… 查看全部问答∨ |