当前位置: 首页 > 专利查询>柴可专利>正文

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

技术编号:6128641 阅读:182 留言:0更新日期:2012-04-11 18:40
本发明专利技术实施例提出了一种基于USB磁盘的设备间通信的电路及方法。通过对“CLIENT”客户机端USB磁盘硬件接口及相关驱动程序的修改,实现“CLIENT”客户机端在本地USB磁盘的存储空间上的数据文件变动后,“CLIENT”客户机端可以强制通知“HOST”主机端设备接收,从而实现“CLIENT”客户机端设备与“HOST”主机端设备之间在兼容标准的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磁盘连接步骤 C17本文档来自技高网...

【技术保护点】
1.一种基于USB磁盘的设备间通信的电路及方法,其特征在于包括:对USB磁盘设备的“CLIENT”客户机端接口电路进行修改,使之在正常的USB磁盘设备连接状态下,可编程强制改变其USB“D+”端口的属性及状态。从而实现在“CLIENT”客户机端操纵及控制该“CLIENT”客户机端与“HOST”主机端的USB磁盘设备连接状态。

【技术特征摘要】

【专利技术属性】
技术研发人员:柴可
申请(专利权)人:柴可
类型:发明
国别省市:81

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1