OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 10710|回复: 27

嵌入式FAT文件系统源码免费下载

[复制链接]

6

主题

18

帖子

0

精华

初级会员

Rank: 2

积分
77
金钱
77
注册时间
2011-11-18
在线时间
3 小时
发表于 2012-7-18 17:51:35 | 显示全部楼层 |阅读模式

嵌入式FAT文件系统源码免费下载

本文件系统可兼容FAT16/FAT32两种文件系统格式,完全支持长文件名,
支持GB2312/UNICODE转换码表(文件名可以支持简体中文,繁体中文,日文,俄文等),
支持子目录,支持文件的读取,写入,删除,创建等文件系统常用功能。
另外,本文件系统完全使用C代码编写,可以无障碍的移植于多种主流单片机的平台上使用。


FAT16为我们免费提供的免费代码,用户可免费测试,研究,应用。
本代码的FAT32(兼容FAT16)与多盘版本(支持磁盘文件互拷),我们得收费,
如果您需要,就与我们联系! qq:292942278,E-MAIL:tony_yang123@sina.com.cn

FAT16.rar

1.3 MB, 下载次数: 2650

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

14

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2011-12-10
在线时间
1 小时
发表于 2016-4-27 09:37:36 | 显示全部楼层
你说的对,局部变量是放在堆栈里的,代码你只要把堆栈设大小就行了!不影响代码的使用
回复 支持 0 反对 1

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2012-7-18 18:37:24 | 显示全部楼层
学习下fafs的作者吧.
另外,想要收费,你得拿出比FATFS更好的性能出来,才可能有人去用你的.否则,只能留着自己用了.
比如你占的资源多少?读写速度多少?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

6

主题

18

帖子

0

精华

初级会员

Rank: 2

积分
77
金钱
77
注册时间
2011-11-18
在线时间
3 小时
 楼主| 发表于 2012-7-18 20:32:02 | 显示全部楼层

说了支持中文啦

回复 支持 反对

使用道具 举报

6

主题

18

帖子

0

精华

初级会员

Rank: 2

积分
77
金钱
77
注册时间
2011-11-18
在线时间
3 小时
 楼主| 发表于 2012-7-18 20:33:35 | 显示全部楼层

fatfs是什么东西

回复 支持 反对

使用道具 举报

1

主题

14

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2011-12-10
在线时间
1 小时
发表于 2012-7-18 20:35:19 | 显示全部楼层
这个文件系统功能很强大
回复 支持 反对

使用道具 举报

1

主题

14

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2011-12-10
在线时间
1 小时
发表于 2012-7-18 20:36:55 | 显示全部楼层
支持中文,做得真不错
回复 支持 反对

使用道具 举报

1

主题

14

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2011-12-10
在线时间
1 小时
发表于 2012-7-18 20:39:09 | 显示全部楼层
我测试了一下,做得相当稳定啊!做得这么好,肯定有很多人要用
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
25
金钱
25
注册时间
2012-7-18
在线时间
0 小时
发表于 2012-7-18 20:45:11 | 显示全部楼层
支持中文啊,找了好久了
先下载下来!回头测试测试看看!
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2012-7-18 23:05:27 | 显示全部楼层
回复【4楼】figureyang:
---------------------------------
居然不知道fatfs????

日本人写的:http://elm-chan.org/fsw/ff/00index_e.html
楼主看看这个帖子的介绍.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2012-7-18 23:10:18 | 显示全部楼层
 这是人家做的各个平台下资源占用率表:



详细资料:http://elm-chan.org/fsw/ff/en/appnote.html

建议楼主好好参考下,顺便说一下,在中国做付费软件是很难的,写的这种软件只有2条路.1,开源,让他人发扬光大.2,收费,个人diy用或者等死.

我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2012-7-18 23:20:34 | 显示全部楼层
回复【楼主位】figureyang:
---------------------------------
看了下楼主的代码,貌似没有实际在单片机上测试.仅提供了C++的测试版本.
如果没测试,建议楼主赶紧测试一下,包括各种平台.

