CN101493803A - 实现嵌入式手持设备操作主机存储器的方法及装置 - Google Patents
实现嵌入式手持设备操作主机存储器的方法及装置 Download PDFInfo
- Publication number
- CN101493803A CN101493803A CNA2009101163043A CN200910116304A CN101493803A CN 101493803 A CN101493803 A CN 101493803A CN A2009101163043 A CNA2009101163043 A CN A2009101163043A CN 200910116304 A CN200910116304 A CN 200910116304A CN 101493803 A CN101493803 A CN 101493803A
- Authority
- CN
- China
- Prior art keywords
- equipment
- main frame
- usb
- memory operation
- embedded
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004891 communication Methods 0.000 claims abstract description 47
- 230000005540 biological transmission Effects 0.000 claims description 39
- 230000004913 activation Effects 0.000 claims description 13
- 238000010586 diagram Methods 0.000 description 10
- 238000000034 method Methods 0.000 description 10
- 230000000875 corresponding Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
Abstract
一种实现嵌入式手持设备操作主机存储器的方法及装置,自定义USB通信协议,并设置主机USB驱动程序同设备的USB驱动固件,通过主机USB驱动程序同设备的USB驱动固件之间的协同,实现嵌入式手持设备通过USB接口同主机联接后能通过USB接口控制主机上的存储器。使得手持设备操作占用空间较大而又仅仅临时使用的文件时,能够无需将此文件从主机下载到手持设备上,而且能够省去那些仅需要在设备上读取几次的非常用文件传输到设备的时间和空间。
Description
实现嵌入式手持设备操作主机存储器的方法及装置
技术领域
本发明涉及实现嵌入式手持设备操作主机上存储器的方法及装置,具体是
一种实现嵌入式手持设备通过USB接口同主机联接后通过USB接口控制主机
上的存储器的方法及装置。
背景技术
USB (Universal Serial Bus,通用串行总线)接口具有简单灵活、高带宽、易于扩展和热插拔等优点,目前已成为数码设备的标准接口之一,小到U盘、MP3,大到数码相机、打印机,USB接口的身影无处不在。当今主流的嵌入式手持设备同主机(个人电脑)的连接方式也是通过USB接口,以主机为控制主体,从主机操作手持设备上的存储器,即将手持设备的存储器作为主机(个人电脑)上附加的存储器进行文件的读写等操作。但是,手持设备并不能操作主机上的存储器,即手持设备不能主动获取主机上的信息。
可以考虑如下两种情况:第一种情况,当用户欲在手持设备上播放或运行一个大于手持设备最大存储空间的文件时,采用通常的手持设备同主机的连接方法就遇到了问题,因为无法将这个大文件复制到手持设备上,因此用户就无法在手持设备上播放或运行这个大文件。第二种情况,当用户仅仅尝试在手持设备上试听主机上的歌曲或试玩主机上的游戏,必须要将音乐文件或游戏文件下载到手持设备上,而不能在试听或试玩之后才将喜欢的音乐或游戏下载到设备上。
从以上两种情况可以看出,现有的以主机为控制主体的设备同主机的通信方式在实现上述功能时遇到了障碍。发明的内容
本发明的申请人为了解决嵌入式手持设备和个人电脑通过USB接口通讯时,手持设备不能操作主机上的存储器,不能主动获取主机上的信息的问题,进行了改进研究,提出了一种实现嵌入式手持设备操作主机存储器的方法及装置,对主机上USB驱动程序,以及嵌入式设备上USB驱动固件进行设计,通过主机驱动程序同设备的驱动固件之间的协同,实现嵌入式手持设备通过USB接口同主机联接后,通过USB接口控制主机上的存储器的功能。本发明的技术方案如下:
一种实现嵌入式手持设备操作主机存储器的方法,具体步骤如下:
1) 主机向设备发送询问,如果设备有服务需求,则将所需的请求命令发 送给主机;如果设备无服务需求,则反馈空闲状态告知主机;
2) 如果设备在主机询问后反馈空闲状态,则主机等待一定时间间隔之后 继续向设备发送询问;
3) 若设备在主机询问后发送命令请求,则主机同设备进入通信激活状态, 主机向设备发送命令查询,设备将具体的命令反馈给主机,;
4) 在通信激活状态下,设备操作主机上的存储器,主机同设备间进行大 量的数据传输;
5) 在每次请求的数据传输完成之后,主机继续向设备发送命令查询,如 果设备反馈新的命令,则进行新的数据传输;如果设备没有反馈新的命令,则 通信完成;
6) 通信一旦完成,主机和设备返回到空闲状态,主机继续以一定时间间 隔向设备发送询问。
作为进一步的技术方案:
所述主机向设备发送询问采用周期轮询的方式。
所述通信激活状态下,由主机向设备发送数据,对应主机存储器的读操作。 所述通信激活状态下,由设备向主机发送数据,对应主机存储器的写操作。 所述通信激活状态下,当完成指定大小的数据传输之后由设备向主机反馈 本次传输的信息;主机根据所述传输的信息核对传输的正确性。
一种实现嵌入式手持设备操作主机存储器的装置,包括主机以及嵌入式手 持设备,在主机上设置USB驱动程序,在嵌入式设备上设置USB驱动固件; 所述USB驱动程序,是指微软的视窗操作系统上的USB设备客户驱动软件程 序,用于支持设备操作主机存储器;所述USB驱动固件,是指在嵌入式手持 设备上控制USB控制器的软件程序,用于配合主机完成协同通信;所述USB 驱动程序和USB驱动固件采用块传输方式在主机和设备间进行通信。 在上述技术方案中:
所述轮询是指主机定期联系设备以获得有关设备服务请求以及设备状态 信息。主机联系设备的过程称为"轮询",该过程每隔定期的"轮询间隔"发 生一次。本发明的有益技术效果是:
本发明使手持设备同主机间的通信方式更为灵活,手持设备能够主动操作 主机上的存储器,将主机的存储器模拟为手持设备上的存储器。手持设备操作 主机上的存储器同操作手持设备本地存储器的方式相同,使得手持设备操作占 用空间较大而又仅仅临时使用的文件时,能够无需将此文件从主机下载到手持 设备上。
本发明不仅解决了手持设备无法操作一个大小大于设备存储器最大空间
的文件的问题(如设备的存储器空间为lGByte,而设备需要运行一个2GByte 的游戏文件),而且能够省去那些仅需要在设备上读取几次的非常用文件传输 到设备的时间和空间。使手持设备和主机间存储器的通信方式由单向控制(主 机控制设备)拓展为双向控制(设备控制主机,或主机控制设备)。
对于手持游戏设备,当它同主机(个人电脑)连接时,手持设备上不需要 存储游戏,可将占用空间较大的游戏存放在主机上,当游戏设备运行游戏时通 过USB获取主机上的游戏文件。从而使用户能够通过试玩主机上的游戏之后 再决定将感兴趣的游戏保存在手持设备上,避免了无用游戏的传输,且节约了 手持设备的存储空间。
对于手持播放设备,也同样适用。 附图说明
图l是轮询相位示意图。
图2是命令查询相位示意图。
图3是数据相位示意图。
图4是通信过程示意图。
图5是实现嵌入式手持设备操作主机存储器的装置示意框图。 具体实施方式
下面结合附图对本发明的具体实施方式做进一步说明。 以下详述本发明的原理。
实现嵌入式手持设备操作主机存储器的方法,其所有的通信过程都可以概 括为三类通信相位,分别称为:轮询相位,命令査询相位,数据相位。 图l是轮询相位示意图。
如图1所述,首先设计主机同设备间的通信协议,协议中由设备作为通信 的主体向主机发送读写文件命令。而由于USB通信协议的特点,所有的通信
6均由主机发起,因此采用周期轮询的方式由主机向设备发送询问。所述轮询是 指主机定期联系设备以获得有关设备服务请求以及设备状态信息。主机联系设 备的过程称为"轮询",该过程每隔定期的"轮询间隔"发生一次。如果设备 有服务需求则将所需的请求命令发送给主机,如设备无服务需求,则发送空闲 状态告知主机。这是通信中的第一步,称为轮询相位。
图2是命令査询相位示意图。
如图2所示,在轮询之后如果设备反馈空闲状态,则主机等待一定时间间 隔之后继续向设备发送轮询。若设备在命令轮询中发送命令请求,则主机向设 备发送命令査询请求,设备将具体的命令反馈给主机。这是通信中的第二步, 表明这时主机同设备间的连接处于激活状态,设备开始操作主机上的存储器, 称为命令查询相位。
图3是数据相位示意图。
如图3所示,查询相位之后则是命令所对应的文件数据传输。数据传输有 两个方向,其一是由主机向设备发送数据,对应主机存储器的读操作;其二是 由设备向主机发送数据,对应主机存储器的写操作。当完成指定大小的数据传 输之后由设备向主机反馈本次传输的信息(如传输的大小),主机根据所传输 的信息核对传输的正确性。这是通信中的第三步,称为数据相位。
图4是通信过程示意图。
如图4所示,主机同设备的通信过程可由上述三个相位依据时间顺序组 成。在主机和设备处于空闲状态时,主机和设备之间只有轮询的通信。当一次 轮询后设备表示有命令需要主机服务时,这时,设备和主机就进入了通信状态, 在这个状态下每次通信都是由一次命令査询和多次数据传输组成, 一次命令查 询过后在传送数据时主机不会发送其他命令查询,必须等待本次命令所请求的 数据完成之后才能进行下一个命令査询和数据传输。在通信状态下,完成一次 命令后主机继续询问设备是否还有其他命令,如无,则两者进入空闲状态,主 机继续以一定时间间隔(图中所示为10ms)向设备轮询,从而保证USB总线 的带宽的有效利用。
通过以上三类通信相位的组合,实现的嵌入式手持设备操作主机存储器的 方法,具体步骤可表示如下:
1)主机向设备发送询问,如果设备有服务需求,则将所需的请求命令发 送给主机;如果设备无服务需求,则反馈空闲状态告知主机;2) 如果设备在主机询问后反馈空闲状态,则主机等待一定时间间隔之后 继续向设备发送询问;
3) 若设备在主机询问后发送命令请求,则主机同设备进入通信激活状态, 主机向设备发送命令査询,设备将具体的命令反馈给主机,;
4) 在通信激活状态下,设备操作主机上的存储器,主机同设备间进行大 量的数据传输;
5) 在每次请求的数据传输完成之后,主机继续向设备发送命令査询,如 果设备反馈新的命令,则进行新的数据传输;如果设备没有反馈新的命令,则 通信完成;
6) 通信一旦完成,主机和设备返回到空闲状态,主机继续以一定时间间 隔向设备发送询问。
在以上通信方法的基础上,设计实现嵌入式手持设备操作主机存储器的装
置
图5是实现嵌入式手持设备操作主机存储器的装置示意框图。 如图5所示,在主机上设置USB驱动程序501,在嵌入式手持设备上设置 USB驱动固件505,通过两者之间的协同,并通过上述通信协议,实现嵌入式 手持设备操作主机存储器。所述USB驱动程序501 ,是指微软的视窗(Windows) 操作系统上的USB设备客户驱动软件程序,用于支持设备操作主机存储器。 所述USB驱动固件505,是指在嵌入式手持设备上控制USB控制器的软件程 序,用于配合主机完成协同通信。Windows USB设备桟502是指实现USB功 能的各层驱动程序的总和,它包括一系列USB驱动程序,如控制具体USB主 控制器的底层USB驱动程序、封装底层USB驱动程序的各类设备驱动(鼠标、 键盘、U盘等各类USB设备)。USB主机控制器503,是指位于主机上的USB 主控制芯片,它完成USB协议中的物理层的数据通信。USB设备控制器504, 是指位于设备上的USB从控制芯片,它配合主机控制芯片完成USB协议中的 物理层的数据通信。主机存储器虚拟接口 506,是指一种操作存储器的驱动程 序的接口规范,它同本地存储器的驱动接口相同,将复杂的USB通信协议封 装成统一的驱动接口。设备应用程序507,是指运行在设备上的应用程序,它 调用主机存储器虚拟接口函数,从而操作主机上的存储器。以上所述的 Windows USB设备栈、USB主机控制器、USB设备控制器、主机存储器虚拟 接口、设备应用程序等,均按现有技术编写。
8所述USB驱动程序501和USB驱动固件505之间采用USB标准中的块 传输方式完成主机同设备间的数据传输。图l,图2,图3所表示的三类通信 相位,其中每个相位都是通过多次块传输实现的,比如,图l所示的轮询相位 是由三次块传输组成。首先由主机向设备发送一个包含"询问"信息的数据包, 这是第一次块传输。设备收到之后向主机反馈一个数据包,表明设备之后的对 主机的服务请求,这是第二次块传输。最后再由设备发送一个状态包,表明设 备的状态,这是第三次块传输。
所述块传输,是指USB规范中所定义的一种传输模式,其他模式有:控 制传输、中断传输、实时传输。每种传输模式都对应于不同的数据传输的应用 需求。之所以采用USB传输协议中的块传输,是由于符合在文件传输中大数 据量的要求,在采用块传输时对于大数据能够更好得节约带宽。
本发明通过USB接口实现嵌入式手持设备控制主机(个人电脑)存储器,
改变了当前嵌入式手持设备同个人电脑通信的方式,使手持设备能够控制主机 上的存储器。用户能够在手持设备上操作主机上的存储器,进行音乐、视频的 播放,游戏的运行等等操作,同时大大拓展了设备能够控制的存储器空间。往 往嵌入式设备的存储器空间较小,从几兆字节到数个Giga (千兆,109)字节。 通过同主机的连接使设备能够通过USB接口操作主机上几百Giga字节的数 据,从而实现现有方法无法实现的一些功能,比如以下两例:第一,当用户欲 在手持设备上播放一个大于设备最大存储空间的文件时,无须将这个大文件复 制到手持设备上,用户可以方便的在手持设备上播放这个大文件。第二,当用 户仅仅尝试在手持设备上试听主机上的歌曲或试玩主机上的游戏,无须将音乐 文件或游戏文件下载到手持设备上,而能在试听或试玩之后才将喜欢的音乐或 游戏下载到设备上。
需要注意的是,以上所述的仅是本发明的优选实施方式,本发明不限于以 上实施例。可以理解,本领域技术人员在不脱离本发明的精神和构思的前提下 直接导出或联想到的其他改进和变化,均应认为包含在本发明的保护范围之 内。
9
Claims (6)
1.一种实现嵌入式手持设备操作主机存储器的方法,其特征在于,具体步骤如下: 1)主机向设备发送询问,如果设备有服务需求,则将所需的请求命令发送给主机;如果设备无服务需求,则反馈空闲状态告知主机; 2)如果设备在主机询问后反馈空闲状态,则主机等待一定时间间隔之后继续向设备发送询问; 3)若设备在主机询问后发送命令请求,则主机同设备进入通信激活状态,主机向设备发送命令查询,设备将具体的命令反馈给主机,; 4)在通信激活状态下,设备操作主机上的存储器,主机同设备间进行大量的数据传输; 5)在每次请求的数据传输完成之后,主机继续向设备发送命令查询,如果设备反馈新的命令,则进行新的数据传输;如果设备没有反馈新的命令,则通信完成; 6)通信一旦完成,主机和设备返回到空闲状态,主机继续以一定时间间隔向设备发送询问。
2. 根据权利要求1所述的实现嵌入式手持设备操作主机存储器的方法, 其特征在于:所述主机向设备发送询问采用周期轮询的方式。
3. 根据权利要求1所述的实现嵌入式手持设备操作主机存储器的方法, 其特征在于:所述通信激活状态下,由主机向设备发送数据,对应主机存储器 的读操作。
4. 根据权利要求1所述的实现嵌入式手持设备操作主机存储器的方法, 其特征在于:所述通信激活状态下,由设备向主机发送数据,对应主机存储器 的写操作。
5. 根据权利要求1所述的实现嵌入式手持设备操作主机存储器的方法, 其特征在于:所述通信激活状态下,当完成指定大小的数据传输之后,由设备 向主机反馈本次传输的信息,主机根据所述传输的信息核对传输的正确性。
6. —种实现嵌入式手持设备操作主机存储器的装置,包括主机以及嵌入 式手持设备,其特征在于:在主机上设置USB驱动程序,在嵌入式设备上设 置USB驱动固件;所述USB驱动程序,是指微软的视窗操作系统上的USB设备客户驱动软件程序,用于支持设备操作主机存储器;所述USB驱动固件, 是指在嵌入式手持设备上控制USB控制器的软件程序,用于配合主机完成协 同通信;所述USB驱动程序和USB驱动固件采用块传输方式在主机和设备间 进行通信。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2009101163043A CN101493803A (zh) | 2009-03-06 | 2009-03-06 | 实现嵌入式手持设备操作主机存储器的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2009101163043A CN101493803A (zh) | 2009-03-06 | 2009-03-06 | 实现嵌入式手持设备操作主机存储器的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101493803A true CN101493803A (zh) | 2009-07-29 |
Family
ID=40924408
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2009101163043A Pending CN101493803A (zh) | 2009-03-06 | 2009-03-06 | 实现嵌入式手持设备操作主机存储器的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101493803A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110297668A (zh) * | 2019-06-28 | 2019-10-01 | 无锡睿勤科技有限公司 | 系统、移动终端、控制及支持终端控制主机存储器的方法 |
-
2009
- 2009-03-06 CN CNA2009101163043A patent/CN101493803A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110297668A (zh) * | 2019-06-28 | 2019-10-01 | 无锡睿勤科技有限公司 | 系统、移动终端、控制及支持终端控制主机存储器的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1546897B1 (en) | Bus connection system | |
JP4261069B2 (ja) | Usbフラッシュメモリ装置 | |
US8856388B2 (en) | Method and apparatus for connecting USB devices to a computer | |
CN101894042B (zh) | 一种多操作系统间共享应用的实现方法、系统及移动终端 | |
CN1561489A (zh) | 计算机网络内的数据块存储 | |
JP2007172586A (ja) | コンピュータ間でコンピュータ・データを共有するための方法、装置、およびコンピュータ・プログラム | |
TWI706315B (zh) | 儲存元件 | |
JP2005276017A (ja) | ストレージシステム | |
CN102567074A (zh) | 一种面向虚拟机的usb设备重定向方法 | |
CN101840306B (zh) | VxWorks操作系统中实现驱动SATA设备的方法和系统 | |
CN1376280A (zh) | 总线系统的事务调度 | |
CN103873505A (zh) | 向云存储服务器离线上传的方法、系统与装置 | |
WO2014067325A1 (zh) | 终端设备、系统及接入虚拟桌面的方法 | |
WO2013167077A2 (zh) | Usb设备、通信系统及其工作模式切换方法 | |
US20070073824A1 (en) | Apparatus and method for acquiring identification information when a bus reset occurs | |
JP2009268044A (ja) | データ伝送ブリッジ装置とそのコントロールチップ及びデータ伝送ブリッジ方法 | |
CN100432975C (zh) | 小型计算机系统接口目标器和数据传输方法 | |
EP2726955B1 (en) | Power management module for usb devices | |
JP4258768B2 (ja) | ファイル配置システム | |
CN201839452U (zh) | 一种无线传感器网络智能网关 | |
CN100351824C (zh) | 总线系统和用于连接到总线的总线接口 | |
CN101493803A (zh) | 实现嵌入式手持设备操作主机存储器的方法及装置 | |
US20040103163A1 (en) | Serial bus disk extender and portable storage device | |
WO2008134973A1 (fr) | Procédé d'exploitation d'un équipement périphérique, équipement périphérique et hôte | |
CN1215422C (zh) | 在网络中下载基本软件的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20090729 |