打印

9S12C IRQ下降沿中断的问题

[复制链接]
2854|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
myrokey|  楼主 | 2009-2-26 08:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
9S12C96 IRQ下降沿中断仿真运行与实际运行的差别:
在P&E USB MULTILINK仿真的情况下中断正常.不用仿真器实际运行,只要下降沿到来,就一直中断. 怎么感觉有点像低电平中断.(IRQCTR_IRQE = 1;设为下将沿中断).
郁闷....仿真正常实际运行竟然不正常.
请给位指点.

相关帖子

沙发
张明峰| | 2009-2-26 15:04 | 只看该作者

显然

清除中断标志时做得不到位.

使用特权

评论回复
板凳
myrokey|  楼主 | 2009-2-27 13:41 | 只看该作者

据我了解,对于IRQ中断来说,本身并没有中断标志位.

另一方面,现在的问题的仿真运行与实际运行怎么会呈现不同的效果.

使用特权

评论回复
地板
johnwjl| | 2009-2-27 17:08 | 只看该作者

有中断标志位

而且一定要清,否则一直中断。

使用特权

评论回复
5
myrokey|  楼主 | 2009-3-2 08:57 | 只看该作者

johnwjl,能告诉我是哪个寄存器吗

DATASHEET根本找不到有IRQ中断标志位....

使用特权

评论回复
6
johnwjl| | 2009-3-2 10:17 | 只看该作者

你找一下IRQACK位

中断后,IRQACK置1即可。 

使用特权

评论回复
7
myrokey|  楼主 | 2009-3-2 11:31 | 只看该作者

9S12C DATASHEET没有IRQACK位的.

codewarrior生成的工程中特殊寄存器的定义IO_map,也没有IRQACK位的定义.
你指的是哪一系列的单片机?

使用特权

评论回复
8
johnwjl| | 2009-3-3 22:05 | 只看该作者

JM

JM系列的。

使用特权

评论回复
9
张明峰| | 2009-3-6 18:10 | 只看该作者

抽空看了一下9S12的数据手册

确实如楼主所言,9S12的IRQ是没有对应的中断标志的。该中断只能为边沿触发,一旦相应了中断服务程序,中断请求标志将被自动清除。故不存在我先前说的“清除中断标志时做得不到位”之说。特向楼主致歉。
这样看来应该是其他原因所造成的。按此IRQ的特性,唯一可能就是输入信号边沿有抖动,程序全速运行时连续响应多次中断。

使用特权

评论回复
10
johnwjl| | 2009-3-6 20:39 | 只看该作者

我也致歉。

因为没看过9S12的手册,一直在用JM系列。
LZ可以在IRQ加一电容拉地看看。

使用特权

评论回复
11
myrokey|  楼主 | 2009-3-26 09:14 | 只看该作者

谢谢各位的回答.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

17

帖子

0

粉丝