jiaowoxiaolu 发表于 2013-5-21 20:31:13

还在玩fatfs?换点口味吧!YAFFS2 更适合NAND 闪存!标题要长...

本人最近搞的一个东西上用到的nandflash,因此想找个文件系统来方便管理文件,由于设备一般都是直接关闭电源的,要是用fatfs的话,有点担心某天分区表就不小心挂掉了,而且fatfs还要自己处理擦写均衡,坏块管理什么的一大堆东西,非常不爽。后来经过一顿百度谷歌,发现了yaffs2,专为nandflash而生,各方面了解后觉得不错,因此产生了移植yaffs2的念头。

由于以前没实际用文件系统做过项目,因此对文件系统不怎么熟悉,本以为百度谷歌之便有教程了,谁知,谷歌翻了几十页都没什么收获,百度翻了几十页都是广告! 有的资料大多是linux下移植,没多大用,好不容易找到个说搞好了,但也只是一笔带过就消失了,代码也没留下! 无奈只好硬着头皮肯代码(吐槽,yaffs的文档真是少,而且文档也是好久都没更新了都是老的),连续肯了2星期,终于搞定了。
好的代码应该让广大 苦逼 程序猿 都能用上,因此现在特将移植好的代码 发布在这里,让大家也尝尝鲜。发扬开源精神,共创和谐论坛,如果你在使用该代码过程中发现bug或者修改了更好的算法,那么希望您也能贡献出您的优秀代码,我们大家都会感激您!{:smile:}

废话了一堆,上代码,下班吃饭去!

我硬件环境lpc1788 + 16M sdram,使用说明在压缩包里面!


从零移植过程的艰苦只有自己才知道,省略一万字。如果你喜欢就顶一下!如果不喜欢也定一下吧!吐槽说简单的就算了吧!至少我分享给了大家,你却只放在你自己的硬盘里。{:titter:}

ysu_er 发表于 2013-5-21 20:35:10

支持楼主

haffman1 发表于 2013-5-21 20:48:45

mark YAFFS2!

Eric2013 发表于 2013-5-21 20:55:04

收藏 顶起

wuguoyan 发表于 2013-5-21 20:56:09

楼主精神可嘉,果然有码农风范,哈哈{:lol:}

sunliezhi 发表于 2013-5-21 20:57:11

这个得顶,有空也玩玩{:lol:}

zwgmail 发表于 2013-5-21 21:03:03

支持楼主,顶起

huangjiyue 发表于 2013-5-21 21:04:07

强烈支持楼猪!

shamiao 发表于 2013-5-21 21:05:46

用过友善之臂板子的都会熟悉这个东西…
个人感觉,确实比fat坚固

david1234 发表于 2013-5-21 21:15:45

LZ有空可以了解一下UBI,F2FS,可能对大容量NAND更适用些

spely 发表于 2013-5-21 21:22:01

支持楼主~

wye11083 发表于 2013-5-21 21:34:14

。。LZ其实可以从Linux Kernel中扒出来YAFFS2的代码。任何Linux代码都有YAFFS2的驱动程序,其基于NAND驱动程序。

lanshuitianxia 发表于 2013-5-21 21:37:02

不错 支持楼主。好像UFFS也不错

tiancaigao7 发表于 2013-5-21 21:40:41

貌似RTT有了这个驱动,楼主可以看看。

3DA502 发表于 2013-5-21 21:45:05

本帖最后由 3DA502 于 2013-5-21 21:58 编辑


老鼠,LPC1788不适合,没有ECC校验的加速器,软件校验会慢死,推荐使用MB9F506,硬件支持ECC

不过我还是觉得还是用 eMMC 靠谱

另外这里推荐UFFS,这个是在YaFFS上面精简的

honami520 发表于 2013-5-21 21:53:57

楼主为论坛做出了贡献,支持一个!代码收藏了,哈哈

jiaowoxiaolu 发表于 2013-5-21 21:54:57

tiancaigao7 发表于 2013-5-21 21:40 static/image/common/back.gif
貌似RTT有了这个驱动,楼主可以看看。

下了最新版看过,没有的

jiaowoxiaolu 发表于 2013-5-21 22:04:04

wye11083 发表于 2013-5-21 21:34 static/image/common/back.gif
。。LZ其实可以从Linux Kernel中扒出来YAFFS2的代码。任何Linux代码都有YAFFS2的驱动程序,其基于NAND驱动 ...

