TI中文支持网
TI专业的中文技术问题搜集分享网站

C6455在线跑程序没问题,boot启动后初始化TMR中断完,程序就会复位

          在调试C6455时,发现基带板在线跑程序没问题(仿真软件为CCS3.3),一旦程序烧写进flash后,会发生反复复位,处于反复复位状态,故障判断如下:

1. dsp的看门狗始终处于死狗状态,不会是软件不喂狗导致的看门狗复位,硬件测试也排除了此原因;

2. c6455的初始化配置、TMR配置和硬件应该都没有问题,因为用仿真器在线跑程序没有问题,TMR设置为非级联双定时器模式,只使用了TMR0,TMR1禁用,TMR的初始化配置由另一个平台移植而来,除了修改了中断周期其他无区别,另一平台已生产多台产品,无问题;

3. 故障判定方法是:在DSP程序的每个函数后设置GPIO测试管脚翻转信号(或设置死循环,现象一样),周期、翻转次数和等待时间都不一样,最后判定是,在中断初始化完成后理应在GPIO测试脚上有4次翻转,但只测到2次,DSP就发生了复位现象;将中断初始化程序屏蔽后,复位现象消失,后续只运行了硬件配置和变量初始化,主程序因为没有中断不会运行; 

4. .OUT文件到.BIN文件的转换不会有问题,已经过其他平台验证,唯一区别是在DSP的L2 RAM中开了一小段缓冲区做数据缓存,编译map文件显示L2空间充裕,不会发生内存冲突现象,而且没有在L2内设置cache空间,编译选项中的heap/stack的设置为0x4000,也不会有问题。

        程序运行顺序:I2c  boot启动—>dsp初始化—->配置时钟芯片—>配置FPGA—>DSP外设接口总线自检—->配置DAC等芯片—>初始化TMR中断(发生复位现象)—>变量及数据缓冲区初始化清零—>初始化串口等接口模块—–>打开中断—–>进入信号处理程序。

       请专家和大拿给把脉支招,看看会是哪方面的问题,或指明排查方向,焦急等待。

       您的回复和留言,是对我最大的支持,万分感激,谢谢,谢谢!!!

Shine:

反复复位时RESET管脚上有复位信号吗?用其他中断也会有一样的问题吗?跟一下boot后的代码,看进入中断后程序怎么走的?

赞(0)
未经允许不得转载:TI中文支持网 » C6455在线跑程序没问题,boot启动后初始化TMR中断完,程序就会复位
分享到: 更多 (0)