发 帖  
原厂入驻New
[问答] 请问为什么我在C6455板子上跑EDMA完成中断会进入两次中断程序?
5 天前  11 C6455
分享
在执行中断的函数里加了打印语句printf("I'm datain_isr");,进行软件仿真时只打印一次,用板子跑的时候却打印了两次,后在中断函数打断点发现中断函数执行了两次。请问为什么会出现这样的问题?
0
5 天前   评论 分享淘帖
6 个讨论
用了BIOS吗?把中断函数贴出来。
                                                                         http://processors.wiki.ti.com/index.php/Main_Page
Think Over Before Asking.
http://www.catb.org/~esr/faqs/smart-questions.html#goal
lifei639156 发表于 2020-5-22 09:16
用了BIOS吗?把中断函数贴出来。
                                                                         http://processors.wiki.ti.com/index.php/Main_Page
Think Over Before Asking.

刚接触这个还不太懂,板子上有两片6455芯片,我只往其中一个下了程序去跑,应该不会是两个芯片有影响吧。
lin364884292 发表于 2020-5-22 09:30
刚接触这个还不太懂,板子上有两片6455芯片,我只往其中一个下了程序去跑,应该不会是两个芯片有影响吧。

中断函数的定义要加关键字interrupt.
                                                                         http://processors.wiki.ti.com/index.php/Main_Page
Think Over Before Asking.
http://www.catb.org/~esr/faqs/smart-questions.html#goal
lifei639156 发表于 2020-5-22 09:49
中断函数的定义要加关键字interrupt.
                                                                         http://processors.wiki.ti.com/index.php/Main_Page
Think Over Before Asking.

谢谢您的解答,最后解决了,查了edma的配置寄存器,因为芯片里有固化的程序,我又在线烧了另外一个程序,所以中断了两次,如果新的程序初始化固化程序未初始化的通道,则只中断一次。
另外,我还想问一下,有没有方法,使我在线加载新程序的时候,将固化程序配置的寄存器全部复位。
lin364884292 发表于 2020-5-22 10:07
谢谢您的解答,最后解决了,查了edma的配置寄存器,因为芯片里有固化的程序,我又在线烧了另外一个程序,所以中断了两次,如果新的程序初始化固化程序未初始化的通道,则只中断一次。
另外,我还想问一下,有没有方法,使我在线加载新程序的时候,将固化程序配置的寄存器全部复位。 ...

可以先通过CCS 复位一下系统
liyabn1 发表于 2020-5-22 10:18
可以先通过CCS 复位一下系统

感谢您的回答,找到了ccs的system reset.

只有小组成员才能发言,加入小组>>

1198个成员聚集在这个小组

加入小组

创建小组步骤

关闭

站长推荐 上一条 /7 下一条

快速回复 返回顶部 返回列表