完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
最近公司一个案子需要用到超低功耗MCU,在ti和ST的片子中纠结了一段时间,最后选了ST的STM8L151G2U6。
在使用外部中断的时候迷糊了,发现这个的外部中断跟普通MCU的外部中断不一致,经过半日分析整理得出一下结论,不知正确与否,望与大神们讨论。 一般MCU的外部中断可以定义到某个Port上某一固定的IO上,而STM8L的外部中断与此不同,共有有两种设定方式: 方式一:设定IO口 即将具有外部中断功能的Port的某一IO设定为外部中断的触发输入 该设置涉及到EXTI_CR1和EXTI_CR2,然后再中断函数中再去确定是哪个Port的IO发生了中断事件。 方式二:设定Port 即将Port作为外部中断的触发输入,然后再中断函数中确定是哪个IO发生了中断事件,这个带spec里面我没找到详细说明,是通过register设定得出这个结论的,涉及到EXTI_CR3,EXTI_CR4以及EXTI_CONF1,EXTI_CONF2四个register,其中CR3和CR4用于设定Port的sensitivity,CONF1和CONF2用于设定是整个Port用于中断功能还是半个Port(0-3或者4-7号IO)用于中断功能。 以上是个人对于STM8L外部中断的理解,由于打样的PCB板还未回来,所以无法验证,如有错误还望大神们提出。 |
|
相关推荐
1个回答
|
|
您提到的STM8L系列MCU的外部中断与传统MCU的外部中断确实存在一些差异。STM8L系列MCU的外部中断主要有两种设定方式,您已经提到了其中一种。下面我将详细解释这两种方式,并讨论它们的原因。
1. 通过EXTI_CR1和EXTI_CR2寄存器设置外部中断: 在STM8L系列MCU中,外部中断(EXTI)是通过两个寄存器(EXTI_CR1和EXTI_CR2)来配置的。这些寄存器允许您为每个外部中断线(EXTI0到EXTI7)选择触发源。触发源可以是GPIO端口上的某个引脚,也可以是其他内部信号。这种方式允许您灵活地选择触发外部中断的信号。 在这种方式下,您需要在中断服务程序中根据EXTI标志位来判断是哪个GPIO引脚触发了中断。这是因为EXTI_CR1和EXTI_CR2寄存器只负责配置触发源,而具体的中断判断需要在中断服务程序中实现。 2. 使用GPIO端口的外部中断功能: STM8L系列MCU的GPIO端口也具有外部中断功能。您可以通过配置GPIO端口的CRH寄存器来启用某个引脚的外部中断功能。这种方式下,外部中断的触发源是固定的,即对应GPIO端口上的某个引脚。 使用GPIO端口的外部中断功能的优点是配置简单,可以直接通过GPIO端口寄存器来设置。但是,这种方式的灵活性相对较低,因为触发源是固定的。 总结: STM8L系列MCU的外部中断与传统MCU的外部中断的主要区别在于触发源的配置方式。STM8L提供了两种配置方式,分别是通过EXTI_CR1和EXTI_CR2寄存器设置,以及使用GPIO端口的外部中断功能。这两种方式各有优缺点,您可以根据实际需求来选择适合的方式。 您提到的结论是正确的,STM8L的外部中断确实与传统MCU的外部中断存在差异。这种差异主要是由于STM8L系列MCU的设计目标是超低功耗,因此在外部中断的配置上进行了一定的优化和简化。希望这些信息对您有所帮助。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1568 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1513 浏览 1 评论
939 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
669 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1561 浏览 2 评论
1851浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
620浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
506浏览 3评论
511浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
492浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-13 06:33 , Processed in 0.800980 second(s), Total 80, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号