本文主要是介绍振南技术干货集:znFAT 硬刚日本的 FATFS 历险记(1),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
注解目录
1、znFAT 的起源
1.1 源于论坛
(那是一个论坛文化兴盛的年代。网友 DIY SDMP3 播放器激起了我的兴趣。)
1.2 硬盘 MP3 推了我一把
(“坤哥”的硬盘 MP3 播放器,让我深陷 FAT 文件系统不能自拔。)
1.3 我的导师——顾国昌教授
(哈军工时期的老教授,德高望重的人生导师。)
1.4 我的母校——哈工程
(隐藏牛校哈工程,网络名嘴张雪峰所言非虚。振南给你讲讲母校历史:哈军工、工程学院、哈船院、哈工程。)
1.5 那场严重超时的答辩会
(20 分钟的答辩超时 1 小时,老师表示赞叹。现场承诺要把文件系统写成书。)
1.6 时隔多年的谢师会
(承诺必须兑现,5 年之后的谢师会,我擎书谢师。不要轻易作出承诺,除非你真得能作到!)
2、高手如云 认清对手
2.1 国外 FAT 方案简介
1 )FATFS
2 )EFSL
3 )UCFS
4 )TFFS
5 )DOSFS
(列举那些主流 FAT 文件系统方案,并进行详细介绍。)
2.2 国内 FAT 方案简介
1 )ZLG/FS
2 )沁恒 FAT
(国内尚无成型开源的 FAT 文件系统方案。但是我们要支持国货。)
3、硬刚高手 挑战自己
3.1 与高手竞速
3.2 挑战自己
(这一节我写了一个月。环比各大知名方案,看看到底谁更快!最终,挑战了自我。)
4、znFAT 精彩应用大赏
4.1 振南的精彩实验
4.1.1 SD 卡 卡 WAV 音频播放器
4.1.2 SD 卡电子滚动屏
4.1.3 SD 卡 卡 MP3 播放器
4.1.4 AT89S51 离线下载器
4.1.5 数据采集导入 EXCEL
4.1.6 串口文件窃取器
4.1.7 录音笔于 (基于 VS1003B) )
4.1.8 文件无线传输实验
4.1.9 嵌入式脚本程序解释器
4.1.10 绘图板实验(基于 STM32F4 ,屏幕截图存为 BMP 图片)
4.1.11 MEMS 声音传感器“ 硅麦” 录音实验
(znFAT 的最大亮点在于各种精彩的应用,希望振南的这些实验可以让你眼前一亮。)
4.2 精彩的第三方项目应用
4.2.1 仿 仿 Metro UI 系统应用实验
4.2.2 通过 U 盘对产品进行升级
4.2.3 嵌入式网页服务器
4.2.4 STM32+LD3320 作声控音频播放器
4.2.5 BMP 图片浏览
4.2.6 VGA 显示 SD 卡中的图片(基于 FPGA) )
4.2.7 汉字电子书(基于 STM8) )
4.2.8 文本语音合成实验(TTS ,基于 NUC120) )
4.2.9 《跳跃小猫》动画播放(基于 FPGA NIOSII)
首先,znFAT 配套书籍已出版,名为《嵌人式 FAT32 文件系统设计与实现一-基于振南znFAT》,如图 18.1 所示。
图 18.1 《嵌入式 FAT32 文件系统设计与实现———基于振南 znFAT 》一书效果图
如果本章让你对单片机上的 FAT32 文件系统或振南的 nFAT 产生了兴趣那请移步图书馆、书店或者电商平台。看看振南的生意经,如意算盘。
“znFAT?没听说过呀!它到底是什么?振南,胖子?”严肃··.···严肃一点!它是由振南花费近 5 年时间原创开发、精简高效而又易于移植、已得到广泛流传、验证与应用的一套完备的嵌人式 FAT32 文件系统方案
“不明白,它到底有什么用?”
“很有用!”
如果你想用单片机去读取 SD 卡或 U 盘等存储设备中的 MP3 文件来实现音频播放或者想把采集到的数据通过单片机直接存为文件,再或者······那么你就无法避免地产生了在嵌入式平台上对文件进行读/写的功能需求。此时,就是 znFAT“大显身手”的时候了!znFAT 并非一个标新立异的东西,它绝大部分与现行的微软 FAT32 文件系统高度兼容这意味着它可实现与 Windows Linux 等主流操作系统之间的文件无界互通。znFAT 因其独特的嵌入式应用背景与功能需求,在设计与实现上都引入了大量的创新思想与技术,其中所流露出来的各种开发技巧对于广大工程师来说更是一笔巨大的精神与知识财富。
明白 znFAT 是什么了?0K,那赶紧买书去吧!(这是本书最具广告色彩的开篇了。原谅振南,我不是商人,知识是无价的。)
1
znFAT 的起源
1.1 源于论坛
2006 和 2007 年是我泡坛最多的两年,主要是因为当时在学校我有比较多的时间。当时有几个比较大的电子技术论坛,比如 211C ourAVR,EDNChina elecfans,EEWorld、CEPark等等。我在上面收获了大量的知识,增长了很多见识,这也是造就我现在似乎懂得很多的原因,也才有了本书中所囊括的众多知识。
当时 DIY MP3 播放器比较火,围绕 VS1003 这颗 MP3 解码片很多网友都在论坛里晒出了自己的作品,SD卡 MP3、U 盘 MP3 等,如图 18.2 所示。
图 18.2 网友发布到论坛的 DIY MP3 播放器作品
我对 DIY MP3 也很感兴趣,按照我的性格,感兴趣就要马上行动,等不了。我画了 PCB采购了元器件,焊出了我自己的 MP3 播放器,如图 183 所示
同很多的电子产品一样MP3 播放器硬件好办,主要难点在软件。
为了简单,我起初是直接将 MP3 音频数据固化在单片机的内部 ROM 中,然后写VS1003,即完成 MP3 播放。但是这也只能播放十几秒钟而已,因为内部 ROM 容量不会太大。(当然,现在很多高档单片机内部 ROM 容量都已经上兆了,存一首完整的 MP3 还是足够的。)
图 18.3 当时振南 DIY 的 MP3 播放器
“MP3 文件是怎么固化到单片机中的呢?数组?还是直接烧录?”这里有一些专门的软件,可以看振南关于 znFAT 的书,有详细的讲解。(这本书就是以 MP3 播放器开篇的。)接下来就是要读取 SD卡,实现真正的 SD 卡 MP3 播放器。但是当时我对如何读取 SD 卡中的文件还是一头雾水。
1.2 硬盘 MP3 推了我一把
有一天,我在系里闲逛,来到科协办公室,看到科协主席在摆弄一台电子设备,如图 18.4所示。
图 18.4 “坤哥”的硬盘 MP3 播放器
我好奇地上去问:“坤哥,你这是啥?”
“这是一台硬盘 MP3 播放器。”
“你也开始搞硬件了?”
“学习,学习一下。这是别人的。”
“读取文件怎么搞呢?我要是能做一台硬盘 MP3 多好啊。”我心里想
就这样,硬盘 MP3 推了我一把,让我对存储设备和文件读取更加感兴趣了。接下来,历时5、6 年的研究、创作、推广,写书就此开始。(我性格有一个特点,总想看看一件事情最终是个什么结果,所以我手上很少有事情烂尾,不论成败。而且凡事都乐于深究,导致很多时候都不能自拔。
1.3 我的导师———顾国昌教授
2007 年我已经开始读研究生了,对于文件系统的研究热度丝毫未减。研究生的生活其实并不清闲。总共两年半,研一课多,后面主要是学习和实习,还有一个重头戏一--写论文。我在考虑一个问题:能不能把文件系统就定为我的研究方向,这样就一举两得了。但是这得需要导师的同意。
我觉得在这里我有必要详细介绍一下我的导师一-顾国昌教授。他虽然不像我们学校的院士那么有名,比如哈尔滨工程大学的杨士我院士、杨德森院士等(他们都是水声方面的专家,前者是水声专业的奠基人)。但是他在机器人控制和人工智能方面是绝对的资深专家。以下是顾国昌教授的简介.
个人经历:
男,1946 年4月出生,教授,博士生导师。1967 年毕业于中国人民解放军军事工程学院(即现在的哈尔滨工程大学)计算机专业,1985~1987 年公派赴法国巴黎居里大学学习机器人控制技术,获博士文凭。此后长期从事智能控制、智能机器人和机器人智能技术的研究,在水下机器人的智能决策和控制技术方面开展了深入的研究工作。
研究内容:
包括智能机器人软硬件体系结构、任务规划、路径规划、自主作业技术及智能水下机器人的工程化和实用化研究等方面,研究的技术涉及规划方法、机器学习、计算智能、数据融合、嵌人式机器人智能控制系统和计算机仿真等领域。
个人成就:
主持或作为技术负责人完成了国防科工委的“八五”,“九五”重点预研项目以及国防科工委的国防预研基金等项目,先后获国家科技进步二等奖 1 项,国防科工委科学技术一等奖 1项,中船总公司科技进步一等奖 1项、二等奖2项,获中船总公司有突出贡献的中青年专家称号。近期还从事嵌入式系统与 SoC 的研究,涉及微控制器芯片、编译器、嵌人式应用系统开发及网络存储等内容。发表论文 100 多篇,有 30 多篇次被 SCIEIISTP 收录
这篇关于振南技术干货集:znFAT 硬刚日本的 FATFS 历险记(1)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!