酱哒哒 发表于 2017-3-4 16:35:07

STM32在SRAM中运行程序,复位后,程序不能运行

1.利用IAR调试的时候,正常工作,并且IAR复位,一切正常(难道IAR的那个复位是个假复位?)2.使用外部电路复位,无法启动程序。
本来我怀疑是SRAM中数据丢失,但是利用ST-LINK utility 查看地址区域后,数据并未丢失,简单对照了下,和IAR中完全一样。也就是说,数据并没有丢失,但是为何程序启动不了?

3.BOOT管脚已配置为SRAM启动,中断向量表已映射到RAM中。

不知道,有没有试过的指导下?

可能出问题的点,还有哪些?

zhao.zhao 发表于 2017-3-4 20:36:59

不能的,掉电后指令都丢失了

酱哒哒 发表于 2017-3-5 15:26:05

zhao.zhao 发表于 2017-3-4 20:36
不能的,掉电后指令都丢失了

不是掉电,是复位。
复位后,如果指令丢失,为何stlink-utility中查看RAM区值却又是正确的?

zhao.zhao 发表于 2017-3-8 07:50:17

复位的话,对系统的理解,全局变量的地址处的数据应该被初始化,而系统分配的局部变量地址处的数据是不被初始化的,所以你应该看到的是局部变量的区域,你可以开几个全局变量,运行后赋值,然后再复位,看看值有没有改变
页: [1]
查看完整版本: STM32在SRAM中运行程序,复位后,程序不能运行