一种基于usb磁盘的设备间通信的电路及方法

文档序号:6357705阅读:127来源:国知局
专利名称:一种基于usb磁盘的设备间通信的电路及方法
技术领域
本发明实施例主要涉及嵌入式计算机技术应用领域,特别是在嵌入式计算机硬件环境下利用虚拟USB磁盘及FAT文件系统实现嵌入式设备与嵌入式设备之间,嵌入式设备与上位机间相互通信的电路及方法。
背景技术
目前,USB磁盘被广泛使用,几乎所有的计算机操作系统均内含USB磁盘驱动程序。因此如果采用USB磁盘接口及通信协议结合通用的文件系统传输协议,实现嵌入式设备与嵌入式设备之间、嵌入式设备与上位机间基于数据文件相互交换的双向通信,可以避免设备间由于操作系统版本不同、应用程序不同从而导致需要对应安装相应的驱动程序或通信协议,实现良好的互配性,将会给用户在使用上带来极大的方便。但是由于在标准的 USB磁盘接口及通信协议中,USB磁盘接口分为“HOST”主机端和“CLIENT”客户机端,USB 磁盘的存储空间被映射在“CLIENT”客户机端。“HOST”主机端可以采用文件下载的方式,通过标准的USB磁盘接口及通信协议方便地改变位于“CLIENT”客户机端USB磁盘的存储空间上的数据,实现从“HOST”主机端到“CLIENT”客户机端的数据传送。而“CLIENT”客户机端由于受到标准的USB磁盘通信协议以及操作系统中磁盘数据缓存管理机制的限制,本地 USB磁盘的存储空间上的数据改变无法及时地通知“HOST”主机端。导致无法利用USB磁盘接口及通信协议来实现“CLIENT”客户机端设备与“HOST”主机端设备之间的相互通信。

发明内容
有鉴于此,本发明实施例提出了一种基于USB磁盘的设备间相互通信的电路及方法。通过对“CLIENT”客户机端USB磁盘硬件接口电路及相关驱动程序的修改,实现 “CLIENT”客户机端在本地USB磁盘的存储空间上的数据文件变动后,“CLIENT”客户机端可以强制通知“HOST”主机端设备接收,从而实现“CLIENT”客户机端设备与“HOST”主机端设备之间在兼容标准的USB磁盘接口及通信协议的前提下的相互通信。本发明实施例解决其技术问题所采用的技术方案是修改“CLIENT”客户机端USB磁盘硬件接口电路及相关驱动程序,令其在“CLIENT” 客户机端设备将准备传输给“HOST”主机端设备的有关数据按磁盘文件系统规定格式存放在本地USB磁盘的存储空间上后,在“CLIENT”客户机端设备启动下述操作如果本地的“CLIENT”客户机端USB硬件接口设备的“D+”端口不能在线即时定义成GPIO输出状态的情况下,修改本地的“CLIENT”客户机端USB硬件接口设备的相关电路,将一个“CLIENT”客户机端处理器的GPIO脚定义为输出控制信号,将另一个GPIO脚定义为低电平输出脚,与原“CLIENT”客户机端USB “D+”端口通过双向多路器的切换,形成新的USB端口 “D+”端口。平时通过该客户机端的输出控制信号将新的USB端口 “D+”端口与原USB “D+”端口接通,不影响原USB “D+”端口的正常工作。此时通过该客户机端的输出控制信号将新的USB端口 “D+”端口与低电平输出GPIO接通,强迫该端口输出低电平。
如果本地的“CLIENT”客户机端USB硬件接口设备的“D+”可以被在线即时定义成 GPIO输出状态的情况下,则上述步骤被简化为将本地的“CLIENT”客户机端USB硬件接口设备的“D+”端口在线即时定义成GPIO输出端,并且令该端口输出为低电位,使得本地的 “ CLIENT,,客户机端USB硬件接口设备的“D+ ”端口输出为低电位。维持本地的“ CLIENT ”客户机端USB硬件接口设备的“D+ ”端口输出低电平20毫秒以上。根据标准的USB磁盘接口及通信协议中的有关约定,“HOST”主机端设备检测到正在与其连接的“CLIENT”客户机端USB “D+”端口输出为恒定低电平时,会视为“CLIENT”客户机被强制撤离,“HOST”主机端磁盘接口程序将关闭对应的磁盘缓存区,退出与该“CLIENT” 客户机端的USB磁盘连接状态,进入空闲状态。重新设置本地的“CLIENT”客户机端USB硬件接口,使其USB硬件接口的“D+”端口输出状态恢复正常USB通信状态。此时该“D+”端口会呈现高电平上拉输出。根据标准的 USB磁盘接口及通信协议中的有关约定,如果“HOST”主机端设备在空闲状态下检测到连接到“CLIENT”客户机端的USB “D+”端口输出变为高电平时,会视为“CLIENT”客户机端重新接入USB磁盘,此时“HOST”主机端程序将重新开始进行相关的USB磁盘加载过程,并重新把更新后的USB磁盘数据(FAT表、根目录等)读入磁盘缓存区。而“HOST”主机端可以通过检查存放在“CLIENT”客户机端USB磁盘空间中预先约定的文件属性(文件名、扩展名、 修改时间等等)所发生的更新和变动,即时对新的USB磁盘数据文件进行上传读入,从而完成“CLIENT”客户机端设备对“HOST”主机端设备的主动数据传输。本发明实施例的有益效果是,通过对“CLIENT”客户机端USB磁盘接口的硬件和软件程序进行改动,在兼容标准的USB磁盘接口及通信协议的前提下,实现USB磁盘“CLIENT” 客户机设备与“HOST”主机端设备之间基于数据文件操作的相互通信。


