CN104317417A - 一种键鼠平滑切换的方法、装置及*** - Google Patents

一种键鼠平滑切换的方法、装置及*** Download PDF

Info

Publication number
CN104317417A
CN104317417A CN201410539381.0A CN201410539381A CN104317417A CN 104317417 A CN104317417 A CN 104317417A CN 201410539381 A CN201410539381 A CN 201410539381A CN 104317417 A CN104317417 A CN 104317417A
Authority
CN
China
Prior art keywords
switch
key
information
key information
circuit
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.)
Granted
Application number
CN201410539381.0A
Other languages
English (en)
Other versions
CN104317417B (zh
Inventor
赵辉
刘雅喆
张丹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bohai University
Original Assignee
Bohai University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Bohai University filed Critical Bohai University
Priority to CN201410539381.0A priority Critical patent/CN104317417B/zh
Publication of CN104317417A publication Critical patent/CN104317417A/zh
Application granted granted Critical
Publication of CN104317417B publication Critical patent/CN104317417B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Input From Keyboards Or The Like (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明实施例提供了一种键鼠平滑切换方法、装置及***,涉及计算机技术领域,可以实现键鼠的智能平滑切换,且成本低,易扩展。所述方法包括:当前终端PC截获用户的按键信息,同时,切换器接收用户的按键信息,并识别按键信息是否为有效的切换快捷键,若是,则将切换快捷键对应的ID号存储在缓存单元内;当前终端PC分析按键信息是否为有效的切换快捷键,若是,则停止截获下一个按键信息,并将切换快捷键对应的ID号携带在反馈信息中发送到切换器;切换器接收到反馈信息后,将按键信息与反馈信息中的ID号进行对比,若两个ID号相同,则进行切换动作,将鼠标和键盘的USB信号切换到所述切换快捷键对应的ID号所标识的终端PC上。

Description

一种键鼠平滑切换的方法、装置及***
技术领域
本发明涉及计算机技术领域,尤其涉及一种键鼠平滑切换方法、装置及***。
背景技术
随着信息化在当今社会的全面推进,各行各业对计算机的需求以及由计算机帮助人们处理的问题越来越多的情况下,使人们从繁杂的手工操作中解放出来,大大提高了工作效率,节省出更多的时间处理其他的事情。
目前,在工业生产中,通常在控制室里需要一人控制多台计算机,并且这些计算机都是各自独立分别配置鼠标和键盘,并且这些计算机都是在一个工作台面上,鼠标键盘也都摆放在共同台面上,因此我们可以想象,当操作人员需要控制另一台计算机时就会因为忘记或者台面键鼠较多,导致要操作另一台计算机时出现混乱的情况,而且整个台面也看着不整洁,没有空间摆放其他办公设备如,打印机或者电话等。因此,综上所述,有必要开发一种设备使得对于多计算机操作人员能够很自然的切换到需要控制的计算机中,不需要频发转换位置,而且也可以避免前述出现的问题。
多接口键鼠平滑切换器技术一直是实际生活生产中需要迫切解决的技术难题,目前国内外相关技术人员和众多研究机构都在致力平滑切换设备的研究。由于要解决键鼠切换过程中过程中一出现硬件重连,切换过程不平滑这些问题,目前的切换设备一般都采用设计手动按钮结构,每次需要切换时都要事先按一下该切换设备上的按钮才可以装换到另外一台设备上,过程不具备智能性。
发明内容
本发明的实施例提供一种键鼠平滑切换方法及切换器,可以实现键鼠的智能平滑切换,且成本低,易扩展。
为达到上述目的,本发明的实施例采用如下技术方案:
一种键鼠平滑切换方法,包括:
当前终端PC截获用户的按键信息,同时,切换器接收用户的所述按键信息,并识别所述按键信息是否为有效的切换快捷键,若是,则将所述切换快捷键对应的ID号存储在缓存单元内;
所述当前终端PC分析所述按键信息是否为有效的切换快捷键,若是,则停止截获下一个按键信息,并将所述切换快捷键对应的ID号携带在反馈信息中发送到所述切换器;
所述切换器接收到所述反馈信息后,将所述按键信息与所述反馈信息中的ID号进行对比,若两个ID号相同,则进行切换动作,将鼠标和键盘的USB信号切换到所述切换快捷键对应的ID号所标识的终端PC上。
一种切换器,包括:
多个输出接口,用于分别连接各个终端PC上的鼠标USB接口和键盘USB接口;
两个输入接口,用于连接键盘和鼠标;
共享及反馈电路,用于接收用户输入的按键信息,并对所述按键信息进行过滤;
决策模块,用于接收所述共享及反馈电路发送的过滤后的按键信息,并识别所述按键信息是否是否为有效的切换快捷键,若是将所述切换快捷键对应的ID号存储在缓存单元内;
所述共享及反馈电路,还用于接收当前终端PC发送的包含有ID号的反馈信息,并对所述反馈信息进行过滤;
所述决策模块,还用于接收所述共享及反馈电路发送的过滤后的反馈信息,并比对所述缓存单元中的ID号和所述反馈信息的ID号,若一致,则向平滑切换电路发送切换命令;
平滑切换电路,用于根据所述决策模块发送的切换命令,将鼠标和键盘的USB信号以平滑的形式切换到所述ID号对应的终端PC上;
基本功能电路,包括电源分压电路,振荡电路及单片机复位电路。
一种终端PC,包括:
按键信息拦截模块,用于截获从所述切换器发送过来的按键信息;
识别模块,用于识别按键信息是否为有效的切换快捷键,若是,则停止截获下一个按键信息,并识别出所述切换快捷键对应的ID号;
通信模块,用于向所述切换器发送携带有所述ID号的反馈信息。
一种***,包括:上述的切换器,上述的终端PC以及一套键盘和鼠标。
上述技术方案提供的键鼠平滑切换方法、装置及***,能够进行一套键鼠同时控制多***立运行的计算机,免除了因为多台计算机配备的多套键鼠摆放桌面杂乱以及操作不便且成本高的不利之处。本设计采用的TS3USB221芯片内部自带功能,相当于再切换动作的前后瞬间,由芯片内部产生一个积分过渡信号,该信号最小值不会超过USB驱动信号的最小值,这样就避免了因为USB电压过低而在PC机的右下角不断弹出“发现新硬件”设备连接相关提示信息,这本身也是对计算机的硬件保护。另外,通过采用软硬家交互信息方式时本质上采用的是信息反馈控制方式,避免了因为USB信号单向传递而没有反馈验证造成的不可靠性,造成切换混乱等情况。因此,利用软硬件交互可以提高***的鲁棒性。并本发明具成本低易于扩展和智能性的特点。
附图说明
图1为本发明实施例提供的一种键鼠平滑切换方法的流程示意图;
图2为本发明实施例提供的一种切换器的结构框图;
图3为本发明实施例提供的一种切换器输入输出接口的网络拓扑结构示意图;
图4为本发明实施例提供的一种切换器的共享及反馈电路示意图;
图5为本发明实施例提供的一种切换器的决策模块与平滑切换电路部分的电路示意图;
图6为本发明实施例提供的一种切换器的基本功能电路中的电源分压电路示意图;
图7为本发明实施例提供的一种切换器的基本功能电路中的振荡电路及单片机复位电路的示意图;
图8为本发明实施例提供的一种鼠键切换***的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种键鼠平滑切换方法,如图1所示,所述方法包括以下步骤:
101、当前终端PC截获用户的按键信息,同时,切换器接收用户的所述按键信息。
用户应用键盘和鼠标,通过切换器的信息传输,向终端PC输入按键信息。当前终端PC中的切换专用软件会不断截获用户的按键信息,同时,切换器也不断接收用户的所述按键信息。
102、切换器识别所述按键信息是否为有效的切换快捷键,若是,则将所述切换快捷键对应的ID号存储在缓存单元内。
切换快捷键及其对应的标识终端PC的ID号为预设在切换器和终端PC内的,切换器可以识别所述按键信息是否为有效的切换快捷键,并在识别出是的情况下,将所述切换快捷键对应的ID号存储在缓存单元内
103、所述当前终端PC分析所述按键信息是否为有效的切换快捷键,若是,则停止截获下一个按键信息,并将所述切换快捷键对应的ID号携带在反馈信息中发送到所述切换器。
当前终端PC接收到按键信息后,也会分析所述按键信息是否为有效的切换快捷键。
104、所述切换器接收到所述反馈信息后,将所述按键信息与所述反馈信息中的ID号进行对比,若两个ID号相同,则进行切换动作。
105、所述切换器将鼠标和键盘的USB信号切换到所述切换快捷键对应的ID号所标识的终端PC上。
本发明实施例还提供了一种切换器,如图2所示,所述切换器包括:两个输入接口1和多个输出接口2,共享及反馈电路3,决策模块4,平滑切换电路5,基本功能电路6。
其中,多个输出接口1,用于分别连接各个终端PC上的鼠标USB接口和键盘USB接口。两个输入接口2,用于连接键盘和鼠标。
可选的,这些接口采用金字塔结构的USB口拓展形式,依次将在前一级TS3USB221拓展出来的两个USB口后端分别再次连接一个TS3USB221,共连接N个TS3USB221,这样就可以获得1个输入接口以及对应的2N个输出接口。
如图3所示,假设有4个终端PC,USBConnector_KEY表示与键盘连接的USB接口,同时为了拓展该USB接口,本设计采用了TS3USB221芯片作为1进2出USB拓展切换芯片;同时为了再次拓展更多的USB接口,这样可以连接到更多的客户端PC上。所以,设计中将在前一级TS3USB221拓展出来的两个USB口后端分别再次连接一个TS3USB221,如图3中所示,这样从顶级USBConnector_KEY经过两级拓展后可以获得1进4出的USB键盘接口;其中,1个输入的USB接口用于连接键盘,4个输出的USB接口用于连接4个终端PC上的键盘USB接口。同理,可以将与鼠标相连的接口USB Connector_MOUSE类似的上述USBConnector_KEY一样经过两级拓展后获得1进4出USB鼠标接口。其中,1个输入的USB接口用于连接鼠标,4个输出的USB接口用于连接4个终端PC上的鼠标USB接口。当然,如果有N个终端PC,也可以根据具体需要拓展出更多的1进N出USB接口。
共享及反馈电路3,用于接收用户输入的按键信息,并对所述按键信息进行过滤,还用于接收当前终端PC发送的包含有ID号的反馈信息,并对所述反馈信息进行过滤。
共享及反馈电路用于键盘输入的USB端和与PC相连接的切换器输出端对应的USB接口,通过共享键盘信号,目的是使得决策模块能够知道当前按键信息,为切换器做出切换决定提供先前依据,同时结合终端PC应用程序反馈给决策模块的反馈信息作为切换决定的反馈依据,两者结合共同作为实现切换动作的决策参考信息,决策模块将会在后面介绍。在共享及反馈电路接收到的信息中需要考虑噪声对信号的影响,因此在这一部分为每条信号线都设计了LC滤波电路。如图4所示。图4中左边部分信号连接到决策模块的PB0和PB1引脚,用于共享前端键盘输入信息,决策模块中的STM32利用USB驱动程序以中断的方式识别按键值。同样,也利用USB驱动程序以中断的方式接收来自终端PC应用程序发来的信息值。
决策模块4,用于接收所述共享及反馈电路发送的过滤后的按键信息,并识别所述按键信息是否是否为有效的切换快捷键,若是将所述切换快捷键对应的ID号存储在缓存单元内;所述决策模块4,还用于接收所述共享及反馈电路发送的过滤后的反馈信息,并比对所述缓存单元中的ID号和所述反馈信息的ID号,若一致,则向平滑切换电路发送切换命令;平滑切换电路5,用于根据所述决策模块4发送的切换命令,将鼠标和键盘的USB信号以平滑的形式切换到所述ID号对应的终端PC上。
决策模块4与平滑切换电路5这一部分的电路如图5所示,其主要功能是实现USB信号走向切换控制,本发明中采用的是AD公司的1进2出USB信号切换芯片TS3USB221,发明中考虑到能够实现一套键盘和鼠标能够在多台终端设备中频繁切换使用,所以,采用利用该芯片设计成两级网络拓扑结构,即由前级TS3USB221芯片输出可转换的两个USB接口,然后在分别以前TS3USB221的两个USB输出端为下级TS3USB221的输入端口,这样就可以扩展出四个USB转切口,也就是说利用多级设计方式实现了1进4出的设计。当然,可以根据实际需要,扩展到第三级TS3USB221,实现1进8出的设计,甚至更多级。
本发明以键盘所对应的USB接口为例进行说明,S_Key_B,OE_Key_B分别表示前级TS3USB221的切换方向和切换使能控制端,S_Key_B-1,S_Key_B-2,OE_Key_B_1,和OE_Key_B_2分别表示后级TS3USB221-A-1和TS3USB221-A-2的切换方向和切换使能控制端,连接到决策块中控制芯片STM32的引脚上;设计中信号DM_Key,DP_Key,分别表示USB的数据信号线,为前级TS3USB221-A的USB数据输入端信号;假设决策模块当前获取切换ID号为1号终端USB Connector_Key1接口,则决策模块将立即执行USB路由导向切换动作。
假设路由走向为J3->J4->J6;切换过程中,STM32首先分别向前级S_Key_B和后级S_Key_B-1信号端输出信号,选择信号走向;规定当信号S_Key_B和S_Key_B-1分别为0时,切换到J3->J4->J6,然后STM32分别向OE_Key_B和OE_Key_B_1端发送使能信号,前后级TS3USB221同时执行切换动作。TS3USB221芯片在执行切换动作时,会很平滑的将信号转换到另外一个USB通道上,TS3USB221芯片内部可以保证在切换期间USB的电流电压保持原有的连续状态,因TS3USB221芯片内部已做好相关补偿。
但是,在一些比较特殊的情况下,如果单纯依靠共享前端键盘的按键信息,作为决策模块做出切换动作的唯一依据是不可靠的。由于存在不可预见的干扰等会使得决策模块做出错误动作,使得用户在使用过程中无故的切换到别的客户端PC,这种情况是不被允许的,因此为了保证每次切换动作的准确性,本发明又增加了与终端应用程序的通信功能。
根据图4可以知道,左边为键盘前端信息共享回路,这里不再赘述。右边为与终端应用程序通信的接口,根据终端应用程序中按键识别分析程序窗口的工作内容,图4中右边部分,将按键识别分析程序窗口发来的按键信息反馈到决策模块相应的I/O口,然后,决策模块接收该信息即ID号后将其与键盘前端共享信息作比对,如果信息一致,则说明本次不存在误操作,接下来决策块将会向USB切换电路发出切换指令,直到完成一次操作为止。
基本功能电路,包括电源分压电路,振荡电路及单片机复位电路。基本功能电路完成电源分压,振荡电路及单片机复位电路基础服务功能。如图6所示,为电源分压电路,电源分压电路采用芯片LP2985A-33DBV,实现将5V电压转换成VCC=3.3V电压输出,作为切换芯片和stm32单片机的输入电源。其中USB_VIN是从USB端输入的5V电压。芯片引脚3ON/端作为芯片启动信号使能端,低电平有效,本发明中直接与地相连。如图7所示为振荡电路及复位电路,所述振荡电路及复位电路STM32单片机正常工作的两大必要功能部分,振荡电路分为两个部分,其中一个为备用;NRST为单片机复位信号,可以通过按键S1手动复位。
本发明实施例还提供了一种终端PC,所述终端PC包括:
按键信息拦截模块,用于截获从所述切换器发送过来的按键信息。
识别模块,用于识别按键信息是否为有效的切换快捷键,若是,则停止截获下一个按键信息,并识别出所述切换快捷键对应的ID号。
通信模块,用于向所述切换器发送携带有所述ID号的反馈信息。
终端PC中应用软件来实现上述的各种功能。该软件的开发主要分为两大部分,这两部分都是基于VB语言开发的,包括USB驱动程序和按键识别分析程序窗口。USB驱动完成终端专用程序与切换器进行检测和通信功能;按键识别分析程序窗口主要用于实现键盘按键的信息拦截,识别,然后根据按键类型分析所属按键对应的功能,本申请中主要是用于识别用户需要切换到的终端PCID按键,然后向切换器通过USB发送反馈信息,切换器在收到反馈信息后判断是否进行切换;该窗口同时还具有用户交互功能,即运行改程序窗口后,会要求用户为每个PC终端设置一个切换快捷键,可以是单键也可以是组合键,目的是使得用户能用根据自己的使用习惯进行快速操作,同时也能通过设置专用的切换快捷键避免和***的其他快捷键相冲突。
终端程序会在用户的操作下在后台最小化运行,并以查询形式监视USB接口下的键盘动作,一旦有按键按下就会及时启动主程序。
本申请应用VB语言编制Windows下检测USB设备应用程序时,使用Win32API函数与Windows***下的HID方式的USB设备驱动会话;在VB中对API函数调用时,主要通过VB提供的API浏览工具实现程序复制的。相应的API函数找到后,再对函数的声明进行符合本设计的修改,才可以才VB中使用其强大的功能。
终端软件程序设计步骤包括检测和通信两部分,各部分设计步骤概述如下:
利用VB调用API函数实现USB设备的检测流程如下:
首先,获取HID类的USB键盘的标识符GUID;
此时通过调用API函数HidD_getHidGuid()获得设备标识符GUID,此时不对函数进一步操作,而是将其作为下一次调用API函数时的一个参数适用。
其次,应用程序获取USB键盘的设备信息数组;
此时要先声明一个函数,用于在Windows中进行设备管理,VB语言下声明的该函数如下:Public Declare FunctionStepDiGetClassDevs Lib”setupapi.dll”AliasSetupDiGetDevsA(ByRef ClassGuid As GUID),ByVal Enumerator AsString,ByVal handParent As Long,ByVal Flags As Long)As Long。该函数用于返回USB设备(键盘)的信息。
再次,应用程序检测和识别USB键盘的设备接口;
此时调用API函数DeEnumDeviceInterfaces,目的是在此时能够获取上一步骤中函数返回的地址指针,找到本设计中USB键盘的正确接口位置。
最后,调用程序获取USB键盘的路径名;
经过上面三个步骤以后,这时就需要调用函数SetDiGetDeviceInterfaceDetail函数,用该函数可以返回USB键盘的路径名称,使得基于VB开发的应用程序可以和本设计中的切换器接口设备实现通信功能。
设计中经过上述几大步骤,可以轻松地获取USB键盘的路径信息,利用这些信息作为Windows判断设备是否被检测到,这种在Windows***下调用的API函数方法可以非常简单和方便的实现。
实现USB设备检测功能后,还应该使本的设计中的专用程序能够和本设计中的USB设备进行正常的数据交换,即实现通信功能。
过程如下:
首先,获取操作USB键盘接口的操作句柄;
由于前述检测USB设备过程已经确定了连接状态,此时调用API函数CreateFile开放应用程序与USB设备的通信通道。该函数可以打开被访问设备,实现和设备的访问功能,当需要关闭访问该USB设备时只需要调用函数CloseHandle即可释放所占用的***资源。
其次,利用本设计的应用程序向被打开的USB设备写数据;
此时只要调用API函数WriteFile,但前提先把要写入的数据写入到缓存里才可以执行写入操作。
再次,应用程序从被打开的USB设备中读取数据;
此时只要调用API函数ReadFile,同时将获取的数据放到一个足够大的缓存空间保存起来;需要注意的是在使用该函数的时候要防止***不响应应用程序的要求,失去USB数据读取功能。所以,在本设计中将函数ReadFile放在独立的进程中完成读USB功能。
最后,应用程序实现关闭与USB接口设备的通信功能。
通信结束后,需要应用程序关闭和USB设备的联系,以释放***资源。调用API函数CloseHandle可以实现该功能。
完成上述四个步骤即可以实现应用程序对USB的通信功能。
按键识别方法、分析和程序窗口设计
该部分完成读USB键盘输入信息的分析和识别作用,当应用程序完成对USB键盘的检测和通信连接后,利用键盘识别程序对按键信息进行分析和对比,监视按键信息是否与手动设置的切换指令信息相匹配,如果匹配则开始则停止拦截和检测键盘信息,转入与切换器装置的写操作程序,即将切换信息的ID告知切换器。
在用户PC终端,需要额外即时的检测用户键盘的按键情况,使得切换装置能够在第一时间了解到用户的意图。
按键拦截方法如下:
应用三个事件KeyPress(),KeyDown和KeyUp:
在KeyPress()事件里,当用户按下和松开一个ANSI键时发生(ANSI是可见ASCII字符1-127)。KeyPress事件语法包含下列部分:
部分描述object一个对象表达式,其值是"应用于"列表中的一个对象。
index一个整数,它用来唯一标识一个在控件数组中的控件(仅有控件数组时才有)。
keyascii是返回一个标准数字ANSI键代码的整数。Keyascii通过引用传递,对它进行改变可给对象。发送一个不同的字符。将keyascii改变为0时可取消击键,这样一来对象便接收不到字符KeyPress事件可以引用任何可打印的键盘字符,一个来自标准字母表的字符或少数几个特殊字符之一的字符与CTRL键的组合,以及ENTER或BACKSPACE键。KeyPress()事件过程能够非常有效的截取TextBox或ComboBox控件所输入的击键。它可立即测试击键的有效性或在字符输入时对其进行格式处理。
改变keyascii参数的值会改变所显示的字符。可使用下列表达式将keyascii参数转变为一个字符:Chr(KeyAscii),然后执行字符串操作,并将该字符反译成一个控件可通过该表达式解释的ANSI数字,KeyAscii=Asc(char)。
在KeyPress()处理不了的功能可以由KeyDown()和KeyUp()事件来处理:
Private Sub object_KeyDown([index As Integer,]keycode AsInteger,shift As Integer)
Private Sub object_KeyUp([index As Integer,]keycode AsInteger,shift As Integer)
KeyDown和KeyUp事件包括下列部分:
object一个对象表达式,其值是"应用于"列表中的一个对象。
index是一个整数,它用来唯一标识一个在控件数组中的控件(仅有控件数组时才有)。
keycode是一个键代码,诸如vbKeyF1(F1键)或vbKeyHome(HOME键)。
shift是在该事件发生时响应SHIFT,CTRL和ALT键的状态的一个整数。shift、CTRL、ALT键在这些位分别对应于值1、2和4。例如:如果CTRL和ALT这两个键都被按下,则shift的值为6。
上述按键拦截完成后得到的按键值即可用来作为数据发送给切换器的决策部分,用来与切换器自从USB截取的按键相对比。
窗口设计内容有:与用户交互的信息输入框。此处要求用户依次输入每台终端PC切换ID时使用的快捷键;同时,在每个ID后面还设计了一个显示此时键盘和鼠标所在的位置指示状态,键盘和鼠标被切换到那台终端PC,则对应的ID后的指示状态就会点亮,否则为暗色。
本发明实施例还提供了一种***,如图8所示,所述***包括上述的切换器,键盘、鼠标以及若干终端PC。
示例的,如图8所示,假设共有3台终端PC,从图8中我们可以知道,工作台面共有三台终端PC即1号计算机、2号计算机和3号计算机,一套键盘和鼠标,并且键盘和鼠标被分别连接在本发明设计的切换器的2个输入接口上。所述切换器共有6个输出接口,其中连接键盘的输入接口对应的3个输出接口,用于连接3台终端PC的键盘USB接口,连接鼠标的输入接口对应的3个输出接口,用于连接3台终端PC的键盘USB接口。
3台终端PC为设置好的,运行上述软件的终端PC,每个终端PC上安装和运行利用VB语言开发的为切换器专用终端软件程序。在弹出的对话框内分别设置每个PC机所对应的ID,以及该ID号所对应的切换快捷键;按下“完成”按钮可以确定设置完成,“取消”按钮则取消全部设置,此时若要重新设置,则只有关闭应用程序界面,再次对对话框内容进行设置。完成每个PC终端机的软件安装和快捷键设置后,可以点选最小化应用程序进入后台自动运行状态。
连接好本***并将3台设置好的终端PC开机后,整个切换过程为:当前终端PC的切换专用模块截获用户的按键信息,同时,切换器接收用户的所述按键信息,并识别所述按键信息是否是否为有效的切换快捷键,若是,则将所述切换快捷键对应的ID号存储在缓存单元内;所述当前终端PC的切换专用模块分析所述按键信息是否为有效的切换快捷键,若是,则停止截获下一个按键信息,并将所述切换快捷键对应的ID号携带在反馈信息中发送到所述切换器;所述切换器接收到所述反馈信息后,将其保存到指定缓存单元;并将所述按键信息与所述反馈信息中的ID号进行对比,若两个ID号相同,则进行切换动作,将鼠标和键盘的USB信号切换到所述切换快捷键对应的ID号所标识的终端PC上。
本***应用一套键盘鼠标同时控制台面上的三台终端PC,很明显本发明不仅使得工作台面更加整洁,而且也减少了不必要的设备投入,给操作者提供了更加便捷的操作空间和切换方式。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (7)

1.一种键鼠平滑切换方法,其特征在于,包括:
当前终端PC截获用户的按键信息,同时,切换器接收用户的所述按键信息,并识别所述按键信息是否为有效的切换快捷键,若是,则将所述切换快捷键对应的ID号存储在缓存单元内;
所述当前终端PC分析所述按键信息是否为有效的切换快捷键,若是,则停止截获下一个按键信息,并将所述切换快捷键对应的ID号携带在反馈信息中发送到所述切换器;
所述切换器接收到所述反馈信息后,将所述按键信息与所述反馈信息中的ID号进行对比,若两个ID号相同,则进行切换动作,将鼠标和键盘的USB信号切换到所述切换快捷键对应的ID号所标识的终端PC上。
2.一种切换器,其特征在于,包括:
多个输出接口,用于分别连接各个终端PC上的鼠标USB接口和键盘USB接口;
两个输入接口,用于连接键盘和鼠标;
共享及反馈电路,用于接收用户输入的按键信息,并对所述按键信息进行过滤;
决策模块,用于接收所述共享及反馈电路发送的过滤后的按键信息,并识别所述按键信息是否是否为有效的切换快捷键,若是将所述切换快捷键对应的ID号存储在缓存单元内;
所述共享及反馈电路,还用于接收当前终端PC发送的包含有ID号的反馈信息,并对所述反馈信息进行过滤;
所述决策模块,还用于接收所述共享及反馈电路发送的过滤后的反馈信息,并比对所述缓存单元中的ID号和所述反馈信息的ID号,若一致,则向平滑切换电路发送切换命令;
平滑切换电路,用于根据所述决策模块发送的切换命令,将鼠标和键盘的USB信号以平滑的形式切换到所述ID号对应的终端PC上;
基本功能电路,包括电源分压电路,振荡电路及单片机复位电路。
3.根据权利要求2所述的切换器,其特征在于,所述2个输入接口和所述多个输出接口的结构,包括:
依次将在前一级TS3USB221拓展出来的两个USB口后端分别再次连接一个TS3USB221,共连接N个TS3USB221,获得1个输入接口,2N个输出接口。
4.根据权利要求2所述的切换器,其特征在于,所述共享及反馈电路中包含有LC滤波电路,用于对接收到的信号进行滤波处理。
5.根据权利要求2所述的切换器,其特征在于,所述决策模块包括stm32单片机;
所述电源分压电路采用芯片LP2985A-33DBV,实现将5V电压转换成VCC=3.3V电压输出,作为平滑切换电路和stm32单片机的输入电源;所述振荡电路及单片机复位电路为stm32单片机正常工作的两大必要功能部分,所述振荡电路分为两个部分,其中一个为备用。
6.一种终端PC,其特征在于,包括:
按键信息拦截模块,用于截获从所述切换器发送过来的按键信息;
识别模块,用于识别按键信息是否为有效的切换快捷键,若是,则停止截获下一个按键信息,并识别出所述切换快捷键对应的ID号;
通信模块,用于向所述切换器发送携带有所述ID号的反馈信息。
7.一种***,其特征在于,包括:权利要求2-5任一项所述的切换器,所述权利要求6所述的终端PC以及一套键盘和鼠标。
CN201410539381.0A 2014-10-14 2014-10-14 一种键鼠平滑切换的方法、装置及*** Expired - Fee Related CN104317417B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410539381.0A CN104317417B (zh) 2014-10-14 2014-10-14 一种键鼠平滑切换的方法、装置及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410539381.0A CN104317417B (zh) 2014-10-14 2014-10-14 一种键鼠平滑切换的方法、装置及***

Publications (2)

Publication Number Publication Date
CN104317417A true CN104317417A (zh) 2015-01-28
CN104317417B CN104317417B (zh) 2017-11-03

Family

ID=52372656

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410539381.0A Expired - Fee Related CN104317417B (zh) 2014-10-14 2014-10-14 一种键鼠平滑切换的方法、装置及***

Country Status (1)

Country Link
CN (1) CN104317417B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105117223A (zh) * 2015-08-20 2015-12-02 广东欧珀移动通信有限公司 输入事件的处理方法和***
CN106444983A (zh) * 2016-09-05 2017-02-22 努比亚技术有限公司 实现电脑外接功能的装置及方法
CN108874166A (zh) * 2018-06-15 2018-11-23 西安微电子技术研究所 一种基于fpga和ps2协议的kvm控制器
US11126524B2 (en) 2019-09-03 2021-09-21 International Business Machines Corporation Configuration of key-mapping
CN114327100A (zh) * 2018-11-30 2022-04-12 国网山东省电力公司莱西市供电公司 一种电力调度员专用外设
CN114553935A (zh) * 2021-12-24 2022-05-27 龙芯中科(西安)科技有限公司 一种设备切换方法、装置、电子设备及存储介质
CN114721529A (zh) * 2022-03-30 2022-07-08 高忠旺 基于人工智能的软件兼容控制方法、***及云平台

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101382846B (zh) * 2007-09-06 2011-08-31 宏正自动科技股份有限公司 鼠标及其控制方法
US7774518B2 (en) * 2007-09-19 2010-08-10 Aten International Co., Ltd. Method for switching of KVM switch ports and related device
US20090164675A1 (en) * 2007-12-24 2009-06-25 Aten International Co., Ltd. Kvm switch with a remote control incorporating a memory card adapter
US20100060571A1 (en) * 2008-09-10 2010-03-11 Aten International Co., Ltd. Kvm switch using a touch screen
US7917674B2 (en) * 2008-10-21 2011-03-29 Aten International Co., Ltd. KVM switch with PIP functions using remote desktop sharing technique
US8195853B2 (en) * 2009-02-19 2012-06-05 Aten International Co., Ltd. Keyboard-video-monitor-periphery (KVMP) switch
US8671235B2 (en) * 2011-05-05 2014-03-11 Aten International Co., Ltd. KVM switch with embedded bluetooth module

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105117223A (zh) * 2015-08-20 2015-12-02 广东欧珀移动通信有限公司 输入事件的处理方法和***
CN105117223B (zh) * 2015-08-20 2018-11-27 广东欧珀移动通信有限公司 输入事件的处理方法和***
CN106444983A (zh) * 2016-09-05 2017-02-22 努比亚技术有限公司 实现电脑外接功能的装置及方法
CN108874166A (zh) * 2018-06-15 2018-11-23 西安微电子技术研究所 一种基于fpga和ps2协议的kvm控制器
CN108874166B (zh) * 2018-06-15 2021-08-03 西安微电子技术研究所 一种基于fpga和ps2协议的kvm控制器
CN114327100A (zh) * 2018-11-30 2022-04-12 国网山东省电力公司莱西市供电公司 一种电力调度员专用外设
CN114327100B (zh) * 2018-11-30 2024-04-12 国网山东省电力公司莱西市供电公司 一种电力调度员专用键盘、鼠标
US11126524B2 (en) 2019-09-03 2021-09-21 International Business Machines Corporation Configuration of key-mapping
CN114553935A (zh) * 2021-12-24 2022-05-27 龙芯中科(西安)科技有限公司 一种设备切换方法、装置、电子设备及存储介质
CN114721529A (zh) * 2022-03-30 2022-07-08 高忠旺 基于人工智能的软件兼容控制方法、***及云平台

Also Published As

Publication number Publication date
CN104317417B (zh) 2017-11-03

Similar Documents

Publication Publication Date Title
CN104317417A (zh) 一种键鼠平滑切换的方法、装置及***
CN100451930C (zh) 键盘-屏幕-鼠标切换器
CN104598134B (zh) 一种移动终端的指纹操作方法及***
CN101354614B (zh) 资源共享装置以及其控制方法
CN103324317A (zh) 通过按键复用完成多种功能操作的鼠标及其控制方法
CN102929425B (zh) 一种触摸按键控制方法及装置
CN101996031A (zh) 具有触摸输入功能的电子装置及其触摸输入方法
CN103778079A (zh) 可共用usb装置的双操作***体系结构及共用方法
CN101510125A (zh) 一种通过蓝牙实现手机控制计算机键盘鼠标操作的方法
CN106445182B (zh) 适用于双机环境的键鼠屏幕安全切换与隔离方法
CN103257829A (zh) 一种Android下前后切换最近任务的终端控制***与方法
CN101452413B (zh) 笔记型计算机键盘接口的自动检测***及其方法
CN1960276B (zh) 远程控制***及方法
CN101452403A (zh) 拖拽支持方法和装置
CN111866254B (zh) 一种智能识别划词的快速拨号***及其实施方法
CN101339458A (zh) “一机多工作站”计算机***及其配置方法、USB Hub盒
CN104125328A (zh) 一种消息处理方法、装置及移动终端
CN105389260A (zh) Bios调试***及方法
CN104346048A (zh) 全屏输入模式下交互的方法和装置
US20130238820A1 (en) Mobile device and usb system including the same
CN2908708Y (zh) 键锁分离式电子密码锁
CN103677964A (zh) 一种虚拟机控制***
CN104615260A (zh) 一种新型的服务器管理***
CN206193766U (zh) 一种获取诊断信息的装置和电子设备
KR20050083406A (ko) 서버-클라이언트 시스템 및 그 동작방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20171103

Termination date: 20181014