OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 16178|回复: 10

FLASH模拟EEPROM实验

[复制链接]

15

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
126
金钱
126
注册时间
2013-10-15
在线时间
0 小时
发表于 2014-6-16 11:03:09 | 显示全部楼层 |阅读模式
5金钱
原子哥,在你的MINIV3.0版本的FLASH模拟EEPROM实验中,关于保护地址 有点不解

#define FLASH_SAVE_ADDR  0X08070000   //设置FLASH 保存地址(必须为偶数,

//且其值要大于本代码所占用FLASH的大小+0X08000000)
就这句话中“其值要大于本代码所占用FLASH的大小+0X08000000”中的大于本代码所占用的FLASH大小,我从哪里可以知道我占用的FLASH的大小
还有地址怎么算啊?谢谢


再补充一点

//从指定地址开始写入指定长度的数据

//WriteAddr:起始地址(此地址必须为2的倍数!!)

//pBuffer:数据指针

//NumToWrite:半字(16)(就是要写入的16位数据的个数.)

#if STM32_FLASH_SIZE<256

#define STM_SECTOR_SIZE 1024 //字节

#else

#define STM_SECTOR_SIZE      2048

#endif           

u16 STMFLASH_BUF[STM_SECTOR_SIZE/2];//最多是2K字节

这里面明明是个选择,那为什么在开发之指南里却这样写到

战舰STM32开发板的FLASH512K字节,所以STM_SECTOR_SIZE的值为512,故该数组大小为2K字节。

可这里,FLASH512K字节,但是STM_SECTOR_SIZE的值应该是2048,这又是为什么?

最佳答案

查看完整内容[请看2#楼]

回复【6楼】1045426595: --------------------------------- 1,编译后MDK就会报告占用了多少flash在output窗口会有输出,这个你真要认真看了我们教程,不应该不知道。 2,当STM32_FLASH_SIZE>256的时候 你觉得这段代码定义的STM_SECTOR_SIZE是1024,还是2048啊? #if STM32_FLASH_SIZE<256 #define STM_SECTOR_SIZE 1024 //字节 #else #define STM_SECTOR_SIZE     &nb ...
书山有路,悬崖辅路
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-6-16 11:03:10 | 显示全部楼层
回复【6楼】1045426595:
---------------------------------
1,编译后MDK就会报告占用了多少flash在output窗口会有输出,这个你真要认真看了我们教程,不应该不知道。
2,当STM32_FLASH_SIZE>256的时候
你觉得这段代码定义的STM_SECTOR_SIZE是1024,还是2048啊?
#if STM32_FLASH_SIZE<256

#define STM_SECTOR_SIZE 1024 //字节

#else

#define STM_SECTOR_SIZE      2048

#endif
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2014-6-16 12:49:18 | 显示全部楼层
建议楼主详细看下数据手册中关于内部flash的章节介绍,相信你会有收获的

战舰开发板用的是STM32F103ZET6芯片,该芯片内部的flash大小是512K,一个扇区的大小是2K,总共有256个扇区(大容量芯片)

Mini开发板用的好像是STM32F103RBT6吧,这个芯片内部的flash大小是128K,一个扇区的大小是1K,总共有128个扇区(小容量芯片)
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复

使用道具 举报

15

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
126
金钱
126
注册时间
2013-10-15
在线时间
0 小时
 楼主| 发表于 2014-6-16 14:07:28 | 显示全部楼层
回复【2楼】Badu_Space:
---------------------------------
感谢你   你说的  我都知道,对于我上面的问题   您还没回答?谢谢
书山有路,悬崖辅路
回复

使用道具 举报

28

主题

1489

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1656
金钱
1656
注册时间
2013-7-24
在线时间
1 小时
发表于 2014-6-16 15:36:27 | 显示全部楼层
Build会产生简略的输出,详细的见*.map文件。
于20150522停用该账号:http://www.microstar.club
回复

使用道具 举报

28

主题

1489

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1656
金钱
1656
注册时间
2013-7-24
在线时间
1 小时
发表于 2014-6-16 15:47:07 | 显示全部楼层
回复【2楼】Badu_Space:
---------------------------------
F10xRB属于中等容量。
于20150522停用该账号:http://www.microstar.club
回复

使用道具 举报

15

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
126
金钱
126
注册时间
2013-10-15
在线时间
0 小时
 楼主| 发表于 2014-6-16 17:41:38 | 显示全部楼层
回复【4楼】styleno1:
---------------------------------
?????
?????????????????????表示无奈
书山有路,悬崖辅路
回复

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2014-6-17 08:07:41 | 显示全部楼层
回复【5楼】styleno1:
---------------------------------
不好意思看错了,呵呵
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复

使用道具 举报

15

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
126
金钱
126
注册时间
2013-10-15
在线时间
0 小时
 楼主| 发表于 2014-6-17 08:28:16 | 显示全部楼层
回复【7楼】正点原子:
---------------------------------
2048
书山有路,悬崖辅路
回复

使用道具 举报

2

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
71
金钱
71
注册时间
2015-3-18
在线时间
7 小时
发表于 2015-4-21 11:37:06 | 显示全部楼层
STM32T8U6 数据手册上页说的为64K的FLASH,可是我用内部FLASH模拟EEPROM写入到0X8018000都可以啊,读出数据也正确。
芯片工作也正常。0X8018000都到了96K的FLASH,还是写到了其他什么地方?
求解!
回复

使用道具 举报

7

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
83
金钱
83
注册时间
2015-9-16
在线时间
10 小时
发表于 2015-9-18 17:23:52 | 显示全部楼层
回复【10楼】liuyu0624:
---------------------------------
同求解
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-18 00:35

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表