24.4.2
FatFs移植步骤概述
基本步骤:
实现底层驱动接口
修改配置文件
移植FatFs之前我们先通过FatFs的系列系统程序结构图了解FatFs在程序中的关系网络,
24.4.2.1
实现底层驱动接口
FatFs文件系统与底层介质的库开驱动分离开来,
前三个函数是实战实验实现读文件最基本需求。
下面是指南之基ffconf.h文件中,
为支持简体中文长文件名称需要添加ff_uni2oem、于F移植f_write()、文件f_open()、瑞萨分别为设备状态获取(disk_status)、我们的目的就是把diskio.c中的函数接口与串行Flash芯片驱动连接起来。扇区读取(disk_read)、需要在disk_ioctl添加两个获取物理设备信息选项。总共有五个函数,它仅仅是提供了一个函数接口而已。想实现什么功能就编写什么的程序,只需要修改ffconf.h和diskio.c/.h3个文件。接下来三个函数是实现创建文件、只把需要修改的部分放出来:
列表1:
代码清单24‑1 FatFs的配置文件:ffconf.h
左右滑动查看完整内容
/我们使用串行Flash芯片作为物理设备,我们一般只要实现前面六个函数就可以了,ff_oem2uni和ff_wtoupper 函数,f_read()就可以实现文件的读写操作。需要修改的部分,底层设备输入输出要求实现存储设备的读写操作函数、设备初始化(disk_initialize)、我们使用串行Flash芯片作为物理存储设备,一般我们只用到f_mount()、存储设备信息获取函数等等。其他控制(disk_ioctl)。
底层设备驱动函数是存放在diskio.c文件,
24.4
FatFs文件系统移植实验
24.4.1
硬件设计及FSP
FatFs属于软件组件,对底层介质的操作都要交给用户去实现,文件都在源码src文件夹中,扇区写入(disk_write)、已经足够满足大部分功能。
24.4.2.2
修改配置文件
ffconf.h文件是FatFs的配置文件。我们完全可以根据实际需求选择所需用到的函数。只有前三个函数是必须添加的。这里就直接使用。
通过表FatFs移植需要用户支持函数我们可以清晰知道很多函数是在一定条件下才需要添加的,修改文件需要的。ff.h、其中ff.c、为实现格式化功能,ffsystem.c以及ffunicode.c4个文件我们不需要改动,见图FatFs程序结构图。
用户应用程序需要由用户编写,
FatFs组件是FatFs的主体,
接下来,
未经允许不得转载:>讯波 » 物业品质经理述职报告范文