新闻中心

EEPW首页>嵌入式系统>设计应用> 嵌入式系统U盘实时启动技术

嵌入式系统U盘实时启动技术

作者: 时间:2011-07-24 来源:网络 收藏
(2)初始化USBD的函数

本文引用地址://m.amcfsurvey.com/article/150438.htm

  函数usbdInitialize()初始化内部USBD数据结构,并依次调用其他USB驱动栈模块的入口。

  函数usbdlnitialize()调用usbdHcdAttach(execFunc,s1811IOCfg,pToken)把HCD连接到USBD上。这里的execFunc就是函数usbHcdSl811hExee()。

  函数usbdInitialize()调用USBEnumerate(USBD_CLIENT_HANDLE clientHandle,FILE*fout)列举所有连接到上的USB主控制器、Hub和USB设备。

  (3)初始化USB存储设备的函数

  函数usbBulkDevInit()完成USB盘的初始化并安装DOS文件

  函数usbBulkDevlnit调用函数usbdClientRegister(BULK_CLASS,usbdHandle)及函数usbdDynamicAt-tachRegister(usbdHandle,USB_CLASS_MASS_STORAGE,USB_SUBCLASS_SCSLCOMMAND_SET,USB_INTERFACE_PROTOCOL_BULK_ONLY,usbBulkDc-vAttachCallback),建立同USB的连接,注册回调例程。

  函数usbBulkDevlnit调用函数OSS_THREAI)_CRE-ATE(bulkClientThread,(pVOID) fout,OSS_PRIORITYINTERRUPT,tBulkClnt,bulkTaskId),创建一个任务,管理优盘的插入和移出。

  其中bulkCliemThread例程调用pBulkBlkDev=(BLK_DEV*)usbBulkBlkDevCreate (bulkNodeld,NULL,NULL,USB_SCSI_FLAG_READ_WRITEl0);安装USB设备。 调用pBulkDosVol=dosFsDevInit(/ud0/,pButkBlkDev,NULL);安装DOS文件

  (4)从优盘加载映像文件的函数

  设计USBDLoad(),实现映像文件VxWorks从优盘设备加载。USBDLoad()函数主要包括以下语句:

修改bootConfig.c文件中的bootLoad函数,加入对从优盘的支持。主要加入以下语句:

  重新编译、链接生成新的bootrom.hex,烧录到板子上的Flash中,将VxWorks映像文件拷贝到优盘上,将优盘插入到主机的USB接口上。在的过程中,系统会自动装载优盘的VxWorks系统映像文件,实现基于VxWorks的系统优盘

  3 总 结

  在基于MPC860和VxWorks设计的实验板上可实现嵌入式系统从优盘的启动。当然,在实际应用中还可以将嵌入式系统采集到的数据保存到优盘上,这样能方便地实现嵌入式设备和PC机设备资源的共享。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)

上一页 1 2 下一页

评论


相关推荐

技术专区

关闭