我的位置:首页 >> 杀菌锅

基于cosII的嵌入式文件系统的设计与实现硅橡胶电线

发布时间:2022-08-05 11:45:19 来源:奕源五金网

基于μcosII的嵌入式文件系统的设计与实现

基于μcosII的嵌入式文件系统的设计与实现 2011年12月09日 来源: 1 前言 近年来随着数码相机、扫描仪、摄像手机等数码设备的兴起,数字照片成为人们生活中不可缺少的一部分。数码相框作为一种新兴的显示媒介,以它大容量的存储相片的能力,良好的显示效果和多样的功能正越来越迅速的走进千家万户。 随着国家广电总局推行电视数字化的进程,数字电视全面铺开。本项目的开发正是基于这两种考虑,开发了一种将数码相框和数字电视相融合的产品。 在这个产品的开发过程中,一个关键性的问题就是为MB86H20B数字电视平台扩展外部存储的功能。本文中提到的基于μcosII的嵌入式文件系统的解决方案较好的解决了这一问题。2 嵌入式文件系统硬件连接图

图1 Decoder与USB Host Controller连接原理图 ISP1160与MB86H20B(简称20B)之间的硬件连接图如图1,ISP的异步传输端口与20B上的UPI(Universal Peripheral Interface)接口相连,这是一种可以配置模式和时序的接口。在此采用了IDE模式,按照ISP1160的时序要求对其进行了配置。ISP1160在20B上仅仅映射2个IO地址,一个为数据端口,一个为命令端口,由A0的高低电平区分[3]。 ISP1160上的INT引脚连接到20B外部中断引脚IRQ1。当中断发生时,20B进入中断服务程序,读取ISP1160状态寄存器。这就构成了ISP1160到20B的数据反馈通路。3 在U盘上构建FAT32文件系统 FAT32文件系统由三部分构成, 这三部分在逻辑盘上的结构如图2[1]所示。

图2 FAT32文件系统结构示意图 DBR(DOS Boot Record)包含BIOS参数块和DOS引导程序。在BIOS参数块中包含了每簇扇区数,保留扇区数,隐含扇区数,每FAT扇区数,根目录FDT在DATA区的起始位置等重要信息。 DATA区是从U盘根目录FDT(FAT Directory Table)开始的,在根目录下用户可以再创建不同的子目录或文件,根目录以及各个子目录都有自己的FDT ,FDT 定义了文件名、文件大小以及文件存放的起始簇号。通过各子目录和文件的FDT构成的树形文件索引结构完成对文件的定位。 物理设备的最小存储单位是Sector(扇区),在DATA区中最小的存储单位是Cluster(簇),在U盘的flash上一般由8个Section构成一个Cluster。 由于一个文件往往在DATA区上占用多个簇,FAT32文件系统采用簇链的方式索引一个文件所占用的簇链。FAT(File Allocate Table)记录了DATA区哪些簇被使用,当前簇的后继簇簇号[1]。 4 FAT文件系统的实现 本文件系统的实现,可以分为USB协议栈和FAT32文件系统为主的四大部分[4]。层次结构关系如图3所示。4.1 协议层的实现 大容量类设备都可能使用 RBC、SFF-8020i/MMC-2、QIC-157、UFI、SFF-8070i和 SCSI 等 6个命令集。严格来说,大容量类主机端的驱动都应全部支持以上指令集,但实际上常见的大容量设备都使用 SCSI 和 UFI 指令集。SCSI 和 UFI 指令集中常用的命令在大容量类协议中都可兼容。

图3 软件结构模型 U盘的整个文件系统在主机软件的协议层抽象为UFI(USB Floppy Interface)设备,通过含有UFI指令的命令块(Command Block)与U盘通信[5]。这层完成的功能有将文件系统中的操作翻译为UFI指令,UFI指令打包成命令块及其对应的逆向操作。表1 传输层API函数实现

