关于FATFS内存大小的问题

2019-07-20 19:33发布

#define SD_CARD         0  //SD卡,卷标为0
#define EX_FLASH 1        //外部flash,卷标为1               10*1024*1024/512

#define FLASH_SECTOR_SIZE         512                          
//对于W25Q128
//前10M字节给fatfs用,10M字节后,用于存放字库,字库占用3.09M.        14M字节以后,给客户自己用                                     
u16            FLASH_SECTOR_COUNT=2048*10;        //W25Q1218,前10M字节给FATFS占用
#define FLASH_BLOCK_SIZE           8             //每个BLOCK有8个扇区

问题1:为什么说前10M字节给FATFS占用。我在代码中没有看到把FATFS写到外部Flash的过程啊,这个FATFS好像是直接解压后添加到工程中做点小的修改就可以调用了啊。请大神解释下。
问题2:我能够把字库直接放在单片机内部的FLASH中吗,不想在外面挂着外部的FLASH。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
5条回答
shuaigew88
2019-07-21 02:47
1:W25Q128共16MB字节,其实可以将16MB全部用在FATFS(FATFS简单配置一下就可以用),直接可以将字库用文件形式读取但是效率低因为为了方便W25Q128的扇区一般是4K操作(读取最小单元4k)!按照你上面的划分方式是为了将字库读取速度优化到最快。

2:可以放到单片机内部FLASH,不过要将完整的汉字库放到内部flash的话我估计只有傻子才会这么做,1是FLASH容量有限,一个字库小之250k、大则几M甚至几十M。2:就算内部flash够用,这么大的程序每次调试时等程序下载好了心都凉了。

一周热门 更多>