为了更进清楚的说明本发明实施例的技术方案,下面将对实施例中描述中所需要使用的附图做简要介绍。图1示出了本发明实施例的“CLIENT”客户机端硬件电路修改示意图。图2示出了本发明实施例的执行方法流程图。
具体实施例方式“HOST”主机端设备对“CLIENT”客户机端设备的下行数据传输流程按照标准的 USB磁盘接口及通信协议方式不变。图2示出了 “CLIENT”客户机端设备对“HOST”主机端设备的上行数据传输方式流程示意图100。在图2中,首先本地的“CLIENT”客户机端与“HOST”主机端硬件连接并分别通过软件协议完成设备初始化步骤Clio步骤H110和建立USB磁盘连接步骤C120步骤H120。上传数据传输开始时,本地的“CLIENT”客户机端将准备传送的数据文件,以磁盘文件的形式,按照约定格式存放到本地的USB磁盘的存储空间中步骤C130。然后将本地的“CLIENT”客户机端USB硬件接口设备的“D+”端口强制定义转换成为恒定低电平输出状态,并延时保持20毫秒以上步骤C140。根据标准的USB磁盘接口及通信协议中的有关约定,“HOST”主机端设备检测到正在与其连接的“CLIENT”客户机端USB “D+”端口输出为恒定低电平时,会视为“CLIENT”客户机被强制撤离,“HOST”主机端磁盘接口程序将关闭对应的磁盘缓存区,退出与该“CLIENT”客户机端的USB磁盘连接状态进入空闲状态步骤 H130。接着设置本地的“CLIENT”客户机端USB硬件接口设备的“D+”端口恢复为正常工作状态步骤C150。此时该“D+”端口会呈现上拉高电平输出。根据标准的USB磁盘接口及通信协议中的有关约定,“HOST”主机端设备在空闲状态下检测到连接到“CLIENT”客户机端的USB “D+”端口输出变为高电位时,会视为“CLIENT”客户机重新接入,此时“HOST”主机端程序将重新开始进行设备初始化步骤C160步骤H140和建立USB磁盘连接步骤 C170步骤H150等一系列的USB磁盘加载过程,并重新把更新后的USB磁盘数据(FAT 表、根目录等)读入磁盘缓存区。而“HOST”主机端可以通过检查存放在“CLIENT”客户机端USB磁盘空间中预先约定的文件属性(文件名、扩展名、修改时间等等)所发生的更新和变动,即时对新的USB磁盘数据文件进行上传读入步骤H160。从而完成本地的“CLIENT” 客户机端设备对“HOST”主机端设备的主动数据传输。上述说明为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则内,所作的任何修改、替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种基于USB磁盘的设备间通信的电路及方法,其特征在于包括对USB磁盘设备的“CLIENT”客户机端接口电路进行修改,使之在正常的USB磁盘设备连接状态下,可编程强制改变其USB “D+”端口的属性及状态。从而实现在“CLIENT”客户机端操纵及控制该“CLIENT”客户机端与“HOST”主机端的USB磁盘设备连接状态。
2.根据权利要求1所述的基于USB磁盘的设备间通信的电路及方法,其特征在于还包括USB磁盘设备的“CLIENT”客户机端程序可以通过相关电路,强制其USB “D+”端口进入恒定低电平输出状态,从而使该“CLIENT”客户机端退出与“HOST”主机端的USB磁盘设备连接状态。
3.根据权利要求1所述的基于USB磁盘的设备间通信的电路及方法,其特征在于还包括USB磁盘设备的“CLIENT”客户机端程序可以通过相关电路,强制其USB “D+”端口从恒定低电平输出状态恢复到正常的USB通信状态,从而使“HOST”主机端的USB磁盘设备重新与该“CLIENT”客户机端USB磁盘设备恢复建立正常连接连接状态。
4.根据权利要求1所述的基于USB磁盘的设备间通信的电路及方法,其特征在于还包括“HOST”主机端的应用程序,可以通过检查存放在“CLIENT”客户机端USB磁盘空间中预先约定的文件属性(文件名、扩展名、修改时间等等)所发生的更新和变动,即时对新的USB 磁盘数据文件进行上传读入,从而完成“CLIENT”客户机端设备对“HOST”主机端设备的主动数据传输。
全文摘要
本发明实施例提出了一种基于USB磁盘的设备间通信的电路及方法。通过对“CLIENT”客户机端USB磁盘硬件接口及相关驱动程序的修改,实现“CLIENT”客户机端在本地USB磁盘的存储空间上的数据文件变动后,“CLIENT”客户机端可以强制通知“HOST”主机端设备接收,从而实现“CLIENT”客户机端设备与“HOST”主机端设备之间在兼容标准的USB磁盘接口及通信协议的前提下的相互通信。
文档编号G06F13/38GK102169469SQ20111008693
公开日2011年8月31日 申请日期2011年4月7日 优先权日2011年4月7日
发明者柴可 申请人:柴可
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1