历史上的今天
今天是:2024年10月26日(星期六)
2021年10月26日 | stm32专题十九:FatFs文件系统整体架构
2021-10-26 来源:eefocus
在标准C语言中,有专门对文件进行操作的函数,如下所示。这些函数在windows或者linux系统中,都可以直接方便地使用。但是,在stm32中,这些函数不能直接使用。因为,windows和linux系统,都已经在平台上支持了这些c语言函数,类似于之前重定向printf到串口操作。

FatFs是面向小型嵌入式系统的一种通用的 FAT 文件系统。它完全是由ANSI C语言编写并且完全独立于底层的 I/O 介质。因此它可以很容易地不加修改地移植到其他的处理器当中,如8051、PIC、AVR、SH、Z80、H8、ARM 等。FatFs 支持 FAT12、FAT16、FAT32 等格式,所以我们利用前面写好的SPI Flash芯片驱动,把FatFs文件系统代码移植到工程之中,就可以利用文件系统的各种函数,对SPI Flash芯片以“文件”格式进行读写操作了。
FatFs源码结构:

FatFs在程序中的关系网络

通过配置宏定义,来实现整个FatFs文件系统的裁剪,如下所示:
史海拾趣
|
印制板设计出来后,进行试制,焊接调试,系统装机,考虑电磁兼容设计因素,机柜结构、线缆设计需要注意以下几个方面: 1、机柜选用电磁屏蔽柜,具有良好的屏蔽性能,很好地对系统进行屏蔽,降低外界电磁干扰对系统的影响。 2、总电源进线选用屏 ...… 查看全部问答> |
|
1. 怎么在编wince时指定某个dll在RAMIMAGE中的位置比如0x50200000 2. 怎么编iesample,我到PUBLIC/COMMON/IE下执行build -c,只生成了*.obj,怎么生成ie… 查看全部问答> |
|
德州仪器(TI)公司Stellaris®所提供一系列的微控制器是首款基于ARM® CortexTM-M3的控制器,它们为对成本尤其敏感的嵌入式微控制器应用方案带来了高性能的32位运算能力。这些具备领先技术的芯片使用户能够以传统的8位和16位器件的价位来 ...… 查看全部问答> |
|
RTT中应用LWIP协议 建立TCP连接(bind socket) 发送数据非const数据的问题? int lwip_send(int s, const void *data, size_t size, int flags) int lwip_sendto(int s, const void *data, size_t size, int flags,const struct sockaddr *to, socklen_t tolen) int lwip_write(int s, const void *data, size_t size) ...… 查看全部问答> |




