[STM32F1] STM32F103C8T6 读写内部flash,导致重新上电不能启动问题

[复制链接]
1513|36
 楼主| ousj 发表于 2021-1-5 23:35 | 显示全部楼层

0x08009766   0x00000490   Data   RO         1008    .constdata          bmp_icon.o
    0x08009bf6   0x00000200   Data   RO         1072    .constdata          mbcrc.o
    0x08009df6   0x00000028   Data   RO         1365    .constdata          c_w.l(_printf_hex_int.o)
    0x08009e1e   0x00000011   Data   RO         1395    .constdata          c_w.l(__printf_flags_wp.o)
    0x08009e2f   0x00000001   PAD
    0x08009e30   0x00000094   Data   RO         1617    .constdata          c_w.l(bigflt0.o)
    0x08009ec4   0x00000063   Data   RO         1087    .conststring        mbrtu.o
    0x08009f27   0x00000001   PAD
    0x08009f28   0x00000044   Data   RO         1167    .conststring        mbascii.o
    0x08009f6c   0x00000020   Data   RO         1749    Region$$Table       anon$$obj.o
    0x08009f8c   0x0000001c   Data   RO         1645    locale$$data        c_w.l(lc_numeric_c.o)
    0x08009fa8   0x00004058   PAD
    0x0800e000   0x0000000c   Data   RO          639    .ARM.__AT_0x0800E000  Reserved_Data.o//此处我定义了三个 const  unsigned int  常量在这个位置,前后都没有东西的。
hanwe 发表于 2021-1-5 23:35 | 显示全部楼层

还有什么现象?能再详细描述下吗?
 楼主| ousj 发表于 2021-1-5 23:39 | 显示全部楼层
其实,我是指定地址,在0X0800E000上定义了一个const常量,然后我的flash 也是操作的这个地址
 楼主| ousj 发表于 2021-1-5 23:43 | 显示全部楼层
可以看到,从 0X08009FA8 开始,都是PAD,也就是填充空白的。倒数第二段是没有数据的,
huanghuac 发表于 2021-1-5 23:47 | 显示全部楼层
PAD 可是有数据的,因为对齐的原因,程序的大小和实际占用的ROM大小不一致,才用PAD来表示。
zhuhuis 发表于 2021-1-5 23:50 | 显示全部楼层
看你的MAP文件最后占用ROM大小就知道了。
songqian17 发表于 2021-1-5 23:53 | 显示全部楼层
也就是我要读写最后定义的那个const常量
chuxh 发表于 2021-1-5 23:57 | 显示全部楼层
需要把1page数据都读出来,然后擦除掉,然后改掉需要修改的部分,再把数据都写进去是吗
llljh 发表于 2021-1-6 20:19 | 显示全部楼层
是的,这是flash的自身的特性,只能按照页来擦除
dingy 发表于 2021-1-6 20:23 | 显示全部楼层
如果你只是改这页上的部分数据,那么必须全读出来
xxrs 发表于 2021-1-6 20:28 | 显示全部楼层
修改需要修改的部分,然后再写回去。
 楼主| ousj 发表于 2021-1-6 20:31 | 显示全部楼层

哦,那我就知道怎么回事了,多谢大家
磨砂 发表于 2021-2-2 21:05 | 显示全部楼层
楼主的问题好奇怪啊
晓伍 发表于 2021-2-2 21:06 | 显示全部楼层
难道破坏了原有代码?
八层楼 发表于 2021-2-2 21:10 | 显示全部楼层
在这种情况下 可以恢复出厂设置吗
观海 发表于 2021-2-2 21:11 | 显示全部楼层
这些代码能看出来什么啊
guanjiaer 发表于 2021-2-2 21:12 | 显示全部楼层
重新写入新的程序试试看
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部