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.

interrupt void USER1_ISR(void)

Other Parts Discussed in Thread: CONTROLSUITE

InitAdc(); 进入这个函数后运行ADC延迟函数 DELAY_US(ADC_usDELAY); 延迟函数为: .def _DSP28x_usDelay       .sect "ramfuncs"         .global  __DSP28x_usDelay_DSP28x_usDelay:        SUB    ACC,#1  ///////从这个位置跳转到中断函数        BF     _DSP28x_usDelay,GEQ    ;; Loop if ACC >= 0        LRETR

中断函数为: interrupt void USER1_ISR(void)     // User Defined trap 1 {   // Insert ISR Code here   // Next two lines for debug only to halt the processor here   // Remove after inserting ISR Code   asm ("      ESTOP0");   for(;;); }

新手 不解 请各位高手支招

  • Delay这个函数是标准的利用ACC延时的函数,应该没有问题,进入trap1的原因应该在别的地方,建议仔细检查下用户代码,变量给值等。

  • 你好,很感谢你,我更换了CMD文件,用28035_RAM_lnk.cmd调试就不会出问题,我原来用的F28035.cmd,这说明啥?是不是我的cmd文件中FLASH配置有问题啊?

  • xiangpu,

    F28035.cmd是否是controlSUITE中的例子?C:\ti\controlSUITE\device_support\f2803x\v127\DSP2803x_common\cmd

    如果是,应该CMD没有问题。

    如果使用flash的CMD,程序会烧写到flash中执行,那么应该在程序中要初始化flash,参考C:\ti\controlSUITE\device_support\f2803x\v127\DSP2803x_examples_ccsv5\flash_f28035 例程。

    应该要程序编译后的相关警告信息,如果有,贴出来帮助判断。

    Eric

  • 多谢,我再看看,以后有问题还要请教你