《嵌入式FAT32文件系统设计与实现 基于指南znFAT 上》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:于振南编著
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2014
  • ISBN:9787512414853
  • 页数:218 页
图书介绍:存储设备在嵌入式系统中所处的地位和所起的作用不言而喻,是绝对不可或缺的重要部分。早期的存储设备,如eeprom、flashrom等,通常在产品或系统中记录着一些重要的数据和信息。因其数据量不大,所以数据的组织与管理工作尚不构成问题。随着存储设备的飞速发展,新兴、通用、大容量的存储设备已渐渐占据了主导地位,如SD卡、U盘、硬盘等等。同时,单片机和嵌入式CPU硬件性能的提高也是一日千里,已可满足较为复杂的应用需求。这些新兴而流行的存储设备已逐渐渗入到日益强大的嵌入式平台之中。人们希望通过它们使数据的存储更为通用而方便,并可与PC直接进行数据交互。但是,此时一个非常重要而棘手的问题突显出来:单片机和嵌入式系统中如何来读写这些存储设备上被文件系统(如FAT、EXT2等)所管理和分配的文件和数据?就如同网络通信要遵循TCP/IP这样的主流协议一样,嵌入式存储设备上数据的管理同样要遵循一套协议,这套协议就是所谓的“文件系统”,而FAT就是最为经典而优秀的文件系统方案。

第1章 欲善其事,必利其器:振南的ZN-X模块化开发板介绍 1

1.1振南的ZN-X模块化开发板 1

1.1.1 ZN-X的基板 1

1.1.2 ZN-X的配套模块 3

1.2 ZN-X开发板的使用与测试 4

1.2.1统一的下载与通信接口 4

1.2.2 USB转串口模块 8

1.2.3实验:ZN-X开发板的全面测试 10

第2章 端倪初现,实验切入:MP3数码相框的初步实现 11

2.1实验准备: MP3数码相框的硬件选配 11

2.2硬件模块简介 14

2.3编程实现 21

第3章 逐渐深入,转入正题:新型存储器SD卡的引入 26

3.1 FlashROM的数据“灌入”——编程 26

3.1.1使用烧录器 26

3.1.2振南的方法 27

3.2新型存储器 27

3.2.1格式化与文件写入 28

3.2.2 SD卡读/写模块 29

3.3实验:简易SD卡MP3数码相框 30

3.3.1 WinHex软件的使用 30

3.3.2 SD卡扇区读/写程序模块 34

3.3.3简易SD卡MP3数码相框的实现 34

第4章 自建模型,会意由衷:让我们的思想与FAT32接轨 37

4.1文件管理模型 37

4.1.1原始模型 38

4.1.2改进模型 38

4.2 FAT32文件系统 40

4.2.1逼近模型 40

4.2.2 FAT32的轮廓 42

第5章 轻踏上路,初涉分析:开启FAT32文件系统之门 44

5.1 FAT32文件系统的入口——主引导记录MBR 44

5.2“手工解析”MBR——基于WinHex 46

5.3解析MBR的程序实现 49

5.3.1笨实现方法 49

5.3.2改进方法1:结构化实现方法 50

5.3.3关键:大小端问题 52

5.3.4改进方法2:通用化的解析方法 54

5.4硬件平台上的验证 55

5.4.1编写测试代码 55

5.4.2验证实验结果 60

第6章 摘取参数,精准定位:FAT32中的关键部分——DBR 62

6.1定位工具:DOS引导记录DBR 62

6.2深入理解:勾勒清晰轮廓 64

6.2.1手工解析DBR(BPB) 64

6.2.2制作假U盘 66

6.2.3例说“簇”——连锁水桶取水游戏 68

6.3 znFAT的初始化函数 69

6.3.1 DBR解析的程序实现 69

6.3.2初始化参数集合 72

6.3.3硬件平台验证实验 74

第7章 文件在手,剖析寻数:文件目录项分析与信息提取 76

7.1从首目录下手 76

7.2文件目录项 77

7.2.1文件目录项的定义 77

7.2.2手工解析FDI 79

7.2.3解析时间信息 80

7.2.4篡改文件“时间戳” 81

7.3 FDI解析的代码实现 82

7.3.1文件信息的提取 83

7.3.2文件信息集合 85

7.3.3硬件平台验证 86

7.4实验:带znFAT雏形的SD卡MP3数码相框 89

第8章 渐入渐深,初触核心:展示FAT32绝妙的簇链结构 93

8.1初识FAT表 93

8.2剖析FAT表及簇链 97

8.2.1印证文件的连续存储 97

8.2.2数据非连续的真实体现 99

8.3编程实现:FAT表项与簇链读取 101

8.4带簇链的SD卡MP3数码相框 105

第9章 数据读取,纷繁交错:挑战数据读取赛程中的繁杂逻辑 107

9.1让数据读取更精细:数据的分层与剥离 107

9.2数据读取函数的实现 111

9.2.1初步实现 111

9.2.2 SD卡MP3数码相框的分步式实现 113

9.3数据读取功能的成型 115

9.3.1数据位置的标定 115

9.3.2繁杂的簇内数据过程 116

9.3.3数据读取的归一化 121

9.3.4汉字电子书实验的引出 122

第10章 数据游走,平台转移:电子书实验与交叉开发模式 124

10.1 SD卡汉字电子书 124

10.1.1汉字字模的获取 124

10.1.2 HZK16的字模数据定位 128

10.1.3 SD卡汉字电子书的实现 131

10.2交叉开发模式 133

10.3 PC平台的功能验证 137

10.3.1 VC+++6.0实现汉字显示 137

10.3.2内存虚拟磁盘的提出 140

第11章 文件匹配,目录扩展:文件名匹配与目录的簇链结构 143

11.1文件的匹配 143

11.1.1文件目录项的搜索 143

11.1.2 8.3短文件名(SFN) 144

11.1.3 SFN的匹配 145

11.1.4目录簇的拓展 147

11.1.5对文件打开函数的测试 150

11.2短文件名的通配 153

11.2.1通配 153

11.2.2文件名通配算法 153

11.2.3文件枚举的实现 158

第12章 逐层深入,寻踪及致:突破根目录进入更深层多级目录 161

12.1进入子目录 161

12.1.1目录的文件目录项 161

12.1.2目录开始簇的获取 162

12.2依路径进入多级目录 164

12.2.1绝对路径的分解 165

12.2.2进入深层目录 166

12.2.3让文件打开函数更强大 169

第13章 真知实践,精彩展现:套书的第一个实验专题 171

13.1 SD卡WAV音频播放器 171

13.2 SD卡电子滚动屏 174

13.3 SD卡数码相框 176

13.4 SD卡视频播放器 178

13.5 SD卡MP3播放器 182

13.6 AT89S51离线下载器 186

13.7仿Metro UI系统应用实验 188

13.8通过U盘对产品进行升级 190

13.9嵌入式网页服务器 190

13.10 STM32+LD3320作声控音频播放器 191

附录znFAT的移植与应用 192

振南启示录Ⅰ 206

振南启示录Ⅱ 208

振南启示录Ⅲ 212

振南启示录Ⅳ 214

振南启示录Ⅴ 216

参考文献 218