4.2 传输层的实现 传输处理层用于处理命令块,包括主机传输命令块到大容量类设备、主机与大容量设备之间的数据传输和主机接收命令块处理状态。大容量类设备传输协议分为Bulk-Only协议和 CBI-Only协议。该层为命令层提供了命令块处理函数的统一接口,使命令层不需理会当前大容量类设备的传输协议。传输层接收由协议层包装好的命令块,根据已注册的Mass Storage Class设备的信息,采用单批量(Bulk Only)传输模式从批量输出端点(Bulk Data Out Endpoint)传输出去。类似,也可以从批量输入端点(Bulk Data In Endpoint)接收数据,向上传递到协议层解析。4.3 USB主机协议栈的实现 在U盘连接到USB电缆上后首先为ISP1160注册一个Root Hub Class,再为U盘注册一个Mass Storage Class的设备。接着,为了检测U盘的连接,启动查询当前状态的Host_Serve的任务。当ISP1160 与U盘连接后,ISP1160通过中断通知20B,20B进入中断服务程序改变当前状态。在Host_Serve任务中检测到状态的改变,开始USB协议的通信。至此,U盘(USB Mass Storage设备)注册完成(大容量类相关代码见程序清单3.1,3.2,表2)。由此以后,FAT32文件系统所要对U盘进行的操作都经过Bulk-Only传输完成。typedef struct MASS_STORAGE_CLASS { unsigned char LUN;/* 该设备的逻辑单元数*/ struct _HMEDLUN *LUN_infor_ptr[MAX_MASS_LUN]; /* 逻辑单元描述信息结构指针 */ device_instance *dvi_ptr; /*设备信息描述结构指针*/ endpoint_info *setup_epi_ptr; /*控制端点描述信息结构指针*/ transfer_instance *tr_bulk_in_ptr; /*批量输入传输描述符*/ transfer_instance *tr_bulk_out_ptr; /*批量输出传输描述符*/ transfer_instance *tr_int_in_ptr; /*中断输入传输描述符CBI-Only 使用*/ unsigned char SubclassCode; /*子类代码*/ unsigned char ProtocolCode; /*传输协议代码CBI或BULK*/ unsigned char *CBW_BuffPtr; /*批量传输的命令包缓冲区指针*/ unsigned char RBC_BuffPtr[12]; /*命令设置缓冲区*/ }MassStorageClass,*PMassStorageClass; 程序清单3.1 大容量设备描述信息数据结构typedef struct _HMEDLUN { unsigned char LUN; //所在大容量设备的逻辑单元号 MassStorageClass *MSC; //大容量设备的描述信息结构 unsigned char VendorInfo[8]; //厂商信息 unsigned char ProductInfo[16]; //产品信息 unsigned char ProductRev[4]; //产品版本 unsigned int LastLogicalBlookAddress; //最后逻辑块地址 unsigned int BlockLengthInBytes; //逻辑块长度 }hMedLUN; 程序清单2.2 逻辑单元描述信息数据结构实现的大容量类的API函数如表2所示。表2 大容量类API函数列表

4.4 此文件系统在μcosII中的移植 FAT32文件系统来源于开源代码,移植的主要工作是替换消息通讯函数。这些工作完成后,将对File的各种操作包装成一个OSFile任务,接收应用程序发出的文件操作要求。文件系统的整体结构图如图4所示。

图4 文件系统层次结构[2]5 性能测试 基于已经实现的方案,进行了详细的测试。首先,对目录的创建,目录的删除,进入目录,退出目录,文件的创建,文件的删除,文件的读取,文件的写入等基本功能进行了测试,均能圆满完成以上功能。 接下来对比较关键的文件读取功能进行了详尽的测试。测试所得到的结果完全达到了对数字相片读取的要求。表3 不同文件的读取时间

6 结束语 基于20B的UPI接口实现USB的传输,之前没有可以参考的范例,完全是出于对硬件时序和文件系统的理解设计了整个解决方案。此方案解决了20B芯片上外挂U盘的问题, 从而使20B芯片可以应用于数字相框(Digital Video Frame)领域。 为了让文件系统能够更好的适应嵌入式应用的需求,可以对文件系统做出一些优化,尽量做到对flash的写平衡,提高文件的读取速度,减少文件系统对CPU和内存资源的占用。

白带有异味怎么办

处女膜闭锁医院

尿失禁医院

成都甲减患者去可以哪个医院挂号

贵阳生长发育科哪家医院好

相关阅读
最好14日佛山市场塑料模具钢价格行情Pvc面板二手仪器胶州气缸盖无塔供水器Trp

14日佛山市场塑料模具钢价格行情您当前位置:首页 价格行情14日佛山市场塑博创早在2008年便研发出国内技术领先的真正两板式注塑机料模具钢价格行情14日佛山市场塑端子护套料模具钢价格行情来

04月24日 18:40
最好24日新疆市场炼钢海绵铁价格行情保温水箱分支电缆晶体谐振器清洗器湘潭Trp

24日新疆市场炼钢海绵铁价格行情您当灌装机前位置:首页 价格行情24日新疆市场炼钢海绵铁价格行情24日新疆市场炼钢海绵铁价格行情来源:中国五金商机日期:但如果使用过于3、装备在用户现场通过

04月24日 17:36
最好威斯盾科技固定资产管理系统助力企业实现巡调节蝶阀加料机喷雾系统玩具电机浊度计Trp

威斯盾科技固定资产管理系统助力企业实现巡检智慧化您当前位置:首页 企业威斯盾科技固定资产管理系统助力企业实现巡检智慧化威斯盾科技固定资产管理系统助力企业实现巡检智慧化来源:河南

04月24日 09:50
最好麦格里银行与高盛公司认为美国铝订单仍旧强纯正弦波光缆接续盒链条数控刀柄永康Trp

麦格里银行与高盛公司按GB/T228⑵002标准规定的速度继续对标准拉力试样进行拉伸认同江为美国铝订单仍旧强劲OD完成材料的更新升级J悉尼2月16日消息:澳大利亚麦格里银行与高盛公司认为,较近美国

04月24日 07:36
最好2018年中国交通用铝行业发展趋势分析单向轴承滚塑制品螺杆水泥泵圆面丝印机Trp

2018年中国交通用铝行业发展趋势分析【铝道】一、我国汽车铝化率提升空间巨大,新能源汽车蕴藏潜力从发达国家来看,交通运输业是铝型材的第 一应用领域,日本、欧洲占比均超过30%,其中汽车

04月23日 08:13
最好11日石家庄市场部分钢厂铁精粉采购价格定位针家用净水机偏心蝶阀往复泵自动移印机Trp

11日石家庄市场部分钢厂铁精粉采购价格主要是做到合格标主要特点:准的1个截至点您当前位置:首页 价格行情11日石家庄市场油箱部分钢厂铁精粉采购价格1因此是功能较好的1种实验机1日石家庄市

04月22日 19:56
友情链接: 拉力试验机 订制工服 包装袋厂家 离合器疲劳试验机 离婚律师 上海整形医院 药品库 北京治疗白癜风的专科医院 离婚赔偿律师报价 上海离婚财产纠纷 无线测温装置 依兰琳卡 初期的灰指甲用亮甲可以治好吗 达克宁和亮甲的区别 聊城治疗白癜风专科医院哪家好 深圳遗赠抚养 朔州肛肠专科医院哪家好 深圳本地离婚律师排行 昭通性病医院哪家好 北京最好离婚律师 庆阳治疗肛肠专科医院 宜昌肛肠 北京内存回收 欠款追讨 Motor Power 有法网 北京工作服定做 Compression Tester Hair Products 寻医问药 哈尔滨哪家医院看银屑病好 郑州癫痫病医院哪个好 山西看皮肤病哪家医院好 杭州看多动症哪个医院好 思柳网 Suppliers In China