打印
[STM32]

第一次用stm32的flash

[复制链接]
1559|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
越来越黑暗|  楼主 | 2017-12-29 11:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
求解一下,为何我读取了某个区域的值后,后面的程序运行得不太正常。。。还有开机读取的值也不太正常。。。求问下。  型号为stm32f103rct6
   Memory Map of the image

   Image Entry point : 0x08000131

   Load Region LR_IROM1 (Base: 0x08000000, Size: 0x000013b0, Max: 0x00040000, ABSOLUTE)

    Execution Region ER_IROM1 (Base: 0x08000000, Size: 0x0000135c, Max: 0x00040000, ABSOLUTE)


上面是.map中的数据,size不应该最大也就 135c吗。,,, 我读取的值的地址是


#define FLASH_SAVE_ADDR  0X08028000  .。。。他会读到我程序中定义的一个char数组的值。。。。。怎么会这样。。怎么才能完全避开,,,,虚心求教,

相关帖子

沙发
越来越黑暗|  楼主 | 2017-12-29 11:23 | 只看该作者
void  Read(void)           //程序参考网上的。。。启动时读取后面程序就会产生谜一样的错误,而且读到的 Admin那里会读到一个我定义的char的值,,,,
{

        //                        STMFLASH_Read(FLASH_SAVE_ADDR+6,(u16*)Admin,12);
                                L = *(uint8_t *)0X08028002;
                                STMFLASH_Read(FLASH_SAVE_ADDR+4,(u16*)Operationer,500);

                //                USART1_Puts(Admin);
                                USART1_Putc(L);
                                USART1_Puts(Operationer);
}

使用特权

评论回复
板凳
gujiamao12345| | 2017-12-29 11:27 | 只看该作者
读lash尾部有问题么?

使用特权

评论回复
地板
越来越黑暗|  楼主 | 2017-12-29 13:15 | 只看该作者
gujiamao12345 发表于 2017-12-29 11:27
读lash尾部有问题么?

flash尾部?

使用特权

评论回复
5
gujiamao12345| | 2017-12-29 13:22 | 只看该作者

是呀,从比较大的地址读起

使用特权

评论回复
6
越来越黑暗|  楼主 | 2017-12-29 13:49 | 只看该作者
gujiamao12345 发表于 2017-12-29 13:22
是呀,从比较大的地址读起

水平不够,不太明白你指什么,我把地址加上去了,变成0x8030000也一样的结果,不知道为啥,,。。

使用特权

评论回复
7
ningling_21| | 2017-12-29 14:06 | 只看该作者
判断要访问的区域,如果全是FF,则可以访问否则避开

使用特权

评论回复
8
越来越黑暗|  楼主 | 2017-12-29 14:12 | 只看该作者
ningling_21 发表于 2017-12-29 14:06
判断要访问的区域,如果全是FF,则可以访问否则避开

那个,问个问题。。。我通过读函数,读12个字节,也就是上面Admin那个,但他读到了起码二三十个字节,而且还包含了我定义的一个字符数组的部分字符。。。。。这是为何。。地址不对吗,0x08020000,不是说偶数就可以了吗

使用特权

评论回复
9
wqiang_qdu| | 2017-12-29 15:52 | 只看该作者
提问的时候能不能把问题讲清楚 不知所云。

使用特权

评论回复
10
HappyXue| | 2017-12-29 16:55 | 只看该作者
看看STMFLASH_Read()函数的实现。
根据你传入的参数类型,可能读取的数据粒度是u16,实际读取了u16 x 12 = 24个字节,分配的缓冲突溢出了。

使用特权

评论回复
11
cqwangsf| | 2017-12-29 17:49 | 只看该作者

使用特权

评论回复
12
sdggg| | 2017-12-29 21:33 | 只看该作者
很奇怪,你admin是变量还是指针?

使用特权

评论回复
13
nuaabob| | 2017-12-31 20:21 | 只看该作者
正是,flash尾部有一段区域不能修改其值,如果你用STM官方的串口下载程序而非第三方下载程序,自然会注意到这一细节,我以前也犯过相同的错误。

使用特权

评论回复
14
zqx1000| | 2018-4-10 22:22 | 只看该作者
kankan

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

74

帖子

2

粉丝