[STM8] 是不是会出现如下的问题

[复制链接]
1348|16
 楼主| chenjunt 发表于 2021-12-8 22:03 | 显示全部楼层 |阅读模式
由于STM8S的外部中断没有中断标志位:
设置端口外部中断为下降沿(或者上升沿)中断,当程序在执行比它优先级高(或者同等优先级)的中断程序时,改管脚上的沿中断将无法得到响应,之后也不再响应?
llljh 发表于 2021-12-8 22:04 | 显示全部楼层
这个中断信号就这样漏响应了吗?
jiaxw 发表于 2021-12-8 22:06 | 显示全部楼层
对的,本来就是这样,所以尽量不要在中断里逗留太久,不要在中断里整什么while,这种语句。。
supernan 发表于 2021-12-8 22:08 | 显示全部楼层
因为没有中断的清除标志位,这一点与其它单片机是不同的。
xxrs 发表于 2021-12-8 22:13 | 显示全部楼层
EXTI_CR1 触发边沿的设置 要在总中断没开时才能写入!
houcs 发表于 2021-12-8 22:15 | 显示全部楼层
PD7 是 不可屏蔽的最高优先级的硬件中断  (TLI)
yinxiangh 发表于 2021-12-8 22:17 | 显示全部楼层

设置顺序:最好先关中断 设置边沿 开启引脚 最后开总中断
DisableAllIntp();
EXTI_CR1 = ****(PD口双沿中断);
Init_Exti_PD_Intp();
EnableAllIntp();
ousj 发表于 2021-12-8 22:18 | 显示全部楼层

"当中断请求没有立即得到响应时,该中断请求被锁存;当其软件优先级及硬件优先级均为最高
的时候,该中断被处理。
jiajs 发表于 2021-12-8 22:20 | 显示全部楼层
当中断请求没有立即得到响应时,该中断请求被锁存,所以中断里不能干太多事,尤其的延时
juventus9554 发表于 2021-12-8 22:22 | 显示全部楼层
优先级高的执行完的时候如果中断条件还在还是会中断的。
huangchui 发表于 2021-12-8 22:25 | 显示全部楼层
中断有优先级,这是肯定的,但是同时中断也会执行很快的,严格控制其他中断的时间就好了。
yszong 发表于 2021-12-8 22:26 | 显示全部楼层
最好先关中断 设置边沿 开启引脚 最后开总中断
juventus9554 发表于 2021-12-8 22:31 | 显示全部楼层
不会漏掉吧
stly 发表于 2021-12-8 22:33 | 显示全部楼层
之后应该会响应的
supernan 发表于 2021-12-8 22:35 | 显示全部楼层
应该不会的啊  
huangchui 发表于 2021-12-8 22:37 | 显示全部楼层
不用担心 不会出现这个问题的
 楼主| chenjunt 发表于 2021-12-8 22:39 | 显示全部楼层

好的,我明天去单位试一下,多谢各位大侠了哈        
您需要登录后才可以回帖 登录 | 注册

本版积分规则

718

主题

7868

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部