完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
请问,STM8中断问题,不能同时初始化同一中断线的两个管脚,比如PC4,PD4,对应中断线EXti4,如果同时初始化PC4/PD4的终端,则中断不能正常工作。PD4对应按键中断,如果不初始化PIR(红外)中断,按键是正常的,只要初始化红外的GPIO中断,按键中断就会出问题。请问这是什么问题啊,难道同一中断线同时只能有一个使用一个中断吗?跪谢void pir_gpio_init(void)
{ /* pri gpio */ GPIO_Init(GPIOC, GPIO_Pin_4, GPIO_Mode_In_PU_IT); EXTI_SetPinSensitivity(EXTI_Pin_4, EXTI_Trigger_Rising_Falling); ITC_SetSoftwarePriority(EXTI4_IRQn, ITC_PriorityLevel_2); } void key_gpio_init(void) { key_down_flag = 0; //EXTI_DeInit(); GPIO_Init(GPIOD, GPIO_Pin_4, GPIO_Mode_In_PU_IT); //EXTI_SetPortSensitivity(EXTI_Port_D, EXTI_Trigger_Falling); EXTI_SetPinSensitivity(EXTI_Pin_4, EXTI_Trigger_Rising); ITC_SetSoftwarePriority(EXTI4_IRQn, ITC_PriorityLevel_1); } |
|
相关推荐
1个回答
|
|
在STM8L151中,确实存在一个问题,即不能同时初始化同一中断线的两个管脚。这是因为STM8L151的中断系统设计为每个中断线只能有一个GPIO管脚触发中断。当两个管脚共享同一个中断线时,它们会相互干扰,导致中断不能正常工作。
要解决这个问题,你可以尝试以下几种方法: 1. **使用不同的中断线**:如果可能的话,尽量选择不同的中断线来初始化GPIO管脚。这样可以避免两个管脚共享同一个中断线的问题。 2. **软件去抖动**:对于按键等需要去抖动的应用,可以在软件层面实现去抖动逻辑。当检测到按键中断时,通过延时和再次检测来确认按键是否真正被按下。 3. **硬件去抖动**:如果条件允许,可以使用外部硬件去抖动电路,如RC滤波器,来减少按键等输入信号的抖动。 4. **修改中断优先级**:在STM8L151中,可以通过设置中断优先级来解决中断冲突的问题。将其中一个中断的优先级设置得更高,这样在两个中断同时触发时,优先级较高的中断会被优先处理。 5. **使用定时器中断**:如果可能的话,可以考虑使用定时器中断来替代GPIO中断。定时器中断可以更灵活地控制中断触发的时间,从而避免与另一个中断冲突。 6. **使用外部中断控制器**:如果以上方法都无法满足需求,可以考虑使用外部中断控制器来扩展中断资源。这样可以为每个GPIO管脚分配独立的中断线,从而避免中断冲突。 总之,STM8L151的中断系统确实存在一定的局限性,但通过一些软件和硬件的优化,仍然可以解决这个问题。希望以上建议对你有所帮助。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1535 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1488 浏览 1 评论
906 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
651 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1531 浏览 2 评论
1841浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
591浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
493浏览 3评论
492浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
473浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-4 01:46 , Processed in 0.728335 second(s), Total 82, Slave 65 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号