大家好,
我正在使用CCSV6版本OMAP.TI 0.0.0048万 编译器版本C6000 - 6.2 8.2 版本1 平台OMAPL137
如果使用编译器版本 C6000 - TI 8.1 v3.0,我会遇到一个特殊的内存损坏问题,它会在运行一 段时间后冻结系统。
UART停止传输。
如果我倾向于在运行期间使用较小的堆内存分配,或者使用UART TX/Rx的RS232连接而不是USB,则问题就会消失。
但是,如果我想使用更多堆分配,并且还使用USB UART,我必须使用编译器版本8.2。1,我了解到,在分配内存时,在内存映射上使用较小孔的可能性很大。
当我的同事使用编译器版本8.1 6.2 8.2 时,问题以不同的形式出现。0 CCS v SPI.0,使用6.1 写入程序i lib来刷新代码,以实时测试CCSPI.0,TI-SPI生成的输出文件。1.
代码在一段时间后停止工作,并且闪存损坏。
在代码/文本内存部分增加了相当多的容量后,问题开始出现,尽管在内存映射上,它 仍在SDRAM的限制范围内
我正在尽力解决这个问题,我相信有一些潜在的mem问题,在某些情况下,它只是假装消失,如果使用的版本是8.1 ,它会更突出。
如有任何帮助,我们将不胜感激。
当遇到问题时,我使用调试器在CCS GUI上使用RTOS分析器检查堆栈溢出或堆溢出,并且一切都在提供的限制范围内
运行时没有堆损坏。
我还想知道EVMOMAP或仅仅OMAP选项在CCS项目->属性->常规->变体中的变体上的区别
为什么在CCS版本6.2 中不再使用EVMOMAP , 我问这个问题是因为,如果我导入在6.2 中的6.1 0中创建的代码,它会抱怨EVMOMAP不存在。
提前感谢您的所有帮助。