OpenEdv-开源电子网

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

关于Fatfs文件管理中FLASH_SECTOR_COUNT设置问题

[复制链接]

2

主题

10

帖子

0

精华

初级会员

Rank: 2

积分
75
金钱
75
注册时间
2016-1-27
在线时间
18 小时
发表于 2017-8-26 16:31:10 | 显示全部楼层 |阅读模式
5金钱
本帖最后由 15638904980 于 2017-8-26 16:33 编辑

最近在学习FATFS文件管理,SD卡的很好理解。但是在看了原子的MINI,精英,战舰这块的程序比较后。发现都有这么一句话://对于W25Q64
//前6M字节给fatfs用,6M字节后~6M+500K给用户用,6M+500K以后,用于存放字库,字库占用1.5M.                                             
u16            FLASH_SECTOR_COUNT=2048*6;//6M字节,默认为W25Q64

问题是三种板子的这里6M设置都不一样,4.8M,6M,12M.而这里的内存大小设置都是根据FLASH_SECTOR_COUNT设定的。

正文:
我现在在做一个控制系统,需要用到FLASH来存储字体和图标,但FLASH只有8M,按照上面所说。我只有500K的自由空间存储图标。对于自己远远不够。
另外我的系统是用到SD卡,来读取其中文件并发送,也就是会用到FATFS文件系统。其实就是3D打印机的控制屏。
而看了原子MINI版的综合测试程序中,将这里的FLASH_SECTOR_COUNT改到了4.8M。

问题:
1:这里的FLASH_SECTOR_COUNT设置到底有何作用,用来做什么的,为什么还可以随意更改其大小?
    我的理解:A:是为了演示FATFS文件系统,可以从FLASH里读取写入。而为了不和其他教程冲突:后面的字体什么的也会从存到                                          FLASH中。所以开辟这么一个区域。而在  实际应用中,FLASH_SECTOR_COUNT并没有用。
                   B:FATFS本身运行需要一定空间来存储自身信息等等,而这里的6M空间就是提供给FATFS,能够让他运转的。
2:我的系统中用到的是从FLASH里读取字体和图标,另外用到SD文件读取,这里的FLASH_SECTOR_COUNT是否可以直接设为0,对其他地方是否又会有影响?
     如果我上面B的理解正确,FLASH_SECTOR_COUNT最小可以为多少?



最佳答案

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

1,确定磁盘大小(格式化的时候需要用到)。 2,不行。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2017-8-26 16:31:11 | 显示全部楼层
1,确定磁盘大小(格式化的时候需要用到)。          2,不行。
回复

使用道具 举报

2

主题

10

帖子

0

精华

初级会员

Rank: 2

积分
75
金钱
75
注册时间
2016-1-27
在线时间
18 小时
 楼主| 发表于 2017-8-26 20:59:24 | 显示全部楼层
自顶一下,希望有人能帮助!
回复

使用道具 举报

2

主题

10

帖子

0

精华

初级会员

Rank: 2

积分
75
金钱
75
注册时间
2016-1-27
在线时间
18 小时
 楼主| 发表于 2017-8-27 07:46:34 | 显示全部楼层
没有人吗?
回复

使用道具 举报

2

主题

10

帖子

0

精华

初级会员

Rank: 2

积分
75
金钱
75
注册时间
2016-1-27
在线时间
18 小时
 楼主| 发表于 2017-9-3 14:28:11 | 显示全部楼层
正点原子 发表于 2017-8-26 16:31
1,确定磁盘大小(格式化的时候需要用到)。          2,不行。

现在我的理解:这6M的空间用户是可以用的,不过是得用FATFS文件系统对这片空间进行操作。也就是和FATFS文件系统本身没有关系。
如果我的系统中对FLASH的读写用不到FATFS文件系统,单纯用SPI读写。那么这里的大小就可以设置为0。但是并不影响FATFS对SD卡的读写操作。不知以上理解是否正确?
回复

使用道具 举报

1

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
139
金钱
139
注册时间
2019-11-28
在线时间
68 小时
发表于 2020-2-3 01:58:37 | 显示全部楼层
正点原子 发表于 2017-8-26 16:31
1,确定磁盘大小(格式化的时候需要用到)。          2,不行。

你好原子问一下,请问1:这个FLASH_SECTOR_COUNT大小的内容就是给 SPIFLASH 用文件系统操作时使用的空间是不是能这么理解,我讲这个大小减小,就文件系统可以利用的空间就小了,设置大一些就利用的空间可以大一点,但是不能设置为0是这个意思吗?
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-20 03:16

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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