官网就有源码包,处理一下就能分离出代码,肯linux源码岂不是自找麻烦

jiaowoxiaolu 发表于 2013-5-21 22:08:49

3DA502 发表于 2013-5-21 21:45 static/image/common/back.gif
老鼠,LPC1788不适合,没有ECC校验的加速器,软件校验会慢死,推荐使用MB9F506,硬件支持ECC

不过我还是 ...

yaffs一直在更新维护,最近一次更新在几天前,uffs已经很久不更新了貌似

sys_suweixiao 发表于 2013-5-21 22:18:42

存储什么数据呢?

能不能举例说下怎么用啊?不太懂。sd卡移植文件系统,可以直接在电脑上查看数据文件。这个文件系统具体怎么用的?

ndt2000 发表于 2013-5-21 22:44:50

这个得要顶一下啊

dreampet 发表于 2013-5-21 22:46:55

楼主不错 曾经动过移植的念头 后来还是放弃了

jiaohaitao 发表于 2013-5-21 22:47:26

向楼主学习,以后多开源,{:victory:}{:victory:}
帮人帮己

myqiang1990 发表于 2013-5-21 22:51:23

谢谢楼主

develop 发表于 2013-5-21 22:53:17

不错 支持了

Vincent2012 发表于 2013-5-21 23:29:02

确实不错,谢谢、

SNOOKER 发表于 2013-5-21 23:46:01

楼主高手。从楼主的难得小清闲系列就关注你了,感谢楼主{:loveliness:}

USACH 发表于 2013-5-21 23:57:21

支持,但是就这个,推荐lz看inand,而不是nand。

闲鱼翻身 发表于 2013-5-21 23:58:24

收藏、辛苦了

wanyou132 发表于 2013-5-22 00:38:50

好资料啊,值得

xizi 发表于 2013-5-22 04:08:30

支持一下。eMMC是趋势。

vcprograme 发表于 2013-5-22 07:51:30

谢谢共享

hongyancl 发表于 2013-5-22 08:06:12

顶楼主,有时间弄个教程就更好了,呵呵呵

0flame0 发表于 2013-5-22 08:14:49

支持楼主!我现在用的uffs1.3.5,轻量级,也不错,学习下yaffs2

jiaowoxiaolu 发表于 2013-5-22 08:18:17

SNOOKER 发表于 2013-5-21 23:46 static/image/common/back.gif
楼主高手。从楼主的难得小清闲系列就关注你了,感谢楼主

高手谈不上,随便玩玩而已{:smile:}

jiaowoxiaolu 发表于 2013-5-22 08:20:32

USACH 发表于 2013-5-21 23:57 static/image/common/back.gif
支持,但是就这个,推荐lz看inand,而不是nand。

可替代的方案多了,但是就成本跟封装来说,目前inand或者说emmc,就是个非主流,要是足够便宜,谁还会折腾这个

USACH 发表于 2013-5-22 08:38:38

jiaowoxiaolu 发表于 2013-5-22 08:20 static/image/common/back.gif
可替代的方案多了,但是就成本跟封装来说,目前inand或者说emmc,就是个非主流,要是足够便宜,谁还会折 ...

没看懂你在说什么?inand类型的:比如sd/tf类似的。就一个稍微好点的接插件的几个,不贵啊。

lllaaa 发表于 2013-5-22 08:39:20

yaffs2很好移植啊。代码很清晰。唯一花了点时间的就是函数返回值和常规习惯不同

283868130 发表于 2013-5-22 08:44:12

好贴留名!

jiaowoxiaolu 发表于 2013-5-22 08:49:05

USACH 发表于 2013-5-22 08:38 static/image/common/back.gif
没看懂你在说什么?inand类型的:比如sd/tf类似的。就一个稍微好点的接插件的几个,不贵啊。 ...

推荐一款你说的inand 价格便宜量又足,不要bga封装,因为设备环境复杂,是在车上,有震动,有灰尘,经常还会暴晒或者进点水,tf之类不焊死的,你用的放心?

bbandpp 发表于 2013-5-22 08:59:17

学习了

banyai 发表于 2013-5-22 09:05:15

支持一下。

USACH 发表于 2013-5-22 09:06:50

