繁体中文
高级搜索
 
首页 | 电子技术应用 | 行业最新动态 | 行业最新产品 | 软件资料下载 | 电路图纸欣赏 | 博客文章精选 | 电子精品论坛 | 电子技术贴吧

当前位置:首页 >> 博客文章精选 >> 嵌入式系统-博客 >> "中断就复位的概率高达50%"
"中断就复位的概率高达50%"
作者:   来源: 发表时间:2007-02-07  字号:  

http://bbs.21ic.com/club/bbs/ShowAnnounce.asp?v=&ID=2432748

hotpower 发表于 2007-1-30 23:42 ZLG-ARM ←返回版面 按此察看该网友的资料 按此把文章加入收藏夹 按此编辑本帖

47楼: "中断就复位的概率高达50%"--与菜农判断一致,病症找到了,好解决

前面已说过http://www.ednchina.com/blog/hotpower/15390/message.aspx

丢中断有点伪中断的味道,这要从LPCARM的中断机制推起:

当某个中断源被引发,IRQStatus或FIQStatus的某位将置'1',
VectAddrs[x]将被装入VectAddr,从而跳入
LDR PC, [PC, #-0x0FF0];Vector from VicVectAddr
在此PC才将VectAddr装入后跳入VectAddr指出的地址,即散转了中断.
假设VectAddrs[x]没被被装入到VectAddr中,且前次中断退出时执行
了VIC->VectAddr = 0x00;/* 通知VIC中断处理结束*/
那么本次的中断将会执行"软件复位",故中断肯定丢失.


所以我在实战中要避开VectAddrs[0],且以VectAddrs[0]为默认中断地址.
这样就可拦截非法中断了.当然其他不用的VectAddrs[x]我也指向默认中断地址.

假定该论证成立(我用软件仿真确实存在此隐患),那么我的第2个疑问"中断号错位"就自然成立了,因为VectAddrs[0]一般为正常的中断向量地址,如果经常性的
VectAddrs[0]被执行,那么病症肯定在此.

"中断就复位的概率高达50%"--与菜农判断一致,病症找到了,好解决
假设VectAddrs[x]没被被装入到VectAddr中,且前次中断退出时执行
了VIC->VectAddr = 0x00;
那么本次的中断将会跳入VIC->VectAddr即PC=0,也就是"软件复位".

所以,汽车电子应该好好学学菜农的非典架构.

我的产品都敢全部采用,你做个实验不难吧~~~别学我偷懒~~~


!注意:如果您发现此文章出现影响您的阅读的状况,请从浏览器地址栏里复制本文的链接到留言本报告给站长解决!
  • 上一篇: 如何拦截向量中断
  • 下一篇: IBM采用自成形材料绝缘 芯片提速三分之一

  • >> 联系我们请给我们留言·留言本
    本站所有提供的信息软件资料均来自网络,版权及著作权归原作者所有,如果无意中侵犯了您的相关权利或触及法律法规,请给我们留言, 我们将在24小时内删除。
      浙ICP备05071687号  电子技术精品网