This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

官方板子TMDSSK3358跑裸机中断异常

Other Parts Discussed in Thread: AM3359, AM3358

这块TMDSSK3358板子是在咸鱼上买的二手的,上面CPU实际是AM3359,我手头另外还有个在官网买的ICEAM3359,在CCS9中建了一个以ICEAM3359为平台的裸机工程,加载的是ICEAM3359的gel文件,该工程跑的是个裸机环境下的定时器2中断,目前遇到的具体问题是:

           1  该定时器中断在ICEAM3359中只能进入大概两三次中断服务函数,之后就再也不进中断了

           2 不改变gel文件,工程不做任何更改,直接使用TMDSSK3358板子,结果每次进定时器中断都是跑到中断函数结尾处的花括号那个位置,根本不是从中断函

              数的头部开始执行的,而且不像上面问题1中那样进两三次就不在进入中断函数,是一直进入中断函数,只是每次都是定时中断到了PC指针就直接跳到末尾

           的 花括号那里了。开始怀疑是不是TMDSSK3358应该加载这块板子自己的gel文件,因为ICEAM3359就有自己独立的gel文件,但在CCS所在的文件夹里并未

            找  到专门针对TMDSSK3358板子的gel文件

        针对问题1,我在ICEAM3359中关闭定时器中断,然后开启eCAP的辅助PWM的比较中断,结果该中断运行良好,该中断在TMDSSK3358中仍然遇到和问

       题2一样的情况。

       补充一下,我在工程中采用的是超级监控模式,该模式是最高权限吧,这种模式有可能导致上面两种问题的出现吗

      以下是我的C工程中为获取超级监控模式而加入的汇编语句

     

; \file super_startup.asm
;
; \brief Firmware startup for supervisor mode
;
; @author mansoor.ahamed@ti.com


 .sect ".text"
 .state32
 .global mystartup
 .global _c_int00

mystartup:
 ldr pc, RTS_JUMP ;Jump to rtslib _c_int00 but skip 4 instructions
      ;which puts cpu in user mode
RTS_JUMP  .long (_c_int00 + 0x10)
 .end