jiaowoxiaolu 发表于 2013-5-22 08:49 static/image/common/back.gif
推荐一款你说的inand 价格便宜量又足,不要bga封装,因为设备环境复杂,是在车上,有震动,有灰尘,经常 ...

我懂啦。

我不知道,不喜欢BGA是什么情感。

AIHHLI 发表于 2013-5-22 09:53:41

按个爪印,或许用得着。

jacc2008 发表于 2013-5-23 14:59:36

好东西,感谢分享

365mcu 发表于 2013-5-23 15:03:00

从零开始的确都不容易。。。

mypc16888 发表于 2013-5-24 17:27:40

顶起,楼主不错,MARK

boycn 发表于 2013-5-24 17:54:25

david1234 发表于 2013-5-21 21:15 static/image/common/back.gif
LZ有空可以了解一下UBI,F2FS,可能对大容量NAND更适用些

这两个资料不多啊,有MDK或IAR下的移植吗

electrlife 发表于 2013-5-24 19:09:40

本帖最后由 electrlife 于 2013-5-24 19:10 编辑

好东西,留名,多谢LZ分享!
曾经也看过YAFFS,唯一的遗憾就是太占用内存也,也只有带SDRAM的MCU也玩得起!

QJD_LZF 发表于 2013-5-24 19:13:27

不错。支持下

QJD_LZF 发表于 2013-5-24 19:13:49

不知成本怎么样

jetli 发表于 2013-5-24 19:38:13

一直都没注意、分不清所谓nor flash 、nand flash 啥意思 {:titter:}

2006lc 发表于 2013-5-24 20:15:32

谢谢楼主分享

19910304xiaoyao 发表于 2013-5-25 02:19:22

{:smile:} 支持楼主!!!

zouzhichao 发表于 2013-5-25 08:17:21

感谢楼主分享,支持一下

thxcai2 发表于 2013-5-25 08:24:42

重要参考,感谢楼主分享

janes5817 发表于 2013-5-25 09:08:44

支持楼主,给力

悠悠晒太阳 发表于 2013-5-25 09:59:28

厉害啊。以前用SD卡都格成FAT32了.

ysu_er 发表于 2013-5-30 09:45:41

标记一下,用的着

vitech 发表于 2013-5-30 14:17:30

这个要顶的,不错

snowdance 发表于 2013-6-5 22:40:55

支持楼主!

snowdance 发表于 2013-6-5 22:41:58

以前研究过YAFFS,看过代码,也想移植到单片机上,但没坚持下来,还是楼主厉害!

jisaowang 发表于 2013-6-5 23:05:57

mcu还要坏块管理,擦写平衡,都是很有追求的人啊...要我说就直接eMMC,自带控制器,简单方便....折腾这些坏块什么的,太麻烦了

xiaoziwen 发表于 2013-6-5 23:32:25

标记一下 是好东西

hamipeter 发表于 2013-6-6 09:35:36

谢谢分享!

zhenglingo 发表于 2013-6-7 17:47:04

标记,学习。

mcucow 发表于 2013-6-7 18:46:25

yaffs的文档 可以共享吗? 谢谢

jiaowoxiaolu 发表于 2013-6-7 18:50:50

mcucow 发表于 2013-6-7 18:46 static/image/common/back.gif
yaffs的文档 可以共享吗? 谢谢

官网有所有文档,不过都比较老

Alvin007 发表于 2013-6-7 19:11:05

用了多少RAM?

bzbs 发表于 2013-6-7 19:40:51

非常感谢!正在学习中!

jjj 发表于 2013-6-21 23:24:22

mark lpc1788 nandflash

shixuegui 发表于 2013-6-24 21:15:23

顶一个,其实这个更考验人!

szszjdb 发表于 2013-7-12 00:11:53

顶顶顶,楼主精神值得学习!

3050311118 发表于 2013-7-12 00:43:17

请问下楼主,如果要在电脑上查看YAFF文件系统里的文件,用WINDOWS不行吧,得用LINUX应该

astankvai 发表于 2013-7-12 09:27:25

呵呵,我也来一句:
还在玩yaffs2?换点品味吧!UBIFS更适合嵌入式应用。

zhoujunming27 发表于 2013-7-14 14:40:20

顶起!学习学习!mark!

sange 发表于 2013-7-16 10:49:30