看你的代码里面,很多类似:
static u32 Get_Previous_Cluster_From_Current_Cluster(u32 Cluster)
{
  u8 buf[512];
  u32 CUR_FATSecNum,CUR_FATEntOffset;
  u32 CUR_Checking_Cluster_No;

这样的代码,提醒楼主一下,这样的代码,还远没有达到实用级别.
单从你开辟的这512字节的数组,就看出楼主应该没做多少单片机上的测试,要是测试过,肯定不会这么写的.
单片机最重要的资源就是SRAM,也是最缺的资源,好的风格是用指针,共用,来解决.你这样在单个函数开辟512字节的数组,代码极易崩溃(堆栈溢出),直接就跑死.

不可否认,楼主花了很多心思来研究和写这个代码,只是你还没有在单片机测试,也就称不上嵌入式文件系统.
楼主还不知道fatfs,表示震惊.要知道fatfs,在全世界都用的很广,楼主看看楼上我贴的FATFS对资源的需求,再移植你自己的代码看看需求.然后再好好修改代码,兴许以后可以喝fatfs比比,再考虑收费不迟.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

36

主题

1105

帖子

5

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2199
金钱
2199
注册时间
2012-2-8
在线时间
35 小时
发表于 2012-7-18 23:26:59 | 显示全部楼层
看过部分代码,确实对RAM的使用比较挥霍
https://github.com/roxma
回复 支持 反对

使用道具 举报

6

主题

18

帖子

0

精华

初级会员

Rank: 2

积分
77
金钱
77
注册时间
2011-11-18
在线时间
3 小时
 楼主| 发表于 2012-7-19 08:21:58 | 显示全部楼层
 一派胡言!
现在的单片机都是64K的内存!还在乎512个字节的数组!
崩溃,堆栈溢出,一看就是不专业!
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
25
金钱
25
注册时间
2012-7-18
在线时间
0 小时
发表于 2012-7-19 08:30:08 | 显示全部楼层
回复【13楼】figureyang:
 一派胡言! 现在的单片机都是64K的内存!还在乎512个字节的数组! 崩溃,堆栈溢出,一看就是不专业!
---------------------------------
没做过多任务的人
回复 支持 反对

使用道具 举报

1

主题

14

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2011-12-10
在线时间
1 小时
发表于 2012-7-19 08:34:55 | 显示全部楼层
回复【14楼】pretty:
回复【13楼】figureyang:  一派胡言! 现在的单片机都是64K的内存!还在乎512个字节的数组! 崩溃,堆栈溢出,一看就是不专业! --------------------------------- 没做过多任务的人
---------------------------------
此人水平太差
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2012-7-19 09:09:19 | 显示全部楼层
回复【13楼】figureyang:
---------------------------------
楼主啊,好心说你,你听不进去.
我也不知道怎么说你了.还是多了解一下单片机吧,免得遭人笑话.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2012-7-19 09:11:41 | 显示全部楼层
一个没用过单片机的人,写出来的代码还自称嵌入式...
中国人做事就这水平了....
即使你水平再高又有何用?纸上谈兵,或者只能在电脑上仿真仿真罢了.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

8

主题

175

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
407
金钱
407
注册时间
2011-3-31
在线时间
51 小时
发表于 2012-7-19 10:57:33 | 显示全部楼层
这种人是无药可救了。原子何必理他呢。。
代开发智能楼宇对讲通讯、交直流无刷电机驱动、无功功率补偿器、电力仪表、电气火灾监控系统、(电梯远程监控、对讲通讯系统、TFT楼层显示)开发等。代理记账(限北京)联系方式:15300201607?shop65501025.taobao.com
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
25
金钱
25
注册时间
2012-7-18
在线时间
0 小时
发表于 2012-7-19 11:19:22 | 显示全部楼层

对啊对啊,哪里来的毛孩子

回复 支持 反对

使用道具 举报

36

主题

1105

帖子

5

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2199
金钱
2199
注册时间
2012-2-8
在线时间
35 小时
发表于 2012-7-19 13:01:07 | 显示全部楼层
回复【13楼】figureyang:
---------------------------------
我这有一片 51,内部只有 1024 +256的RAM,型号叫 STC12C5A60S2,不知楼主的文件系统能否放上去跑跑?

fatfs的压缩版是可以放上去跑的,znFAT也是从51写起的,不是所有的单片机都像你想的那么多RAM的

而且,国外优秀的 开源FAT 也有不少,不说fatfs,efsl 你应该知道吧,还有stm32plus(基于C++)的呢?

楼主你想拿什么优点去和其他开源项目的去比较?
https://github.com/roxma
回复 支持 反对

使用道具 举报

6

主题

18

帖子

0

精华

初级会员

Rank: 2

积分
77
金钱
77
注册时间
2011-11-18
在线时间
3 小时
 楼主| 发表于 2012-7-19 13:44:26 | 显示全部楼层
这年头一天到晚51,工作都不好找
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2012-7-19 13:48:18 | 显示全部楼层
回复【21楼】figureyang:
---------------------------------
楼主,给你个建议.
好的建议,你真应该听听.
你说你这个很牛掰,可以放到ARM9,ARM11,A8上面跑.可是你想想,人家还用跑你这个么?装WINCE,LINUX,ANDROID,难道不能管理文件系统? 难道还需要你的这个FAT16和收费的FAT32来管理文件系统?
睡太深,没醒吧?
所以你这个目前的状态是:高不成,低不就.
总之,楼主自己自娱自乐吧.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

36

主题

1105

帖子

5

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2199
金钱
2199
注册时间
2012-2-8
在线时间
35 小时
发表于 2012-7-19 14:50:43 | 显示全部楼层
回复【21楼】figureyang:
---------------------------------
楼主你没看明白我的意思,
说白了,想压缩成本用51或者其它8位机的时候,你那派不上用场,
就算上了ARM,在ARM的中低端领域,你的代码的性能方面也比不上现有的成熟的开源免费项目,
在高端领域,已经不需要自己写文件系统了。
...
https://github.com/roxma
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
25
金钱
25
注册时间
2012-7-18
在线时间
0 小时
发表于 2012-7-19 15:39:15 | 显示全部楼层
对,楼主自娱自乐吧
回复 支持 反对

使用道具 举报

1

主题

14

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2011-12-10
在线时间
1 小时
发表于 2012-7-20 08:19:51 | 显示全部楼层
屁话连篇
回复 支持 反对

使用道具 举报

28

主题

125

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
260
金钱
260
注册时间
2013-4-14
在线时间
1 小时
发表于 2015-1-4 16:05:38 | 显示全部楼层
哈哈,最近再查FATFS稳定性的资料,找到这个帖子,
好搞笑啊!!!
虽然过去很久远了,也还是吐槽下:
LZ,你知道么,在函数内部定义的数组,不是从你所谓的64K ram空间直接申请的,
函数内部变量都是进入函数时,从栈里面申请的,退出函数后,直接释放掉的,你可以查一下stm32这种32位大内存的MCU,默认分配的栈空间也只有4K,
你在函数内部声明512字节的数组只能说是作死,你用这样的代码水平来出一个文件系统,用你文件系统的人会被你坑死,后期出问题一大堆还找不到原因。
我可以一辈子都呆在家里不出来么?
回复 支持 反对

使用道具 举报

3

主题

130

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3130
金钱
3130
注册时间
2017-3-2
在线时间
324 小时
发表于 2020-3-18 16:44:34 | 显示全部楼层
写出来就不错了,有探索精神,我不会写,只能参考下作者的,谢谢
坚持不懈的努力!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-22 20:54

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表