YTM32B1LE05H0MFMR KILE工程在RAM溢出后没有报错,调试运行卡在INT_SYS_ConfigInit()里面
-
一、使用YT Config Tool生成KILE工程后
移植进程序,编译时发现RAM的大小已超出16KB
DS手册里面描述
二、因为KILE没报错,抱着怀疑的态度调试程序
1、点击调试后,没有停止main函数,已经说明有问题了,程序跑飞了
2、点击停止后,程序停止在了__NVIC_SetPriority()
3、之后点击单步调试就会到INT_SYS_ConfigInit()
4、之后单步调试又会跑飞,停止后又是在__NVIC_SetPriority()或者INT_SYS_ConfigInit()里面,重复以上操作又会循环
三、KILE工程配置都保持默认
四、减小ZI-data后程序可正常调试
1、减小后ZI-data大小
2、点击调试后正常停在了main函数
五、怀疑和猜想
1、如果继续增加RAM空间,是否也不会报错?
2、继续增加后,KILE提示了错误,这里的0x3800应该就是真正的RAM空间大小,可以通过YT Config Tool 看到
六、最后
这个问题也是困扰了几天,因为程序能正常编译通过,但调试或者下载到板子上就是跑不起来,如果RAM其实超了,KILE编译报错,问题也可以马上发现,但就是没报错,怀疑是板子硬件问题,排查了各种情况都无果,最后才发送是这儿的问题。
这个问题因为如何解决或规避?
发帖前请查看
帮助没办法联网的电脑使用YCT
帮助改进和优化YT CONFIG TOOL,有机会抽取YTM32B1ME0 EVB哦...