打印
[DSP编程]

关于中断问题

[复制链接]
950|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ttxs_2013|  楼主 | 2013-12-11 10:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
zhangmangui| | 2013-12-11 23:49 | 只看该作者
每个中断都有自己的向量表   在CMD分配的时候也会分配相应的存储区
不同的中断的入口地址是不一样   其实只需要指定入口地址就行了

使用特权

评论回复
板凳
zhangmangui| | 2013-12-11 23:49 | 只看该作者
顺便分享

实现DSP中断需要做哪些通用工作
设置允许哪些非屏蔽中断
设置各个允许的非屏蔽中断的中断来源
设置开启总中断
设计中断向量表
将中断向量表通过cmd文件挂载到指令内存
提供中断处理函数
如果中断向量表首地址挂载的不是地址,那么需要设置中断向量表地址寄存器

对于不同的中断源,需要做各个自己的工作,比如如果是外部中断,那么需要设置管脚极性,即由高->低产生中断抑或反之。
为了照顾知识较少的读者,下面将从一个新工程出发,引导大家建立一个中断示例程序。
如果您对建立工程很熟悉,可以跳过此步。

使用特权

评论回复
地板
ttxs_2013|  楼主 | 2013-12-12 22:06 | 只看该作者
zhangmangui 发表于 2013-12-11 23:49
每个中断都有自己的向量表   在CMD分配的时候也会分配相应的存储区
不同的中断的入口地址是不一样   其实只 ...

嗯,其实我在移植的时候已经发现了这个问题:  报错提示中断向量表空间分配大小不允许   只是想确认下自己的这个思路可不可行。。

使用特权

评论回复
5
ttxs_2013|  楼主 | 2013-12-12 22:22 | 只看该作者
zhangmangui 发表于 2013-12-11 23:49
顺便分享

实现DSP中断需要做哪些通用工作

既然是中断,中断的一般流程肯定是要满足的,所以我在移植的时候,还是按照通用定时器的代码来,就像楼主说的,不同的中断源,中断类型码肯定不一样,进而中断向量地址也不一样,而在做看门狗定时器中断时,我是感觉 以下的两条代码应该要修改

/*打开定时器0,设置其为上电的的默认值,并返回其句柄*/
mhTimer0 = TIMER_open(TIMER_DEV0, TIMER_OPEN_RESET
       
/*获取中断类型码 */
eventId0 = TIMER_getEventId(mhTimer0);

但是翻了数据手册,也没有查到,如果是看门狗中断的话,这条代码对应的csl函数应该是什么,该如何改?

不知道版主有没有明白我的意思,还希望指出问题所在。

使用特权

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

本版积分规则

31

主题

125

帖子

4

粉丝