关 闭

新闻中心

EEPW首页>工控自动化>设计应用> MCF51JM128的类U盘方式在线编程设计

MCF51JM128的类U盘方式在线编程设计

作者: 时间:2009-07-09 来源:网络 收藏

2.1.3 SCSI命令集的实现
SCSI有3种字长的命令:6字节、10字节和12字节。Microsoft Windows环境支持12字节的命令。SCSI命令集包含了对多种存储设备的操作命令,对U盘而言,并不是所有的SCSI命令都要进行应答和处理,实际用到的SCSI命令如表1所列。

2.2 FAT16文件系统的实现
当开发板插入USB总线并枚举成功后,USB主机会发送前面提到的SCSI命令。若这些命令的返回结果正确,主机接下来进入文件识别阶段;如果文件系统信息出错,则会导致USB总线复位,通信中止。
本设计中采用的是FAT16文件系统。FAT即“文件分配表”,是用来记录存储器中文件所在位置的表格,一旦文件分配表丢失,存储器中的数据就会因为无法定位而不能使用。FAT16文件系统的磁盘可以分为保留区、FAT区、根目录区和数据区。其中保留区的第1个扇区称为引导扇区,包含对文件系统进行识别的关键信息;FAT区用来存放文件分配表,由于FAT表非常重要,所以通常在FAT区之后有1个相同内容的备份;根目录区中存放目录项,每个目录项为32字节,记录1个文件或目录的信息;在根目录区之后的数据区便是真正意义上的存放文件数据或目录的位置,占据了存储器大部分数据空间。
本设计功能相对固定,无需实现与普通U盘同样复杂的文件系统,如文件存储、动态创建/删除等功能都可以省略,在实现功能的同时也节省了代码空间。笔者利用常量数组定义了引导扇区、FAT区和根目录区。
操作系统按簇来分配磁盘空间,FAT表是一一对应数据区簇号的列表,反映了所有簇的使用情况。FAT区结构如表2所列。在设计FAT区的数组时,笔者采取了简化措施,由于无需在Flash中存储目标S19文件和磁盘信息,所以仅仅设置了FAT表数组的表项O和表项1,其余表项做清零处理。

结 语
是集成了USB主机、设备和OTG功能的新款MCU,适合数据采集、数据交换等多个领域,是一款集成度非常高的芯片。利用其集成 USB模块的特点实现的类U盘方式在线编程系统时,提高了在线编程系统的平台适应性,提高了易用性,降低了在线编程系统的开发成本。开发其他任何带有 USB模块的MCU的在线编程系统时,都可借鉴本方法。同时,也可将本方法扩展到各种基于USB的编程器中,如笔者拟开发的基于的 Freescale 56F8xxx系列DSP编程器。


上一页 1 2 下一页

关键词:MCF12851JM

评论


相关推荐

技术专区

关闭