使用RTthread nano 搭建了两个工程 BOOT和APP。其中 BOOT占用40K ROM, 12K RAM;APP 占用59K ROM, 12K RAM。使用芯片为STM32F103CBT6 ROM 128K, RAM 20K;
为了方便在rtthread nano中都移植了串口设备进去。
单独运营BOOT和APP程序都能顺利跑起来,加在一起联调就跑不起来了。在设置好中断向量表偏移和程序下载地址后,boot正常运行,但跳转到APP会进入hardfault.
在编译程序时如果设置了将boot和APP程序的RAM分别设置到两块地方,APP就能正常跑起来。
为什么将BOOT和APP 程序的RAM空间设成都从0x2000000开始,占用20K会导致APP跑飞。所有的变量我在使用前都初始化了,但在实际调试的时候会发现,有些变量的值会被莫名的修改,导致程序跑飞
更多回帖