电子设备的信号接口自动识别方法
【技术领域】
本发明涉及一种电子设备的信号接口自动识别方法,特别是关于一种用于连接外围设备与计算机主机系统的USB/PS2接口的自动识别方法。
【背景技术】
随着计算机技术的快速发展,越来越多的电子设备可以通过相同或者不同的接口与计算机主机系统相连接而实现数据的流通和处理。例如,作为主机系统的输入设备的键盘和鼠标,主要是通过USB(Universal Serial Bus,通用串行总线)接口或者PS2(Personal System/2,IBM开发的个人系统接口)接口与主机相连接。PS2接口长期以来曾是连接键盘/鼠标与计算机主机的一个基本标准,但在Intel公司开发出支持热插拨功能的USB总线架构后,近年来USB接口被广泛用于连接键盘、鼠标、打印机、移动存储装置、数码相机等外围设备,作为一种可供多种外围设备共用的接口,USB接口已经成为诸多外围设备及计算机主机系统的常设接口。对于兼容USB/PS2等多种接口的外围设备来说,其必须具有自动识别接口的功能,以便采用相应的通讯协议实现与主机的连接。
USB和PS2接口具有不同的数据传输模式,USB接口是通过一对差分的数字信号在外围设备与主机系统之间进行数据传输,而PS2是通过数据信号和时钟信号在外围设备和主机系统之间进行数据传输,因此,二者的硬件和软件要求各不相同。在美国专利第6,460,094B1号公开的“可检测其自身所连接的接口类型的外围设备”的专利文献中,揭示了USB和PS2接口架构,如图1A、图1B和图2所示。其中,图1A所示的USB接口用于12Mbps的高速外围设备,图1B所示USB接口用于1.5Mbps的低速外围设备。在图1A和图1B中,USB设备100、120分别通过两根导线104、106连接至USB连接器112,再通过导线108、110连接至USB接口102,进而与计算机20的主处理器21相连接。导线104、106所传送的信号在USB设备中分别被标记为D+、D-,信号D+、D-是差分数字数据信号。在高速USB设备中,D+信号被上拉电阻114拉到大约3.3V的逻辑高电位(如VCC),而在低速USB设备中,D-信号被上拉电阻122拉到逻辑高电位。在USB接口102中,导线108、110中的信号D+、D-分别被两个下拉电阻116、118将逻辑电位下拉至低电平。
USB外围设备连接后,信号D+或D-被拉高,主机发现此高电平信号后知道有设备连接上,发出10MS的低电平信号复位外围设备,完成后给出第一条命令及按照相应的BIOS等设置来进行下一步配置至正常工作模式。
图2显示了外围设备124通过PS2接口126与计算机20相连接的架构,外围设备124通过两根导线104、106连接至PS2连接器128,经导线108、110连接至PS2接口126进而与主处理器21连接。导线104、108对应于数据信号,导线106、110对应于时钟信号,导线104、106分别连接到晶体管131、133,它们被设置为由外围设备124的微处理器控制的集电极开路开关或漏极开路开关。在PS2外围设备124中,导线104、106所传送的信号分别由电阻130、132拉到逻辑高电平。在PS2接口126中,导线108、110所传送的信号分别被电阻134、136拉到逻辑高电平,并分别利用晶体管138、140耦合接地。在PS2接口中,时钟信号不管数据线上数据的传输方向如何,始终由外围设备提供。
PS2外围设备连接通电后先发出自检包(0xAA),主机看到此自检包后知道有设备连接上,然后按照相应的BIOS等设置来进行下一步配置至正常工作模式。
上述美国专利第6,460,094B1号提出的USB/PS2接口识别方法,是依据两根信号线的电位来进行判断识别接口类型。但这种方式属于一次性判断方法,一旦信号在判断过程中受到噪音干扰可能会引起误断,而且这种误判不可恢复。因此该识别方法还需要进一步改进和完善。
因此,开发一种准确无误码判的USB/PS2接口自动识别技术,从而使外围设备能够自动兼容USB/PS2两种接口,确为电子产业所期待。
【发明内容】
本发明的目的之一在于提供一种USB/PS2接口的自动识别方法,可准确无误地自动识别外围设备的USB和PS2接口,并自动设置相应地的接口模式从而使外围设备能够兼容USB和PS2接口两种接口模式。
本发明的目的之二在于提供一种电子设备的信号接口自动识别方法,可准确无误地自动识别计算机主机系统的外围设备接口类型,并自动设置相应的接口模式,从而使外围设备能够兼容多种不同类型的接口。
本发明的目的之一是通过以下技术方案实现的:一种USB/PS2接口的自动识别方法,适用于兼容USB与PS2接口的外围设备和具有USB与PS2接口的主机系统,其中USB与PS2接口分别具有第一信号导线和第二信号导线,外围设备的信号模式包含上电模式、USB模式和PS2模式,其特征在于,该方法包括:
(1)上电过程,外围设备被插接到主机系统的USB或者PS2接口上,系统进入上电复位状态,外围设备的信号模式为上电模式;
(2)预判断过程,外围设备判断主机接口处的第一信号导线和第二信号导线的电位,如果其中信号导线之一或全部的电位为高,则初步判断所连接的是PS2接口,外围设备的信号模式被设置为PS2模式,进入预PS2状态;否则外围设备的信号模式被设置为USB模式,进入预USB状态;
(3)确认判断过程,包括:
在预PS2状态下,外围设备等待主机系统发送第一条命令:如果发现第一、二信号导线上出现USB接口的特征,则外围设备转入到预USB状态;否则在收到主机发送的第一条命令后进入PS2状态;
在预USB状态下,外围设备等待主机系统发送第一条命令:如果发现第一、二信号导线上出现PS2接口的特征,则外围设备转入到预PS2状态;否则在收到主机发送的第一条命令后进入USB状态;
(4)锁定状态过程,将经过确认判断过程判断无误的USB状态或PS2状态锁定,外围设备通过USB模式或PS2模式与主机系统连接。
本发明的目的之二是通过以下技术方案实现的:一种电子设备的信号接口自动识别方法,适用于兼容至少第一类接口与第二类接口的外围设备与至少具有一第一类接口和一第二接口的主机系统,其中,第一、二类接口分别包含有第一信号导线和第二信号导线,该外围设备的信号模式至少包含上电模式、第一类模式和第二类模式,该方法包括:
(1)上电过程,外围设备被插接至主机系统的第一类接口或第二类接口中,上电启动后系统进入复位状态,外围设备的信号模式为上电模式;
(2)预判断过程,外围设备对主机系统的第一或二类接口中的第一、二信号导线的电位进行检测判断,如果其中有一根信号导线的电位为高,则初步判断所连接的接口为第一类接口,设置外围设备的信号模式为第一类模式,外围设备进入预第一类接口状态;否则,设置外围设备的信号模式为第二类模式,外围设备进入预第二类接口状态;
(3)确认判断过程,包括:
在预第一类接口状态下,外围设备等待主机系统发送第一条命令:如果发现第一、二信号导线上出现第二类接口的特征,则外围设备转入到预第二类接口状态,否则在收到主机发送的第一条命令后进入第一类接口状态;
在预第二类接口状态下,外围设备等待主机系统发送第一条命令:如果发现第一、二信号导线上出现第一类接口的特征,则外围设备转入到预第一类接口状态,否则在收到主机发送的第一条命令后进入第二类接口状态;
(4)锁定过程,将经过确认判断过程判断无误的第一类接口状态或第二类接口状态锁定。
本发明提出的接口自动识别方法通过预判断、错误则自动跳转的确认判断、收到相应的通信指令后锁定状态等过程,来自动识别外围设备所连接的接口类型。例如,本发明用于自动识别USB/PS2接口时,因为USB与PS2的通信指令是完全不同的,所以一旦锁定,则说明判断已无误,且在锁定状态之前,通过灵活的自动跳转机制来确保整个判断的正常、正确进行。因此,本发明可以实现准确、无误判的接口自动识别效果,有效防止因信号干扰而作出错误判断。
【附图说明】
图1A是常规的高速USB外围设备与计算机的USB接口的连接架构图。
图1B是常规的低速USB外围设备与计算机的USB接口的连接架构图。
图2是常规的PS2外围设备与计算机的PS2接口的连接架构图。
图3是本发明的USB/PS2接口的自动识别方法的流程图。
【具体实施方式】
如前文“背景技术”部分所述并参阅美国专利第6,460,094B1号的相关内容可知,USB和PS2这两种接口方式无论是这传输协议还是电气特性方面,其区别是很明显的,但也存在物理及使用方式方面的共性。因此,只要判断方式合理,兼容两种接口方式的外围设备集成到一起是可实现的。
本发明即提供一种可靠性高、不会误判的接口类型自动识别方法,适用于兼容至少第一类接口与第二类接口的外围设备与至少具有一第一类接口和一第二接口的主机系统,其中,第一、二类接口分别包含有第一信号导线(L1)和第二信号导线(L2),该外围设备的信号模式至少包含上电模式、第一类模式和第二类模式;该方法包括:(1)上电过程,外围设备被插接至主机系统的第一类接口或第二类接口中,上电启动后系统进入复位状态,外围设备的信号模式为上电模式;(2)预判断过程,外围设备对主机系统的第一或二类接口中的L1、L2的电位进行检测判断,如果其中有一根信号导线的电位为高,则初步判断所连接的接口为第一类接口,设置外围设备的信号模式为第一类模式,外围设备进入预第一类接口状态;否则,设置外围设备的信号模式为第二类模式,外围设备进入预第二类接口状态;(3)确认判断过程,包括:在预第一类接口状态下,外围设备等待主机系统发送第一条命令:如果发现L1、L2上出现第二类接口的特征,则外围设备转入到预第二类接口状态,否则在收到主机发送的第一条命令后进入第一类接口状态;在预第二类接口状态下,外围设备等待主机系统发送第一条命令:如果发现L1、L2上出现第一类接口的特征,则外围设备转入到预第一类接口状态,否则在收到主机发送的第一条命令后进入第二类接口状态;(4)锁定过程,将经过确认判断过程判断无误的第一类接口状态或第二类接口状态锁定。
外围设备利用本发明可以准确识别其所连接的主机接口类型,从而实现兼容不同类型接口的集成式设计。以下即以USB/PS2接口的自动识别方法为例,详细说明本发明的具体实施方式。
请参阅图3并配合图1A、图1B及图2参照,需要首先明确的是,在判断过程中为方便起见,USB接口上的D+和PS2接口上的时钟导线称为L1,USB接口上的D-和PS2接口上的数据导线称为L2。另外,外围设备还设有一个模式信号MODE,其定义如下:
以下详细描述本发明识期别方法的实施过程。
过程1,外围设备被插到计算机主机的USB或者PS2接口上,系统进入上电复位状态,完成复位后进入过程2。在过程1中,外围设备的信号模式MODE为11,即表示当前外围设备被置于上电(POWER UP)状态。
过程2,由于外围设备刚上电,主机系统可能还在复位状态,因此设定先等100毫秒左右,以等待系统稳定。此时,外置设备的状态不变化,其信号模式MODE为11。下一步进入过程3。
过程3,外围设备判断主机接口处的L1、L2的电位。其中,在过程301中,外围设备判断L1的电位,如L1电位为高,则可初步判断是所连接的主机接口是PS2接口,设置外围设备的信号模式MODE为01,进入预PS2模式,下一步进入过程5;否则,进入过程302以判断L2的电位,如果L2的电位为高,则可初步判断是所连接的主机接口是PS2接口,设置外围设备的信号模式MODE为01,进入预PS2模式,下一步进入过程5;否则,可初步判断所连接的主机接口中USB接口,设置外围设备的信号模式MODE为10,进入预USB模式,下一步进入过程4。
过程4和过程6,在预USB模式下,在外围设备中有上拉电阻(如图1A、图1B中上拉电阻114、122)拉高L 1或L2的电位,此时系统处于USB模式下,等待USB主机发送第一条命令。在过程6中,可能会出现三种情形:
(1)如果外围设备发现主机接口中的L1、L2上出现PS2的特征,例如L1和L2两根线都为高电位,则立即跳转到过程5,外围设备进入预PS2模式。
(2)如前述过程3判断无误,则收到USB主机发送来第一条指令后,外围设备进入过程8,即实USB状态。
(3)如果没有出现上述两种情形,则外围设备保持在预USB模式不变,返回到过程4。
过程5和过程7,在预PS2模式下,外置设备中的上拉电阻(如图2中的上拉电阻130、132)处于被禁止状态,此时没有上拉电阻拉高L1或L2,系统处于PS2模式。在过程7中,可能出现的情形包括:
(1)如果外围设备发现主机接口中的L1、L2上出现USB的特征,例如L1、L2两根线都为低电平超过两个时钟周期,则立即跳转到过程4,外围设备进入预USB模式。
(2)如果前述过程3判断无误,则收到PS2主机发送来第一条指令后,外围设备进入过程9,即实PS2状态。
(3)如果没有出现上述两种情况,则外围设备保持在PS2状态不变,返回到过程5。
过程8,进入实USB状态,判断完成,外围设备锁定信号模式MODE为10,即USB模式。
过程9,进入实PS2状态,判断完成,外围设备锁定信号模式MODE为01,即PS2模式。
本发明的接口自动识别方法通过预判断、错误则自动跳转、收到相应的通信指令后锁定状态等过程,来自动识别外围设备所连接的接口类型,因为USB与PS2的通信指令是完全不同的,所以一旦锁定,则说明判断已无误,且在锁定状态之前,通过灵活的自动跳转机制来确保整个判断的正常、正确进行。因此,本发明提供了一种非常准确、无误判的USB/PS2接口自动识别方法。
容易理解,本发明的技术方案并不局限于自动识别USB/PS2接口,依据本发明提出的“预判断
错误则自动跳转
收到相应的通信指令
锁定状态”的原理,本领域的一般技术人员容易想到本发明亦可用于自动识别其他类型的接口,例如用于自动识别VGA接口与DVI接口、HDMI接口与DVI接口等。因此,本领域的一般技术人员依照本发明的技术方案,对其中的某一或多项技术特征进行等效替换或者省略等而作出的改进和变化,均应涵盖在本发明专利的权利要求范围内。