求助:CPU的内存数据被莫名其妙地被修改,什么原因造成的?

2020-02-08 09:30发布

我现在使用的CPU是PIC16F914,晶振使用18.432MHz。有用到脉宽捕捉功能,是使用中断方式,而且中断的频率还是比较高,有用的数据较短的时间脉宽大概是340us,如果加上杂波的脉宽可能更小,现在发现中断开启之后,有些数据被莫名其妙地被修改,但是如果不使用脉宽捕捉功能就好了。
这个是什么原因造成的呢?是不是CPU速度不够,中断反应不过来?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
9条回答
winfisher
1楼-- · 2020-02-08 11:51
病毒~搞的鬼。
lhj200304
2楼-- · 2020-02-08 14:31
应该是中端没有处理过来吧
feifan570
3楼-- · 2020-02-08 19:49
 精彩回答 2  元偷偷看……
feifan570
4楼-- · 2020-02-08 20:35
我通过把中断服务程序的代码注释掉,使得中断服务程序很短了,不存在中断处理不过来的问题,但是这个问题还是存在。所以现在问题应该是:中断把现场破坏了,而中断返回时没有恢复现场。
但是现在问题是:怎么做现场保护呢。我用的是最新版本HI-TECH PICC9.83。我后来在论坛上看到稳定的版本是9.71a,我也试过了,但是问题还是存在。
leofoolish
5楼-- · 2020-02-08 22:39
那应该就是你程序的问题了..
my2009
6楼-- · 2020-02-09 00:24
你程序调用子程序,总共用了几层?

一周热门 更多>