CN111459307A - 一种多主机和显示器的控制切换系统 - Google Patents
一种多主机和显示器的控制切换系统 Download PDFInfo
- Publication number
- CN111459307A CN111459307A CN202010234738.XA CN202010234738A CN111459307A CN 111459307 A CN111459307 A CN 111459307A CN 202010234738 A CN202010234738 A CN 202010234738A CN 111459307 A CN111459307 A CN 111459307A
- Authority
- CN
- China
- Prior art keywords
- mouse
- screen
- keyboard
- mcu0
- data
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/038—Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
- G06F3/0383—Signal control means within the pointing device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0354—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
- G06F3/03543—Mice or pucks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
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)
- Position Input By Displaying (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
一种多主机和显示器的控制切换系统,硬件上包括两部分:切换控制器和定制键盘。通过一套键盘和鼠标可以控制多台主机和显示器,多台显示器位置可随意排列,可通过键盘特定键切换控制的主机,也可以通过鼠标滑屏切换屏幕,同时键盘也会随鼠标一起改变控制权,操作多台主机和多台显示器犹如操作一台主机和显示器,而且操作顺滑,与键盘鼠标直接连一个主机体验感相同。
Description
技术领域
本发明涉及一种计算机控制切换技术,尤其涉及一种多主机和显示器的控制切换系统及其鼠标同步方法。
背景技术
计算机从其产生至今,随着其迅猛发展,在人类经济社会中的应用越来越广泛。在科学计算、数据处理、辅助技术、过程控制(或者实时控制)、人工智能、网络应用等方面,计算机都是不可或缺的。而对于信息控制中心、呼叫中心、证券/金融交易系统、银行数据中心、工业控制环境、教学环境、测试中心等,计算机在应用在类似的情景中时常常是多个计算机或者服务器同时运行。
鼠标是计算机的一种外接输入设备,也是计算机显示系统纵横坐标定位的指示器。鼠标的使用使得更加简便以及快捷地操作计算机成为可能。在鼠标使用过程中,通常采用相对移动距离作为鼠标参数发送至计算机系统,计算机系统以此为依据对显示器上的鼠标光标做相对移动。整个操作过程一般为:首先鼠标器内的微处理器实时地监测着X/Y坐标传感器的移动和按键的状态,当鼠标器的状态发生变化时,微处理器读出按击键状态并及时得到当前X/Y坐标移动的位置;接着微处理器就将变化的数据按照约定的通信协议将数据打包发送回主计算机的通信端口;计算机中的鼠标驱动程序接收到端口的数据包后将其解码再传送给相应的应用软件,从而完成鼠标器的检测和控制过程。在使用鼠标进行操作控制时,鼠标同步的精确性和实效性是非常重要的内容,这在KVM中显得尤其重要和突出。
KVM即键盘(Keyboard)、显示器(Video)、鼠标(Mouse)的缩写组合,即利用一组键盘、显示器和鼠标实现对多台计算机设备的控制。这种KVM的多主机切换技术,突破了传统计算机的一对一的控制方式,实现了一对多的控制,实现了系统和网络的集中有效管理,在节省空间、节约成本、提高效率方面具有显而易见的优势。
KVM要控制多台计算机或者服务器,使用者要能够在多台计算机或者服务器以及多操作系统之间进行切换。现在大部分KVM一般都是通过控制器上的按键或者键盘热键切换主机。这种切换方式有其固有的局限性。
中国专利CN200620137197.4公开了一种KVM转换器,包括指示灯,切换按钮,盒体KVM转换器一侧设有一数字数据输入接口;对应另一侧设有串联输入接口和串联输出接口;其中正面设有一个连接监视器连接接口、一个连接键盘连接接口、一个连接监视器连接接口以及多个与电脑主机连接的键盘、监视器、鼠标;内部设有一行和一列译码器等。该项技术通过KVM的切换按钮实现对于多个电脑主机的切换。
中国专利CN200880127911.3公开了具有一体式KVM开关的计算机监视器,包括:显示面板;和KVM开关,其耦合到所述显示面板以向所述显示面板提供视频信号,所述KVM开关具有用于接收键盘和鼠标信号的输入,所述KVM开关具有多组端口,所述多组端口中的每一组提供所述监视器和相应计算机之间的键盘、视频和鼠标信号的传送;还包括:选择器,用于控制所述KVM开关以便选择多个计算机中的哪个计算机被活动地连接以及哪个计算机不被活动地连接。该项技术通过选择器,其实质也是循环按钮,实现对于多个计算机的切换。
这种通过KVM控制器上的按键或者键盘热键切换主机的方式,切换方式单一,使用时不方便也不够直观,同时计算机的使用者需要记住各个主机的位置关系,非常地不灵活,无法实现使用者所期望的智能切换。
目前,也有部分KVM让鼠标工作在绝对坐标模式下,即鼠标输出绝对坐标给控制器,由控制器根据鼠标的绝对坐标来切换主机,这样不需要计算机端鼠标驱动软件。
中国专利CN200810175828.5公开了一种实现快速切换的KVM装置,包括KVM切换器、主机和键盘、鼠标输入设备,其中,1)、KVM连接的多台主机,将多台主机屏幕虚拟成一个大屏幕,将每台屏幕按分辨率分成1280x1024个点,鼠标的位置将在这些点上移动。2)、KVM切换器解析鼠标的位置和移动,并把鼠标在虚拟坐标上的位置((n*1280+x),y)通过RS-422总线广播给操作站主机。3)、操作站软件判断n的值来决定鼠标操作哪台主机:n=0,鼠标操作第一台主机,n=1,鼠标操作第二台主机,依次到n=主机台数-1,鼠标操作最后一台主机;其中x为横向坐标,y为纵向坐标;键盘随着鼠标,与鼠标操作同一台主机,4)操作站软件屏蔽其他主机上的鼠标和键盘操作,并隐藏鼠标光标,实现多台主机始终只有一台主机可通过鼠标和键盘操作,KVM跟随n(n>=0,n<主机个数)的数值变化自动切换。该项技术虽然实现了通过鼠标的绝对坐标进行主机的切换,但是该多个显示器的排列方式是固定,无法进行变换。
中国专利CN201610402712.5公开了一种多计算机多屏切换装置及方法,所述装置包括视频输入单元、USB信号输入单元、音频/耳麦输入单元、控制单元、视频输出单元、键盘鼠标USB接口单元、USB数据接口单元、音频/耳麦输出单元、串口、网口,其根据显示器的物理排列位置建立总坐标系,同时建立计算机输出显示的子坐标系,根据实时获取鼠标在总坐标系中的位置判断鼠标位于哪一个显示器中,进而确定对应的输入计算机,并将控制权交给该计算机。该项技术同样是通过鼠标的绝对坐标对计算机进行切换,显示器的物理排列位置是总坐标系的基础,导致显示器的排列方式固定,无法改变和再次进行调整,只能实现简单的屏幕排列下切换。
在通过鼠标的绝对坐标切换主机的KVM中,其通常存在的缺点还有:绝对坐标下的鼠标指针移动没有加速功能,所以鼠标在小范围移动和大范围移动时,移动速度是一样的,这样很难协调两种情况下的移动速度,要么移动速度太快,无法在小范围精准控制鼠标,要么速度太慢,大范围移动时操作笨拙。
中国专利CN201811649109.2公开了一种基于鼠标切换主机的方法及系统、KVM,该方法包括在鼠标内部系统的单位时间内,判断鼠标移动的距离;将鼠标的移动距离发送给KVM;KVM判断距离是否小于最小值或大于最大值,如果是,则表示达到KVM的切换条件,KVM执行切换主机动作。该方法通过鼠标通信报告的特性,判断鼠标手势,避免与现有软件相冲突。但是该方法实质也是在鼠标固定坐标模式下进行应用,并且其适用于1台显示器的多主机切换,并不适用于多台显示器和多台主机的切换。
因此,如何实现多主机和多显示器的有效地、智能地切换,使操作人员在操作多台主机和多台显示器时犹如操作一台主机和显示器,而且整个操作顺滑,与键盘鼠标直接连一个主机体验感相同,仍然是多主机和显示器的控制切换技术中的问题。
发明内容
为了解决上述现有技术中的问题,本发明的目的首先是提供一种多主机和显示器的控制切换系统。
本发明通过一套键盘和鼠标可以控制多台主机和多台显示器,多台显示器位置可随意排列,可通过键盘特定键切换控制的主机,也可以通过鼠标滑屏切换屏幕,同时键盘也会随鼠标一起改变控制权,操作多台主机和多台显示器犹如操作一台主机和显示器,而且操作顺滑,与键盘鼠标直接连一个主机体验感相同。
本发明提供一种多主机和显示器的切换控制系统,主机的数目是p个,显示器的数目是q个,q≥p≥2,所述切换控制系统包括键盘鼠标切换器、键盘和鼠标,
其中,键盘鼠标切换器具有p+1个单片机,单片机MCU0与键盘、鼠标连接,单片机MCU1至单片机MCUp与主机PC1至主机PCp分别一一对应进行连接,
所述单片机MCU0包括键盘接收模块、鼠标接收模块、切换算法模块、SPI通讯模块、屏幕排列设定模块,键盘接收模块、鼠标接收模块、幕排列设定模块通过切换算法模块与SPI通讯模块连通,
所述单片机MCU1至单片机MCUp包括USB HID复用模块,
所述主机的一部分或者全部具有PC端鼠标驱动模块。
进一步地,所述键盘接收模块、鼠标接收模块为USB键盘接收模块、USB鼠标接收模块。
进一步地,主机的数目p为4、6、8或10。
进一步地,所述USB键盘接收模块:负责单片机MCU0与USB键盘的通讯;所述USB鼠标接收模块:负责单片机MCU0与USB鼠标的通讯。
进一步地,所述屏幕排列设定模块:负责使用前给单片机MCU0设置显示器的屏幕分辨率和排列方式。
进一步地,所述切换算法模块:负责计算鼠标键盘的控制权如何切换,实现鼠标键盘在相对坐标体系和绝对坐标体系下均能切换。
进一步地,所述SPI通讯模块:负责单片机MCU0和单片机MCU1-p之间的数据通讯,实现高速数据通讯和稳定传输。
进一步地,所述USB HID复用模块:负责将单片机MCU1-p设置为USB HID复用设备,分别复用成USB HID键盘,USB HID鼠标和USB HID数据通道。
进一步地,所述PC端鼠标驱动模块:负责鼠标在相对坐标模式下时,实时检测鼠标位置,一旦碰到边缘,立刻通知键盘鼠标切换控制器。
进一步地,所述键盘设有切换按键,所述切换按键包括:手动切换PC主机的切换按键,控制PC机多媒体功能按键,软件快捷按键。
进一步地,所述鼠标能够工作在相对坐标模式和/或绝对坐标模式下。
进一步地,所述键盘鼠标切换控制器内部有5个单片机,其中单片机MCU0通过USBHID协议连接USB键盘鼠标,单片机MCU1,单片机MCU2,单片机MCU3,单片机MCU4分别通过USBHID连接4台PC主机。5个单片机之间通过SPI总线通讯。
进一步地,所述单片机的数量可以是5个(1+4,对应控制4个PC主机),7个(1+6,对应控制6个PC主机),9个(1+8,对应控制8个PC主机)。
在使用前,通过控制器上的串口来设置所有屏幕的位置和分辨率。在相对坐标模式下,每个PC主机端均安装鼠标驱动软件,用来检测鼠标指针是否穿过屏幕边缘,一旦穿过,键盘鼠标切换控制器就会自动把键盘鼠标的控制转到下一个主机上,从而实现了鼠标穿屏功能。
在绝对坐标模式下,PC主机端不需要安装鼠标驱动软件,键盘鼠标切换控制器能够自己来计算鼠标位置,是否需要切换到下一个屏幕上去。
鼠标也可以同时在相对坐标和绝对坐标下滑屏切换主机,即多台主机的鼠标可以分别工作在相对坐标和绝对坐标下。
软件方面包括两部分:串口设置程序和PC端鼠标驱动程序。
串口设置程序负责在使用前设置所有屏幕的位置和分辨率并传送至单片机MCU0。
PC端鼠标驱动程序负责在相对坐标模式下实时检测鼠标指针的位置,一旦鼠标指针碰到屏幕的边缘,驱动程序就会通过USB HID数据通道通知切换控制器上的单片机MCU0,单片机MCU0根据串口设置程序在使用前的屏幕设置来判断鼠标指针下一时刻需要切换到哪个屏幕,这个屏幕属于哪台主机。
本发明同时提供一种多主机和显示器的控制切换系统的鼠标数据传送方法,包括:
步骤1:设置所有显示器的屏幕分辨率、屏幕排列,确定主机的鼠标的工作模式是相对坐标模式和/或绝对坐标模式,同时传送至单片机MCU0;
步骤2:鼠标移动,鼠标通过USB HID协议发送鼠标数据给键盘鼠标切换控制器内单片机MCU0的USB鼠标接收模块,所述鼠标数据包括鼠标的位移数据;
步骤3:单片机MCU0的切换算法模块判断此时鼠标的工作模式,是相对坐标模式还是绝对坐标模式;
如果是绝对坐标模式,执行步骤4;
如果是相对坐标模式,执行步骤5;
步骤4:鼠标处于绝对坐标模式下,单片机MCU0的USB鼠标接收模块接收鼠标发送的位移数据,单片机MCU0根据鼠标历史坐标数据和位移数据计算鼠标新的坐标数据,单片机MCU0的切换算法模块根据鼠标新的坐标数据判断鼠标已经超出主机PCm的屏幕边缘;
如果已经超出主机PCm的屏幕边缘,执行步骤10;
如果没有超出主机PCm的屏幕边缘,单片机MCU0将鼠标新的坐标数据发至主机PCm,执行步骤11;
步骤5:鼠标处于相对坐标模式下,单片机MCU0直接将鼠标位移数据通过SPI总线发给当前被控主机PCm对应的单片机MCUm;
步骤6:单片机MCUm本身的USB口已设置成复用USB HID设备,通过USB HID鼠标通道经过USB口,鼠标位移数据被发送给被控主机PCm的鼠标驱动程序;
步骤7:主机PCm的鼠标驱动程序检测鼠标指针是否超出屏幕边缘,
如果没有超出屏幕边缘,不发数据给切换控制器,直接跳到步骤11;
如果超出屏幕边缘,执行步骤8;
步骤8:如果超出屏幕边缘,主机PCm通过USB HID数据通道发送鼠标新坐标数据给单片机MCUm;
步骤9:单片机MCUm再通过SPI总线将鼠标新坐标数据发送给单片机MCU0的切换算法模块;
步骤10:单片机MCU0的切换算法模块根据已存储的屏幕排列来判断需要切换的屏幕在哪台主机,然后单片机MCU0切换SPI总线连接到该主机对应的单片机MCUx,通过单片机MCUx,将鼠标新坐标数据发送给主机PCx,鼠标切换至主机PCx;
步骤11:鼠标移动至新的坐标位置,数据流结束。
进一步地,通过串口屏幕排列设定模块设置所有显示器的屏幕分辨率、屏幕排列。
进一步地,所述鼠标是USB鼠标。
进一步地,鼠标在相对坐标模式下的主机具有扩展屏。
本发明所取得的有益效果:
1、可以设置屏幕排列,所以无论实际屏幕怎样排列,都可以实现鼠标滑屏切换。
2、鼠标可以工作在相对坐标模式下,所以可以支持扩展屏,同时鼠标移动有加速优化,实际体验感与鼠标直接连PC主机一样。
3、支持鼠标相对坐标和绝对坐标模式混合使用,解决某些主机不允许安装PC端鼠标驱动软件,不能使用相对坐标模式的问题,这些主机的情形例如:有些公司为了防止数据泄露封锁了USB口或者在主机上安装了一下防数据泄露的软件,禁止上传和安装任何第三方软件。
4、在使用前配置好屏幕的分辨率和排列顺序,即使在复杂的屏幕排列也可以实现鼠标滑屏切换。
5、本发明中可以通过PC端鼠标驱动程序来判断是否切换,所以鼠标仍然可以工作在相对坐标模式下。如果鼠标在绝对坐标模式下不支持扩展屏,这样一台主机带两个及两个以上屏幕时,就无法实现鼠标滑屏切换主机。而本发明的鼠标可以工作在相对坐标模式下就可以完美支持扩展屏。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1是实施例1的多主机和显示器的控制切换系统示意图。
图2是实施例1的多主机和显示器的模块结构图。
图3是实施例1的多主机和显示器的数据流程图。
图4是相对坐标模式下鼠标切换示意图。
图5是绝对坐标模式下鼠标切换示意图。
图6是相对坐标模式和绝对坐标模式下鼠标切换示意图。
图7是实施例2的多主机和显示器的控制切换系统示意图。
具体实施方式
下面结合具体实施例对本发明做进一步说明。这些实施例仅用于说明本发明,而不能理解为对本发明的限制。此外需理解,在阅读了本发明公开的内容后,相关领域技术人员可以对本发明做各种修改,包括在现有组件基础上添加其他组件,这些等价形式同样在本申请所附权利要求书限定的范围内。
实施例1一种多主机和显示器的控制切换系统
图1显示本发明的一种多主机和显示器的控制切换系统示意图
该系统硬件包括键盘鼠标切换器和键盘。
所述键盘为定制键盘,上面有专为切换设计的特定按键。这些特定按键例如可以包括:手动切换PC主机的切换按键,功能类似有些现有的KVM上的切换按键;控制PC机多媒体功能按键,例如调节音量,打开IE,打开文件管理器,开关机等;专用于某些特殊软件快捷键,比如彭博,路透交易软件。
所述键盘鼠标切换控制器内部有5个单片机(MCU),其中MCU0通过USB HID协议连接USB键盘、鼠标,MCU1,MCU2,MCU3,MCU4分别通过USB HID连接4台PC主机。5个单片机之间通过SPI总线通讯。
在使用前,通过键盘鼠标切换控制器上的串口来设置所有显示器的位置和分辨率。多个显示器的位置是可以任意排列,串口作为通道,能够向键盘鼠标切换控制器传送显示器的位置。
所述鼠标为普通USB鼠标,可以分别工作在相对坐标和绝对坐标模式下。
图2模块结构图显示了本实例的模块结构,包括USB键盘接收模块,USB鼠标接收模块,切换算法模块,SPI通讯模块,USB HID复用模块,PC端鼠标驱动模块,屏幕排列设定模块。各模块按图2中连接方式相互连接。
其中:
USB键盘接收模块:负责单片机MCU0与USB键盘的通讯;
USB鼠标接收模块:负责单片机MCU0与USB鼠标的通讯;
屏幕排列设定模块:负责使用前给MCU0设置屏幕分辨率和排列;
切换算法模块:负责计算下一时刻鼠标键盘的控制权如何切换;
SPI通讯模块:负责MCU0和MCU1-4之间的高速数据通讯和稳定传输;
USB HID复用模块:负责将MCU1-4设置为USB HID复用设备,分别复用成USB HID键盘,USB HID鼠标和USB HID数据通道;
PC端鼠标驱动模块:负责鼠标在相对坐标模式下时,实时检测鼠标指针位置,一旦碰到边缘,立刻通知切换控制器。
图3数据流程图显示了本实例的数据流程过程,对应鼠标的数据流如下:
步骤1:通过串口屏幕排列设定模块设置所有显示器的屏幕分辨率、屏幕排列,确定主机的鼠标的工作模式是相对坐标模式和/或绝对坐标模式,传送至单片机MCU0;
步骤2:鼠标移动,鼠标通过USB HID协议发送鼠标数据给键盘鼠标切换控制器内单片机MCU0的USB鼠标接收模块,所述鼠标数据包括鼠标初始坐标数据和位移数据;
步骤3:单片机MCU0的切换算法模块判断此时鼠标的工作模式,是相对坐标模式还是绝对坐标模式;
如果是绝对坐标模式,执行步骤4;
如果是相对坐标模式,执行步骤5;
步骤4:鼠标处于绝对坐标模式下,单片机MCU0的USB鼠标接收模块接收鼠标发送的位移数据,单片机MCU0根据鼠标初始坐标数据和位移数据计算鼠标新的坐标数据,单片机MCU0的切换算法模块根据鼠标新的坐标数据判断鼠标已经超出主机PC1的屏幕边缘;
如果已经超出主机PC1的屏幕边缘,执行步骤10;
如果没有超出主机PC1的屏幕边缘,单片机MCU0将鼠标新的坐标数据发至主机PC1,执行步骤11;
步骤5:鼠标处于相对坐标模式下,单片机MCU0直接将鼠标位移数据通过SPI总线发给当前被控主机PC1对应的单片机MCU1;
步骤6:单片机MCU1本身的USB口已设置成复用USB HID设备,通过USB HID鼠标通道经过USB口,鼠标位移数据被发送给被控主机PC1的鼠标驱动程序;
步骤7:主机PC1的鼠标驱动程序检测鼠标指针是否超出屏幕边缘,
如果没有超出屏幕边缘,不发数据给切换控制器,直接跳到步骤11;
如果超出屏幕边缘,执行步骤8;
步骤8:如果超出屏幕边缘,主机PC1通过USB HID数据通道发送鼠标新坐标数据给单片机MCU1;
步骤9:单片机MCU1再通过SPI总线将鼠标新坐标数据发送给单片机MCU0的切换算法模块;
步骤10:单片机MCU0的切换算法模块根据已存储的屏幕排列来判断需要切换的屏幕在哪台主机,然后单片机MCU0切换SPI总线连接到该主机对应的单片机MCUx,通过单片机MCUx,将鼠标新坐标数据发送给主机PCx,鼠标切换至主机PCx;
步骤11:鼠标移动至新的坐标位置,数据流结束。
在相对坐标模式下,鼠标的移动并不能直接反应至鼠标指针的移动,必须通过PC端进行转换。每个PC端都可以安装鼠标驱动软件,该鼠标驱动软件用来检测鼠标指针是否穿过屏幕边缘。一旦鼠标指针穿过屏幕边缘,键盘鼠标切换控制器就会自动把键盘鼠标的控制权转到下一个主机上,从而实现了鼠标穿屏功能。
如图4相对坐标模式下鼠标切换示意图所示,鼠标的数据传送及切换过程示例如下:
步骤1:两台主机分别配置一台显示器,两台显示器左右并排放置,分辨率分别都是1920x1080,两台主机的鼠标的工作模式均是相对坐标模式,使用前通过串口屏幕排列设定模块设置两台显示器放置位置、分辨率、鼠标工作模式,同时传送至单片机MCU0;
步骤2:当前鼠标在主机PC1对应的左面屏幕上,初始坐标为(1919,400),鼠标向右移动,位移数据为(8,0),鼠标通过USB HID协议发送鼠标数据给键盘鼠标切换控制器内单片机MCU0的USB鼠标接收模块;
步骤3:单片机MCU0的切换算法模块根据从USB鼠标接收模块收到的鼠标初始坐标数据,判断此时鼠标工作在相对坐标模式下;
步骤4:单片机MCU0直接将鼠标位移数据通过SPI总线发给当前被控主机对应的单片机MCU1;
步骤5:单片机MCU1本身的USB口已设置成复用USB HID设备,通过USB HID鼠标通道经过USB口,鼠标位移数据被发送给被控主机PC1的鼠标驱动程序;
步骤6:主机PC1的鼠标驱动程序计算鼠标指针新坐标数据为(1927,400),与主机PC1的屏幕分辩率比较,检测鼠标指针已经碰到屏幕边缘;
步骤7:主机PC1通过USB HID数据通道发送鼠标指针新坐标数据给单片机MCU1;
步骤8:单片机MCU1通过SPI总线将鼠标指针新坐标数据发送给单片机MCU0的切换算法模块;
步骤9:单片机MCU0的切换算法模块根据已存储的主机PC1、主机PC2的屏幕排列判断鼠标切换至右面屏幕即主机PC2的屏幕,单片机MCU0切换SPI总线给单片机MCU2,计算新的鼠标数据:x坐标为1927-1920=7,y坐标不变,即鼠标新坐标(7,400)发送给PC2主机;
步骤10:主机PC2接收鼠标新的坐标数据并显示其定位位置,数据流结束。
在绝对坐标模式下,PC端不需要安装鼠标驱动软件,控制器会自己来计算鼠标位置,是否需要切换到下一个屏幕上去。
如图5绝对坐标模式下鼠标切换示意图所示,鼠标的数据传送及切换过程示例如下:
步骤1:两台主机分别配置一台显示器,两个显示器左右并排放置,两个显示器均自定义屏幕的分辩率为4096x4096,使用前通过串口屏幕排列设定模块设置两个显示器的屏幕分辨率、屏幕排列,鼠标的工作模式均是绝对坐标模式,同时传送至单片机MCU0;
步骤2:当前鼠标在主机PC1对应的左面屏幕上,初始坐标为(4095,1800),鼠标通过USB HID协议发送鼠标数据给键盘鼠标切换控制器内单片机MCU0的USB鼠标接收模块;
步骤3:单片机MCU0的切换算法模块根据从USB鼠标接收模块收到的鼠标初始坐标数据,判断此时鼠标工作在绝对坐标模式下;
步骤4:单片机MCU0的USB鼠标接收模块接收鼠标发送的位移数据(8,0),单片机MCU0根据鼠标初始坐标数据和位移数据计算鼠标新的坐标数据为(4103,1800),单片机MCU0的切换算法模块根据鼠标新的坐标数据判断鼠标已经超出主机PC1的屏幕右边缘;
步骤5:单片机MCU0的切换算法模块根据已存储的主机PC1、主机PC2的屏幕排列判断鼠标切换至右面屏幕即主机PC2的屏幕,单片机MCU0切换SPI通道给单片机MCU2,计算新的鼠标数据:x坐标为4103-4096=7,y坐标不变,即鼠标新坐标(7,1800)发送给PC2主机;
步骤6:主机PC2接收鼠标指针新的坐标数据并显示其定位位置,数据流结束。
本发明的多主机和显示器的控制切换系统的鼠标也可以同时在相对坐标和绝对坐标下滑屏切换主机,即多台主机的鼠标可以分别工作在相对坐标和绝对坐标下。
如图6相对坐标和绝对坐标模式下鼠标切换示意图所示,鼠标的数据传送及切换过程示例如下:
步骤1:两台主机分别配置一台显示器,两台显示器左右并排放置,主机PC1的显示器屏幕位于左边,鼠标工作模式是相对坐标模式,分辨率是1920x1080;主机PC2的显示器屏幕位于右边,鼠标的工作模式是绝对坐标模式,自定义屏幕分辨率为4096x4096,使用前通过串口屏幕排列设定模块设置两台显示器放置位置、分辨率、鼠标工作模式,同时传送至单片机MCU0;
步骤2:当前鼠标在主机PC1对应的左面屏幕上,初始坐标为(1919,539),鼠标向右移动,位移数据为(8,0),鼠标通过USB HID协议发送鼠标数据给键盘鼠标切换控制器内单片机MCU0的USB鼠标接收模块;
步骤3:单片机MCU0的切换算法模块根据从USB鼠标接收模块收到的鼠标初始坐标数据,判断此时鼠标工作在相对坐标模式下;
步骤4:单片机MCU0直接将鼠标位移数据(8,0)通过SPI总线发给当前被控主机对应的单片机MCU1;
步骤5:单片机MCU1本身的USB口已设置成复用USB HID设备,通过USB HID鼠标通道经过USB口,鼠标位移数据(8,0)被发送给被控主机PC1的鼠标驱动程序;
步骤6:主机PC1的鼠标驱动程序计算鼠标指针新坐标数据为(1927,539),与主机PC1的屏幕的分辩率比较,检测鼠标指针已经超出屏幕右边缘;
步骤7:主机PC1通过USB HID数据通道发送鼠标新坐标数据(1927,539)给单片机MCU1;
步骤8:单片机MCU1通过SPI总线将鼠标新坐标数据(1927,539)发送给单片机MCU0的切换算法模块;
步骤9:单片机MCU0的切换算法模块根据已存储的主机PC1、主机PC2的屏幕排列判断鼠标切换至右面屏幕即主机PC2的屏幕,单片机MCU0切换SPI通道给单片机MCU2,计算新的鼠标数据:并计算新的鼠标绝对坐标x=(1927-1920+1)/1920*4096-1=16,y=(539+1)/1080*4096-1=2039,即鼠标新坐标(16,2039)发送给PC2主机;
步骤10:主机PC2接收鼠标指针新的坐标数据并显示其定位位置,数据流结束。
实施例2:一种多主机和显示器的控制切换系统
图7显示本发明的一种多主机和显示器的控制切换系统示意图
所述键盘鼠标切换控制器内部有9个单片机(MCU),其中MCU0通过USB HID协议连接USB键盘、鼠标,MCU1,MCU2,MCU3,MCU4,MCU5,MCU6,MCU7,MCU8分别通过USB HID连接8台PC主机。9个单片机之间通过SPI总线通讯。
数据流与实施例1相同。
Claims (10)
1.一种多主机和显示器的切换控制系统,主机的数目是p个,显示器的数目是q个,q≥p≥2,所述切换控制系统包括键盘鼠标切换器、键盘和鼠标,
其中,键盘鼠标切换器具有p+1个单片机MCU,单片机MCU0与键盘、鼠标连接,单片机MCU1至单片机MCUp与主机PC1至主机PCp分别一一对应进行连接,
所述单片机MCU0包括键盘接收模块、鼠标接收模块、切换算法模块、SPI通讯模块、屏幕排列设定模块,键盘接收模块、鼠标接收模块、幕排列设定模块通过切换算法模块与SPI通讯模块连通,
所述单片机MCU1至单片机MCUp包括USB HID复用模块,
所述主机的一部分或者全部具有PC端鼠标驱动模块。
2.根据权利要求1所述的多主机和显示器的切换控制系统,其特征在于,所述键盘接收模块、鼠标接收模块为USB键盘接收模块、USB鼠标接收模块。
3.根据权利要求1-2所述的多主机和显示器的切换控制系统,其特征在于,主机的数目p为4、6、8或10。
4.根据权利要求1-3所述的多主机和显示器的切换控制系统,其特征在于,所述USB键盘接收模块:负责单片机MCU0与USB键盘的通讯;所述USB鼠标接收模块:负责单片机MCU0与USB鼠标的通讯。
5.根据权利要求1-4所述的多主机和显示器的切换控制系统,其特征在于,所述屏幕排列设定模块:负责使用前给单片机MCU0设置显示器的屏幕分辨率和排列方式。
6.根据权利要求1-5所述的多主机和显示器的切换控制系统,其特征在于,所述切换算法模块:负责计算鼠标键盘的控制权如何切换,实现鼠标键盘在相对坐标体系和绝对坐标体系下均能切换。
7.根据权利要求1-6所述的多主机和显示器的切换控制系统,所述USB HID复用模块:负责将单片机MCU1-p设置为USB HID复用设备,分别复用成USB HID键盘,USB HID鼠标和USB HID数据通道。
8.一种多主机和显示器的控制切换系统的鼠标数据传送方法,包括:
步骤1:设置所有显示器的屏幕分辨率、屏幕排列,确定主机的鼠标的工作模式是相对坐标模式和/或绝对坐标模式,同时传送至单片机MCU0;
步骤2:鼠标移动,鼠标通过USB HID协议发送鼠标数据给键盘鼠标切换控制器内单片机MCU0的USB鼠标接收模块,所述鼠标数据包括鼠标的位移数据;
步骤3:单片机MCU0的切换算法模块判断此时鼠标的工作模式,是相对坐标模式还是绝对坐标模式;
如果是绝对坐标模式,执行步骤4;
如果是相对坐标模式,执行步骤5;
步骤4:鼠标处于绝对坐标模式下,单片机MCU0的USB鼠标接收模块接收鼠标发送的位移数据,单片机MCU0根据鼠标历史坐标数据和位移数据计算鼠标新的坐标数据,单片机MCU0的切换算法模块根据鼠标新的坐标数据判断鼠标已经超出主机PCm的屏幕边缘;
如果已经超出主机PCm的屏幕边缘,执行步骤10;
如果没有超出主机PCm的屏幕边缘,单片机MCU0将鼠标新的坐标数据发至主机PCm,执行步骤11;
步骤5:鼠标处于相对坐标模式下,单片机MCU0直接将鼠标位移数据通过SPI总线发给当前被控主机PCm对应的单片机MCUm;
步骤6:单片机MCUm本身的USB口已设置成复用USB HID设备,通过USB HID鼠标通道经过USB口,鼠标位移数据被发送给被控主机PCm的鼠标驱动程序;
步骤7:主机PCm的鼠标驱动程序检测鼠标指针是否超出屏幕边缘,
如果没有超出屏幕边缘,不发数据给切换控制器,直接跳到步骤11;
如果超出屏幕边缘,执行步骤8;
步骤8:如果超出屏幕边缘,主机PCm通过USB HID数据通道发送鼠标新坐标数据给单片机MCUm;
步骤9:单片机MCUm再通过SPI总线将鼠标新坐标数据发送给单片机MCU0的切换算法模块;
步骤10:单片机MCU0的切换算法模块根据已存储的屏幕排列来判断需要切换的屏幕在哪台主机,然后单片机MCU0切换SPI总线连接到该主机对应的单片机MCUx,通过单片机MCUx,将鼠标新坐标数据发送给主机PCx,鼠标切换至主机PCx;
步骤11:鼠标移动至新的坐标位置,数据流结束。
9.根据权利要求8所述的多主机和显示器的控制切换系统的鼠标数据传送方法,其特征在于,通过串口屏幕排列设定模块设置所有显示器的屏幕分辨率、屏幕排列。
10.根据权利要求8-9所述的多主机和显示器的控制切换系统的鼠标数据传送方法,其特征在于,鼠标在相对坐标模式下的主机具有扩展屏。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010234738.XA CN111459307B (zh) | 2020-03-30 | 2020-03-30 | 一种多主机和显示器的控制切换系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010234738.XA CN111459307B (zh) | 2020-03-30 | 2020-03-30 | 一种多主机和显示器的控制切换系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111459307A true CN111459307A (zh) | 2020-07-28 |
CN111459307B CN111459307B (zh) | 2023-06-16 |
Family
ID=71683753
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010234738.XA Active CN111459307B (zh) | 2020-03-30 | 2020-03-30 | 一种多主机和显示器的控制切换系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111459307B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112068749A (zh) * | 2020-08-21 | 2020-12-11 | 易思维(杭州)科技有限公司 | 多屏幕单终端设备屏幕集中显示、控制的系统及方法 |
CN113434452A (zh) * | 2021-08-26 | 2021-09-24 | 统信软件技术有限公司 | 一种硬件设备共享方法、系统、计算设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101739137A (zh) * | 2008-11-05 | 2010-06-16 | 北京广利核系统工程有限公司 | 一种实现快速切换的kvm装置 |
US20100332702A1 (en) * | 2009-03-03 | 2010-12-30 | June-On Co., Ltd | Kvm switch apparatus with bridging function |
CN106843527A (zh) * | 2017-01-20 | 2017-06-13 | 广州魅视电子科技有限公司 | 分布式kvm坐席协作管理系统 |
CN109634444A (zh) * | 2018-10-30 | 2019-04-16 | 山东超越数控电子股份有限公司 | 一种kvm远程鼠标同步控制方法及系统 |
CN109799933A (zh) * | 2019-01-02 | 2019-05-24 | 中国船舶重工集团公司第七0七研究所 | 一种支持多主机的多点触控与显示系统 |
-
2020
- 2020-03-30 CN CN202010234738.XA patent/CN111459307B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101739137A (zh) * | 2008-11-05 | 2010-06-16 | 北京广利核系统工程有限公司 | 一种实现快速切换的kvm装置 |
US20100332702A1 (en) * | 2009-03-03 | 2010-12-30 | June-On Co., Ltd | Kvm switch apparatus with bridging function |
CN106843527A (zh) * | 2017-01-20 | 2017-06-13 | 广州魅视电子科技有限公司 | 分布式kvm坐席协作管理系统 |
CN109634444A (zh) * | 2018-10-30 | 2019-04-16 | 山东超越数控电子股份有限公司 | 一种kvm远程鼠标同步控制方法及系统 |
CN109799933A (zh) * | 2019-01-02 | 2019-05-24 | 中国船舶重工集团公司第七0七研究所 | 一种支持多主机的多点触控与显示系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112068749A (zh) * | 2020-08-21 | 2020-12-11 | 易思维(杭州)科技有限公司 | 多屏幕单终端设备屏幕集中显示、控制的系统及方法 |
CN112068749B (zh) * | 2020-08-21 | 2021-09-21 | 易思维(杭州)科技有限公司 | 多屏幕单终端设备屏幕集中显示、控制的系统及方法 |
CN113434452A (zh) * | 2021-08-26 | 2021-09-24 | 统信软件技术有限公司 | 一种硬件设备共享方法、系统、计算设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111459307B (zh) | 2023-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100287091B1 (ko) | 다수의 컴퓨터를 위한 단일 지시 장치/키보드 | |
CN101739137B (zh) | 一种实现快速切换的kvm装置 | |
US8627219B2 (en) | Equipment with dual screens for controlling multi-computers and the operating method thereof | |
CN111309199B (zh) | 触摸显示装置的显示控制方法和触摸显示装置 | |
CN102279665A (zh) | 一种基于触摸板遥控器的电视遥控方法、装置及系统 | |
CN101996031A (zh) | 具有触摸输入功能的电子装置及其触摸输入方法 | |
GB2471189A (en) | Switching mouse and keyboard input between different computers based on the absolute position of the mouse | |
CN111459307A (zh) | 一种多主机和显示器的控制切换系统 | |
CN109799933B (zh) | 一种支持多主机的多点触控与显示系统 | |
US20090251413A1 (en) | Computer Switching Device | |
CN101539897A (zh) | 多计算机切换装置及其运行方法 | |
CN112328101A (zh) | 一种基于osd的kvm多系统联合控制的方法和装置 | |
US6018336A (en) | Computer system having digitizing tablet | |
US6469690B1 (en) | Data sharing for multi-CPU mouse/keyboard switcher | |
CN102385421A (zh) | 一种显示器中集成kvm的结构 | |
CN206312090U (zh) | Kvm控制器 | |
CN102279654A (zh) | 一种kvm中键盘调用显示器osd菜单的实现方法 | |
US6075517A (en) | System and method for synchronization of pointing devices with different data packet sizes | |
CN112099749A (zh) | 一种支持kvm功能的笔记本电脑 | |
US8099535B2 (en) | Method for converting a KVM system | |
CN201262742Y (zh) | 一种计算机 | |
CN102117145B (zh) | 多计算机管理系统及其控制方法 | |
CN104615260A (zh) | 一种新型的服务器管理系统 | |
KR102085156B1 (ko) | 망전환 기능을 갖는 컴퓨터 및 모니터 | |
TWI709071B (zh) | 觸控板驅動系統及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |