[STM8] 外部中断进一会然后就不进了?什么情况???

[复制链接]
 楼主| mage心寒 发表于 2014-5-20 14:36 | 显示全部楼层 |阅读模式
RT,最近在用STM8S105C6,红外用外部中断,每次复位红外用大概一百次左右就不进中断了,不知道什么情况,有遇到过的吗,PS STM8S没有外部中断清标志位。。
 楼主| mage心寒 发表于 2014-5-20 14:48 | 显示全部楼层
测试发现过一会又好了,然后用一会又不行了。。
mmuuss586 发表于 2014-5-20 17:11 | 显示全部楼层

没有,再焊一套测试下看看;
或者接个按键做下试验;
snailled 发表于 2014-5-20 18:40 | 显示全部楼层
刚学习到 按键扫描 ,还帮不到你。
icecut 发表于 2014-5-20 20:22 | 显示全部楼层
用中断捕捉红外的上升沿?是不是太快啊
 楼主| mage心寒 发表于 2014-5-21 09:17 | 显示全部楼层
icecut 发表于 2014-5-20 20:22
用中断捕捉红外的上升沿?是不是太快啊

这个能捕到,如果就直接捕获,我觉得用IO口都可以。。
icecut 发表于 2014-5-21 09:22 | 显示全部楼层
你考虑过cpu利用率吗?还是你这芯片只做这一件事/?
我怎么觉得不太靠谱呢
 楼主| mage心寒 发表于 2014-5-21 13:10 | 显示全部楼层
icecut 发表于 2014-5-21 09:22
你考虑过cpu利用率吗?还是你这芯片只做这一件事/?
我怎么觉得不太靠谱呢

我的意思是只坐一件事情,io直接读取是可以的,现在当然不是干一件事情所以用中断。。。所以才会有不会进中断的情况发生。。。好像有用过8S的有过这个现象。。
icecut 发表于 2014-5-21 13:26 | 显示全部楼层
mage心寒 发表于 2014-5-21 13:10
我的意思是只坐一件事情,io直接读取是可以的,现在当然不是干一件事情所以用中断。。。所以才会有不会进 ...

中断频率多高?你确定不是小马拉大车?
压死骆驼的都是最后一根稻草.
 楼主| mage心寒 发表于 2014-5-21 15:41 | 显示全部楼层
icecut 发表于 2014-5-21 13:26
中断频率多高?你确定不是小马拉大车?
压死骆驼的都是最后一根稻草.

中断0.1ms,合理范围内,红外用的不是定时器捕获中断,用的是外部中断,这绝对是大牛拉小牛,肯定没问题,我可以确定这点,问题的重点不是不工作,是工作一会NG了。。NG中while(1)里面还是正常运行只是红外不触发外部中断,这点我做过实验。
icecut 发表于 2014-5-21 16:03 | 显示全部楼层
本帖最后由 icecut 于 2014-5-21 16:06 编辑
mage心寒 发表于 2014-5-21 15:41
中断0.1ms,合理范围内,红外用的不是定时器捕获中断,用的是外部中断,这绝对是大牛拉小牛,肯定没问题 ...

ng的时候,各个寄存器值都正常?
能不能读取到引脚状态呢?
你引脚电平没有过冲之类的?
 楼主| mage心寒 发表于 2014-5-21 16:32 | 显示全部楼层
icecut 发表于 2014-5-21 16:03
ng的时候,各个寄存器值都正常?
能不能读取到引脚状态呢?
你引脚电平没有过冲之类的? ...

各个寄存器不是很清楚,但是其它工作正常,示波器显示IO口的引脚电平也是正常的,可以接收到IR的电平信号。。
icecut 发表于 2014-5-21 22:27 | 显示全部楼层
mage心寒 发表于 2014-5-21 16:32
各个寄存器不是很清楚,但是其它工作正常,示波器显示IO口的引脚电平也是正常的,可以接收到IR的电平信号 ...

一般检查中断的相关寄存器,没有中断屏蔽中断clear之类的东西?
 楼主| mage心寒 发表于 2014-5-22 08:28 | 显示全部楼层
icecut 发表于 2014-5-21 22:27
一般检查中断的相关寄存器,没有中断屏蔽中断clear之类的东西?

stm8s没有看到清中断标志。。
heelary 发表于 2014-5-22 12:56 | 显示全部楼层
中断嵌套出错,某个中断未退出或退出未开中断。看门狗用了?
 楼主| mage心寒 发表于 2014-5-22 15:20 | 显示全部楼层
heelary 发表于 2014-5-22 12:56
中断嵌套出错,某个中断未退出或退出未开中断。看门狗用了?

没用狗,中断未退出?可以排除,因为主程序还在运行,退出未开中断,这个不是开一次就ok的吗?需要退出再开?
heelary 发表于 2014-5-23 09:27 | 显示全部楼层
执行某些中断时会关中断的。你的现象有点中断被关掉的样子。
 楼主| mage心寒 发表于 2014-5-23 09:36 | 显示全部楼层
heelary 发表于 2014-5-23 09:27
执行某些中断时会关中断的。你的现象有点中断被关掉的样子。

谢谢,感觉是外部中断和timer4的中断不知道哪里弄乱了,实验外部中断是进了,定时器计数不符合nec起始信号的时间,也不知道是不是外部中断没有捕获好的原因,我现在一般按键连续按100次左右里面会有NG的现象5次,然后会好,但是有些时候NG的时间会按键十次都没有反应。。我无语了。。
heelary 发表于 2014-5-23 10:55 | 显示全部楼层
中断嵌套可能有问题,关掉其它中断,一个一个试试吧。
 楼主| mage心寒 发表于 2014-5-23 13:12 | 显示全部楼层
heelary 发表于 2014-5-23 10:55
中断嵌套可能有问题,关掉其它中断,一个一个试试吧。

解决了,谢谢。。。逻辑多走了一步,范了低级错误哎。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

19

主题

1019

帖子

13

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