Board logo

标题: 再次请教ECT捕捉中断的问题 [打印本页]

作者: zhaoxyz486    时间: 2007-6-4 10:39     标题: 再次请教ECT捕捉中断的问题

版主你好,上次我给你看了我的工程,你修改后发给我了 但是我打不开,但是按照你的提示我修改了些内容,主要是保存页面积存器,现在也是可以捕捉寄存器有值,但是我从PA4-PA7口观察中断发生的情况(每两次捕捉发生一次中断,每个捕捉通道从一个A口观察,捕捉源信号为信号发生器)但是只有一个捕捉中断发生正确(IC0),另外三个都不正确,我不知道原因?版主有时间帮我看一下吗?我把工程发到你油箱可以吗?
还有个问题一并请教? 加操作系统后 自己定义的中断函数要加INTERRUPT 关键字吗?
我调试的时候发现加不加没有影响呀
作者: strongchen    时间: 2007-6-4 10:41

发给我吧。关于操作系统怎么处理中断我也不是非常清楚,只能试试看了。
作者: zhaoxyz486    时间: 2007-6-4 11:11

我已经发到你油箱里面了
作者: strongchen    时间: 2007-6-4 14:12

今天发的吗?没有收到。
作者: zhaoxyz486    时间: 2007-6-4 19:01

a  那我再发一次
作者: strongchen    时间: 2007-6-5 10:47

还是没有收到。
作者: zhaoxyz486    时间: 2007-6-5 11:34

不好意思 这次应该发过去了 呵呵 好事多磨难
作者: strongchen    时间: 2007-6-5 15:39

看到你的project了。请告诉我你具体修改了哪个地方。另外,我认为interrupt关键字应该是必需的。这个关键字告诉编译器函数的结束指令为RTI,而不是RTS。另外,你说另外三个输入捕捉不正确,是怎么不正确?能否及时产生中断?还是读数不正常?怎么认为不正常?
作者: strongchen    时间: 2007-6-5 15:44

我发现你在中断函数中加了RTI指令。那么用不用interrupt关键字确实是没有区别了。
作者: zhaoxyz486    时间: 2007-6-5 16:21

en  我在中断处理里面加了保存页面寄存器和堆栈指针的一些操作,第一个捕捉通道中断能正常发生,也就是我示波器看到PA5口电平改变的频率正确(若四个捕捉通道的输入方波信号的频率为1000hz,在PA5观察频率为250hz,两次捕捉上升沿一次中断)而其他口,PA6,PA7,PA8有些频率不正确 不稳定,有些直接是高点平??麻烦楼主了
作者: strongchen    时间: 2007-6-5 16:41

你是一个通道一个通道试的吗?还是几个通道一起试的?
作者: zhaoxyz486    时间: 2007-6-5 17:25

我是四个通道一起做的 四个捕捉口从都是从捕捉器获得的同一信号.
还有个问题,版主 我现在用查询模式能够实现了 没有什么问题,但是要花费时间,
也就是要花费一个脉冲周期的时间,1khz的时候 等待查询时间约为1.5ms
如果信号输入频率比较小的话 这个时间会相对很长,我也是考虑到这个问题才决定采用中断方式的.但是中断方式老是调不正确,谢谢你 请多指教
作者: strongchen    时间: 2007-6-5 17:33

建议你每个通道单独做试试看,可能有不同的效果。
作者: zhaoxyz486    时间: 2007-6-5 22:34

正如版主所说,当我单个测试的时候,一切正确.这是什么原因呢?
也就是说如果我四路信号如果输入的不同的信号源会捕捉正确吗? 谢谢版主
作者: strongchen    时间: 2007-6-6 09:57

有可能是信号匹配的问题,但更可能是中断冲突。你可以采用不同的信号源试试看。
作者: zhaoxyz486    时间: 2007-6-6 11:36

不同的信号源测试现在没法测试 只有通过输出四路PWM测试 吧
还有 四个口的中断向量是不同的,也就是应该具有不同的优先级吧,怎么可能有中断冲突呢?
具体要怎么解决呢?
作者: strongchen    时间: 2007-6-6 14:12

正是因为有不同的优先级,所以发生冲突。由于四路输入采用同一个信号,所以中断都是同时发生的。但是通道0的中断级别最高,所以它的读数最正确。别的级别低的中断读数可能就不正确了。解决的方法是尽量缩短中断处理程序的执行时间;保持原数据等。
作者: zhaoxyz486    时间: 2007-6-6 16:32

谢谢版主指点,我现在只是测试,以后真正用不可能四路信号完全相同,所以程序这样设计应该可以吧?
作者: strongchen    时间: 2007-6-6 17:36

应该是这样。但是中断处理的时间还是越短越好。
作者: guocai_yao    时间: 2007-6-10 08:16

这个论坛真的很不错,学到了不少东西,顶!




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0