用51单片机设计了一个u盘,怎样用单片机来控制对闪存的存储?

fredson 2005-02-18 09:44:50
是否要写个象windows那样的文件分配表来自己完成逻辑簇到物理地址的转换?
...全文
419 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
jerehsofter 2005-04-01
  • 打赏
  • 举报
回复
mark
kxtclock 2005-03-04
  • 打赏
  • 举报
回复
小第刚接触这方面的内容,有错请海涵.
我认为实现U盘读写与文件系统关系不大.U盘控制器内并不需要有文件系统.
它的作用只是传输而已. 文件系统的功能应该是usb主机通过usb Mass storge class
驱动来完成的. 设备端只要按楼上Athlonxpx86兄的转换即可.
usb sub class code 里如SCSI primary command 里也就只有读写指令等罢了.
这应该不够一般意义上的文件系统吧.
mouse_032 2005-02-27
  • 打赏
  • 举报
回复
这个问题应该分两步的,第一步是对闪存的读写操作;第二步是实现一个文件系统(因为你要做U盘)。第一个问题相对还是比较简单的,只要按照闪存的时序要求操作就行了。第二个问题就有点麻烦了,这个你要去看看操作系统中关于文件系统的一章了。
fanoble 2005-02-26
  • 打赏
  • 举报
回复
转换层要把nandFlash 的接口屏蔽起来,对外提供一个标准的读写接口
主要的nandFlash的坏块管理
AthlonxpX86 2005-02-25
  • 打赏
  • 举报
回复
扇区还有柱面只是逻辑上的概念而且,其实你可以在算法上把所有扇区和柱面放在一平坦的内存区域里面,比如有2柱面,18扇区,每扇区512字节,那你就可以这样加假设你有18432字节连续内存区域,基地址0x0000
那你就可以这样用内存来模拟柱面和扇区
0x0000 0柱面0扇区
....... 512字节
0x0200 0柱面1扇区
.......1----17扇区
0x2400 1柱面0扇区
.......
0x2600 1柱面1扇区
.......
0x4800 硬盘模拟结束
fredson 2005-02-24
  • 打赏
  • 举报
回复
fanoble(fanoble)
请问如何做 文件转换层呢?
a66886527 2005-02-21
  • 打赏
  • 举报
回复
QQ:281870929我告诉你
netscaner 2005-02-20
  • 打赏
  • 举报
回复
请教楼上,U盘不兼容系统的文件系统,用专用的软件读写文件有什么用呢?谢谢!
netscaner 2005-02-19
  • 打赏
  • 举报
回复
这个问题就复杂了,要懂文件系统之类的东西,建议你到www.driverdevelop.com的论坛去看看
icesnows 2005-02-19
  • 打赏
  • 举报
回复
同意楼上的观点
fanoble 2005-02-19
  • 打赏
  • 举报
回复
只做一个转换层就可以吧
和文件系统没有关系

27,375

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