打印

TI C2833x介绍---复位与中断

[复制链接]
1160|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
gaochy1126|  楼主 | 2012-7-21 12:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
因为PIEIERx寄存器决定了程序会跳转到哪个向量,所以在清除PIEIERx里面的位时必须仔细确认操作按照前面两次提到的步骤来,否则在中断求取已经送入CPU之后再修改PIEIERx寄存器时,若没有其余的中断请求被使能,将导致进入TRAP中断,否则将进入那个被使能并等待响应的中断。所以有时候在程序中对寄存器的配置不正确时,我们可能会发现,本来应该进ISR1时却进入了ISR2这样的情况。 另外补充一点前面遗漏的东西(因为不怎么好归类,所以放在最后):
1. PIE中断向量表是一块256 x 16的SARAM模块,如果我们不使用PIE的话,可以把这块RAM做为数据存储空间使用。当然,一般情况下我们的资源不会紧张到如此地步;其次,为了程序兼容性的考虑,不用的话就把它作为RAM的一个保留地址也好,除非变量多的实在没有内部RAM空间存放了。
2. 在上电复位时,PIE中断向量表是没有任何内容的,所以在程序初始化时需要对它们进行修改。那么多向量的赋值貌似很麻烦,不过TI的库里面已经帮我们做好了,在DSP2833x_PieVect.c里面,要记得把它加到自己的工程里。
3. 在PIE使能之后,会有TRAP #1取INT1.1向量,TRAP #2取INT1.2向量……这样的一个操作(所以在开头提到的情况发生时会跳转到对应的TRAP中断)。
4. 目前PIE向量表中只有96个定义的中断,其余的被保留给后续器件升级用。只要在PIEIFR中正确使能,这些保留的中断可以做为一个“软件”中断。

相关帖子

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

本版积分规则

1025

主题

11271

帖子

25

粉丝