谢谢楼主的无私奉献,先收藏了!TKS

bbstr 发表于 2013-7-19 18:59:19

你内存那么大,当然合适了,有好多还是只有几十k内存的呢,没法玩这个

liurangzhou 发表于 2013-7-19 19:21:33

如果不是LPC1788等能够挂sdram的片子,yaffs估计有点扛不住,内存耗得比较多啊。

fy024 发表于 2013-7-19 22:08:55

太耗内存了,和FATFS使用的硬件不一样

mdcao 发表于 2013-7-19 22:53:19

定,顶,丁,订,鼎。。。。。。。{:lol:}

llysc 发表于 2013-7-19 23:13:40

厉害~~~~~~~~~~~~~

zhuifenga 发表于 2013-7-25 21:31:38

必须顶一下楼主!多谢分享经验。{:victory:}

xiefy21 发表于 2013-8-12 14:55:20

mark……
顶一个…

maolianghua2012 发表于 2013-8-24 20:24:57

不错,支持!

maolianghua2012 发表于 2013-8-24 20:28:02

0flame0
支持楼主!我现在用的uffs1.3.5,轻量级
请问uffs1.3.5好移植吗?

kneken 发表于 2013-8-24 20:36:22

mark!!!!!!!!!!!

252177861 发表于 2013-8-24 21:56:11

jiaowoxiaolu 发表于 2013-5-22 08:49 static/image/common/back.gif
推荐一款你说的inand 价格便宜量又足,不要bga封装,因为设备环境复杂,是在车上,有震动,有灰尘,经常 ...

推荐netcom的tSD产品。tssop48封装的SD,专门用于嵌入式产品。
http://www.netcom-ic.com/en/products/detail.asp?id=164

lubing521 发表于 2013-8-24 23:11:09

佩服楼主的良苦用心。

jxd701 发表于 2013-8-30 13:15:05

很需要顶下/|\{:victory:}

zhangshixing 发表于 2013-8-30 13:22:32

学习学习啊

advarx21ic 发表于 2013-9-7 13:31:58

在楼主提供的资料的基础上,基本完成了移植,不过问题很多,现在只能加载文件系统上去,还没试过打开文件,关闭文件,读写文件等基本操作。现在连怎么拷贝个文件到NAND中都成了问题,头大!

dong889 发表于 2013-9-7 14:08:14

mark            

cc1987 发表于 2013-9-7 17:23:06

支持楼主开源精神

jiaowoxiaolu 发表于 2013-9-7 17:53:23

advarx21ic 发表于 2013-9-7 13:31 static/image/common/back.gif
在楼主提供的资料的基础上,基本完成了移植,不过问题很多,现在只能加载文件系统上去,还没试过打开文件, ...

自己在里面建立一个文件,写入一些数字,然后再读出来,正常就行了,原版压缩包里面有一些使用的例子,参考一下就行了

wsxiaoping 发表于 2013-9-11 09:34:32

不错,学习了

advarx21ic 发表于 2013-9-11 12:39:49

jiaowoxiaolu 发表于 2013-9-7 17:53 static/image/common/back.gif
自己在里面建立一个文件,写入一些数字,然后再读出来,正常就行了,原版压缩包里面有一些使用的例子,参 ...

楼主,帮忙看看怎么我的debug viewer输出的信息会乱码?我的硬件和你的是一样的。程序也是照抄你的,不过弄了几天愣是动不起来,新建文件可以成功,但是写入文件就不行,调用写入函数返回的值正常,但是查询文件大小就一直都是零。

KongQuan 发表于 2013-9-11 13:09:06

这个支持。一直未用上文件系统,下载备用 。

hongyancl 发表于 2013-9-11 13:38:06

支持楼主

jiaowoxiaolu 发表于 2013-9-11 14:02:37

advarx21ic 发表于 2013-9-11 12:39 static/image/common/back.gif
楼主,帮忙看看怎么我的debug viewer输出的信息会乱码?我的硬件和你的是一样的。程序也是照抄你的,不过 ...

view窗口乱码那是jlink的事,发太快就会这样,我也没办法,直接print到实体串口上就没有了, 你先不要开编译优化,我这里试过速度太快的话nandflash会读写不成功
页: [1] 2 3
查看完整版本: 还在玩fatfs?换点口味吧!YAFFS2 更适合NAND 闪存!标题要长...