最近在用TMS320F2812 时,发现原本在RAM中能够正常工作的程序,烧写到FLASH中就不可以正常运行了!
以前也遇见过类似的问题,主要是TMS320F2812 与外部器件(ADE7758)的读写,当时也是RAM可以正确读写,FLASH中不能正确读写,当时是加延时解决的!
但这次采用的是MCBSP口和AD73360,在FLASH中出现的问题主要是写AD73360控制字写不进去,我估计是不是那个MCBSP是不是在需要设置其他什么东西?还有就是有时AD73360突然可以初始化后,在采样中断又出现问题!总之原先可以在RAM中正常运行的程序,到了FLASH中就变得乱七八糟!
请问,各位高手,怎么解决类似的问题?
建议LZ考虑下面几个方面的问题:
1. 初始化配置字的设置,特别是FLASH配置方面相关的;
2. 存储器配置文件,特别是.const、.cinit段需要分配FLASH存储空间;
3. 如果使用hex6x(Hex-Conversion Utility)时,看参数是否正确;
4. Bootloader是否正常工作。