CN102436310B - 以键盘模拟鼠标装置的方法及输入装置 - Google Patents

以键盘模拟鼠标装置的方法及输入装置 Download PDF

Info

Publication number
CN102436310B
CN102436310B CN201010295508.0A CN201010295508A CN102436310B CN 102436310 B CN102436310 B CN 102436310B CN 201010295508 A CN201010295508 A CN 201010295508A CN 102436310 B CN102436310 B CN 102436310B
Authority
CN
China
Prior art keywords
key
mouse
keyboard
press event
computer system
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.)
Active
Application number
CN201010295508.0A
Other languages
English (en)
Other versions
CN102436310A (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.)
Wistron Corp
Original Assignee
Wistron Corp
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 Wistron Corp filed Critical Wistron Corp
Priority to CN201010295508.0A priority Critical patent/CN102436310B/zh
Publication of CN102436310A publication Critical patent/CN102436310A/zh
Application granted granted Critical
Publication of CN102436310B publication Critical patent/CN102436310B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Position Input By Displaying (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

本发明提供以键盘模拟鼠标装置的方法及输入装置。该用于一计算机系统中以键盘模拟鼠标的方法,包含有检测该计算机系统的一键盘的开关阵列中是否发生一按键事件;于检测到该按键事件时,判断该按键事件是否对应于一特定控制键;于该按键事件非对应于该特定控制键,并且该按键事件为一按键按压事件时,将发生该按键按压事件的一开关的行列位置转换为一座标;计算最近得到的二个座标之间的一位移数据;以及传送该位移数据至该计算机系统的一鼠标驱动单元,使该计算机系统的一操作系统通过该鼠标驱动单元,取得该位移数据,以控制该计算机系统的屏幕上一指标的移动。

Description

以键盘模拟鼠标装置的方法及输入装置
技术领域
本发明涉及一种用于计算机系统中以键盘模拟鼠标装置的方法及输入装置,特别是涉及一种通过按压键盘的按键,模拟鼠标装置所控制的指标移动的方法及输入装置。
背景技术
键盘、鼠标及触控板(Touchpad)为笔记型计算机所具备的标准输入装置。请参考图l,图1为现有的一输入装置10的示意图。输入装置10用于一笔记型计算机,其包含有一键盘100、一鼠标102及一触控板104。键盘100是由多个开关所组成的按键阵列,由一键盘控制器(Keyboard Controller)106检测各按键的按压情形,并通过键盘驱动单元110,将检测结果输出至一操作系统(Operating System)120。鼠标102包含按键、滚轮及移动感应器等,由内建的控制器检测各元件的触发情形,并通过一鼠标驱动单元112,将检测结果输出至操作系统120。触控板104由矩阵排列的触控元件所组成,由一触控板控制器108检测各触控元件的触控情形,并通过一触控板驱动单元114,将检测结果输出至操作系统120。
详细来说,当使用者选择英语做为键盘100所对应的语系后,若按下其中一按键时,键盘控制器106检测该按键的开关在开关阵列中所属的行列位置,并根据键盘语系所对应的键盘扫描码(Scan Code)对照表,取得开关的行列位置所对应的扫描码,输出至键盘驱动单元110。其中,按键按压(Key Press)事件及释放(Key Release)事件分别对应至不同的扫描码。接着,键盘驱动单元110将扫描码转换为操作系统120可处理的键码。由于每一字符或符号具有相对应的扫描码,操作系统120能够根据键盘驱动单元110产生的键码得知输入字符或符号,以进行正确的运算或显示。另外,当使用者移动鼠标102,内建的控制器取得鼠标102在X、Y轴的位移数据并传送至鼠标驱动单元112,操作系统120通过鼠标驱动单元112取得鼠标102的位移数据,据以控制计算机10的屏幕上显示的指标的移动。当使用者以触控板104控制指标移动时,触控板控制器108取得使用者的手指在触控板104上移动的X、Y轴位移数据,使操作系统120据以控制屏幕上指标的移动。
触控板提供了鼠标的功能,可代替鼠标运作,提高笔记型计算机的使用便利性。然而,触控板在笔记型计算机的机身中占据很大的面积,以目前将触控板位于键盘下方的配置而言,即使未使用触控板,使用者也可能在操作键盘时碰到触控板,导致指标错误移动。因此,当笔记型计算机朝小型化发展时,触控板的配置成为笔记型计算机能否小型化并兼顾实用性的关键。
发明内容
因此,本发明的主要目的是提供一种用于计算机系统中以键盘模拟鼠标的方法及输入装置。
本发明揭示一种用于一计算机系统中以键盘模拟鼠标的方法,包含有检测该计算机系统的一键盘的开关阵列中是否发生一按键事件;于检测到该按键事件时,判断该按键事件是否对应于一特定控制键;于该按键事件非对应于该特定控制键,并且该按键事件为一按键按压事件时,将发生该按键按压事件的一开关的行列位置转换为一座标;计算最近得到的二个座标之间的一位移数据;以及传送该位移数据至该计算机系统的一鼠标驱动单元,使该计算机系统的一操作系统通过该鼠标驱动单元,取得该位移数据,以控制该计算机系统的屏幕上一指标的移动。
本发明还揭示一种输入装置,用于一计算机系统,包含有一键盘;以及一键盘控制器,耦接于该键盘及该计算机系统之间。该键盘控制器用来检测该键盘的开关阵列中是否发生一按键事件;于检测到该按键事件时,判断该按键事件是否对应于一特定控制键;于该按键事件非对应于该特定控制键,并且该按键事件为一按键按压事件时,将发生该按键按压事件的一开关的行列位置转换为一座标;计算最近得到的二个座标之间的一位移数据;以及传送该位移数据至该计算机系统的一鼠标驱动单元,使该计算机系统的一操作系统通过该鼠标驱动单元,取得该位移数据,以控制该计算机系统的屏幕上一指标的移动。
附图说明
图1为现有的一输入装置的示意图。
图2为本发明实施例一输入装置的示意图。
图3为图2中键盘的一按键配置图。
图4为本发明实施例一流程的示意图。
附图符号说明
10、20                             输入装置
100、200                           键盘
102、202                           鼠标
104                                触控板
106、204                           键盘控制器
108                                触控板控制器
110、206                           键盘驱动单元
112、208                           鼠标驱动单元
114                                触控板驱动单元
120、210                           操作系统
40                                 流程
400、402、404、406、408、410、412  步骤
414、416、418、420
具体实施方式
请参考图2,图2为本发明实施例一输入装置20的示意图。输入装置20用于一计算机,其包含有一键盘200及一鼠标202。鼠标202以可插拔方式与计算机结合,而键盘200能够模拟鼠标202的运作,因此,输入装置20无须包含用来代替鼠标202的触控板,使计算机的外观能够更小型化。
在输入装置20中,键盘200是由一按键阵列所组成,而一键盘控制器204可根据一键盘扫描码对照表,将键盘200中每一按键按压及释放动作所产生的讯号转换为相对应的扫描码,输出至一键盘驱动单元206进行处理。键盘驱动单元206用来驱动键盘控制器204,并将扫描码转换为一操作系统210可处理的键码,进而控制计算机的运作。上述为键盘200用来进行一般字符输入功能时的相关运作,为本领域技术人员所熟知。另外,鼠标202包含按键、滚轮及移动感应器等,由内建的控制器检测各元件的触发情形;而一鼠标驱动单元208则用来驱动鼠标202,当鼠标202移动时,鼠标202内部的控制器输出X、Y轴的位移数据至鼠标驱动单元208,操作系统210根据鼠标202的X、Y轴的位移数据,控制计算机屏幕上指标的移动。
值得注意的是,键盘控制器204还用来将键盘200中一预定的操作区域内的每一按键的开关于开关阵列中的行列位置,转换为相对应的X、Y轴座标,用以表示操作区域中每一按键在实体平面上的位置。上述转换可通过开关的行列位置与相对应的座标的对照表得知,但不以此方式为限。键盘控制器204取得二个时间上连续被按压的按键所对应的座标后,进一步运算产生此二个按键的座标于X轴及Y轴的位移数据,输出至鼠标驱动单元208。键盘控制器204所输出的位移数据的格式与鼠标202所输出的位移数据的格式相同,对鼠标驱动单元208而言,鼠标驱动单元208只须将接收到的位移数据传送至操作系统210,操作系统210便能够根据位移数据控制屏幕上指标的移动。
为了实现键盘200模拟鼠标的功能,键盘200其中一按键可设定为键盘200模拟鼠标的功能键,用以启动或中止该功能。在键盘200模拟鼠标的功能启动时,当使用者以类似触控板的操作方式滑动按下键盘200的按键,键盘控制器204输出X、Y轴位移数据至鼠标驱动单元208,使操作系统210据以控制屏幕上指标的移动。请参考图3,图3为键盘200的一按键配置图。键盘200中用来模拟鼠标的操作区域的范围如粗黑线所框示,其中较佳地包含大小平均的按键,以提高滑动按键时的流畅度,并避免键盘控制器204于产生位移数据时形成较大误差。
举例来说,假设屏幕上显示指标原位于A点,在键盘200模拟鼠标的功能启动时,当键盘200的X、D、F、R、T键依序被按压,键盘控制器204依序转换X、D、F、R、T键的开关的行列位置,取得座标如(2,2)、(3,2)、(4,3)、(4,4),并据以产生位移数据(1,0)、(1,1)、(0,1)。上述位移数据通过操作系统210处理后,能够控制指标由A点向右、向右上,再向上移动至B点。较佳地,因为键盘控制器204是根据时间上连续取得的二个座标来计算位移数据,使用者可以仅依序按下对应于指标移动轨迹的起点及终点的按键,即可将指标移动至下一处。以前例来说,当X键及T键先后被按下,指标亦由A点移动至B点。
进一步地,为了完整模拟鼠标的运作,键盘200中可包含用来模拟鼠标202的左、中、右键的按键。例如图3所示的操作区域中,左边的Alt键可用来模拟鼠标左键,空白键可用来模拟鼠标中键,右边的Alt键可用来模拟鼠标右键。当键盘控制器204检测到模拟为鼠标左、中或右键的按键被按下时,键盘控制器204传送相对应的控制数据至鼠标驱动单元208,因此操作系统210能据以进行对应的动作。
关于键盘控制器204控制键盘200模拟鼠标的详细运作,请参考图4,其为本发明实施例一流程40的示意图。流程40为键盘控制器204所进行的流程,包含有以下步骤:
步骤400:开始。
步骤402:检测键盘200的开关阵列中是否发生一按键事件。若是,进行步骤404;若否,继续进行步骤402。
步骤404:判断该按键事件是否对应于操作系统210所使用的一特定控制键。若是,进行步骤406;若否,进行步骤408。
步骤406:传送该特定控制键所对应的一扫描码至操作系统210。
步骤408:判断该按键事件是否对应于一鼠标控制键。若是,进行步骤410;若否,进行步骤412。
步骤410:将该按键事件记录为一鼠标状态值,回到步骤402。
步骤412:判断该按键事件是否为一按键按压事件。若是,进行步骤414;若否,回到步骤402。
步骤414:将发生该按键按压事件的开关的行列位置转换为一座标。
步骤416:计算最近得到的二个座标之间的一位移数据。
步骤418:传送该鼠标状态值及该位移数据至鼠标驱动单元208。
步骤420:结束。
键盘控制器204是周期性扫描键盘200的开关阵列中的所有开关,例如一般PS/2规格的键盘的键盘控制器是以接近30KHz的频率对所有开关进行扫描,以检测键盘200的开关阵列中是否发生一按键事件,按键事件可能是键盘200其中一按键被按压(Key Press)或释放(Key Release),相对应于该按键的开关的导通状态。
步骤404至步骤420是于键盘200模拟鼠标的功能启动的状态下进行。当检测到一按键事件,根据步骤404,键盘控制器204判断按键事件是否对应于操作系统210所使用的一控制键,例如Shift键或Esc键等。当按键事件对应于控制键,意即被按压或释放的按键是控制键时,根据步骤406,键盘控制器204传送控制键所对应的一键盘扫描码(Scancode)至操作系统210;换言之,在键盘200模拟鼠标的功能启动的状态下,操作系统210的控制键仍是用来进行原本的任务,而不用来模拟鼠标。于传送扫描码之后,键盘控制器204持续检测有无按键事件发生。
当按键事件不对应于操作系统210所使用的控制键,意即被按压或释放的按键不是控制键时,根据步骤408,键盘控制器204进一步判断该按键事件是否对应于一鼠标控制键,意即被按压或释放的按键是否设定做为鼠标控制键使用,鼠标控制键为鼠标的左键、中键或右键。当按键事件对应于一鼠标控制键,根据步骤410,键盘控制器204将按键事件记录为一鼠标状态值,因此鼠标状态值须能够表示按键被按压或释放,例如可以0或1表示。于记录按键事件之后,键盘控制器204持续检测有无按键事件发生。上述步骤404及步骤408可归纳为:判断按键事件是否对应于一特定控制键。
进一步地,当按键事件不对应于操作系统210所使用的控制键,也不对应于任何一鼠标控制键,表示被按压或释放的按键位于键盘200中用来模拟鼠标移动的操作区域内,此时根据步骤412,键盘控制器204判断按键事件是否为按键按压事件。当按键事件为按键按压事件,键盘控制器204进行步骤414至步骤418;当按键事件不是按键按压事件而是按键释放事件时,键盘控制器204返回进行步骤402,检测下一按键事件。
步骤414至步骤418为键盘200模拟鼠标功能的主要步骤。键盘控制器204将发生按键按压事件的开关的行列位置,转换为一座标,以图3为例,假设F键的开关的行列位置为(Column 3,Row 12),当F键被按压时,F键送出电压讯号至键盘控制器204,键盘控制器能够根据此电压讯号得知是行列位置为(Column 3,Row 12)的开关被按下,因此将其转换为一座标(4,6)。请注意,键盘控制器204不能辨认被按压或释放的按键所代表的字符或功能,仅能根据各按键的开关于电路中的行列位置辨认各按键,开关的行列位置与使用者所见的实体按键的位置无关连性。因此,键盘控制器204必须进行步骤414的座标转换,才能于按压按键时连续取得相对应的座标,以模拟鼠标或触控板的移动轨迹。
于取得被按压的按键所对应的座标(x,y)之后,键盘控制器204计算最近得到的二个座标,亦即座标(x,y)与前一次取得的座标(x0,y0)之间的位移数据,并传送位移数据至鼠标驱动单元208。请注意,键盘控制器204传送的位移数据格式与鼠标202传送至鼠标驱动单元208的位移数据的格式相同。以PS/2规格的鼠标为例,传送至鼠标驱动单元208的数据包含有1byte的X轴座标位移、1byte的Y轴座标位移及3bit的鼠标左键、中键及右键的状态值,因此键盘控制器204是传送(x-x0)及(y-y0)的数据至鼠标驱动单元208。
根据步骤418,键盘控制器204除了传送位移数据,同时也传送鼠标状态值至鼠标驱动单元208。因此,操作系统210能够通过鼠标驱动单元208,取得与鼠标202所输出的鼠标状态值及位移数据相同格式的数据,将计算机屏幕上的指标移动至相对应的位置,并进行相对应的鼠标控制键运作。须注意的是,流程40的步骤404至步骤420是于键盘模拟鼠标的功能启动的状态下进行,在流程40进行中,若使用者操作相关功能键中止了键盘模拟鼠标的功能,流程40随即停止,键盘200及键盘控制器204回复运作于现有的字符输入模式。
如本领域的技术人员所熟知,鼠标的灵敏度可依据使用者需求,由计算机的操作系统进行调整,进而反应于屏幕上指标移动的速度。值得注意的是,图2的输入装置20及图4的流程40的重点在于以键盘控制器将连续产生的按键事件转换为座标,进而产生输入至鼠标驱动单元的位移数据,鼠标驱动单元与后端的操作系统的运作与现有技术相同。因此,应用流程40的计算机的屏幕上指标移动的速度,同样可由操作系统210以现有方式进行调整。
通过本发明实施例的流程及计算机系统,计算机的键盘能够模拟做为鼠标使用,计算机中无须设置触控板,因而大幅增加了计算机小型化的优势。
以上所述仅为本发明的较佳实施例,凡依本发明的权利要求所做的均等变化与修饰,皆应属本发明的涵盖范围。

Claims (12)

1.一种用于一计算机系统中以键盘模拟鼠标的方法,包含有:
检测该计算机系统的一键盘的开关阵列中是否发生一按键事件;
于检测到该按键事件时,判断该按键事件是否对应于一特定控制键;
于该按键事件非对应于该特定控制键,并且该按键事件为一按键按压事件时,将发生该按键按压事件的一开关的行列位置转换为一座标;
计算最近得到的二个座标之间的一位移数据;以及
传送该位移数据至该计算机系统的一鼠标驱动单元,使该计算机系统的一操作系统通过该鼠标驱动单元,取得该位移数据,以控制该计算机系统的屏幕上一指标的移动。
2.如权利要求1所述的方法,其中该特定控制键是该操作系统所使用的一控制键。
3.如权利要求1所述的方法,其中该特定控制键是一鼠标控制键。
4.如权利要求1所述的方法,还包含有:
于该按键事件对应于该特定控制键,并且该特定控制键是该操作系统所使用的一控制键时,传送该特定控制键所对应的一扫描码至该操作系统。
5.如权利要求1所述的方法,还包含有:
于该按键事件对应于该特定控制键,并且该特定控制键用来做为一鼠标控制键时,将该按键事件记录为一鼠标状态值。
6.如权利要求5所述的方法,还包含有:
于传送该位移数据至该鼠标驱动单元时,同时传送该鼠标状态值至该鼠标驱动单元。
7.一种输入装置,用于一计算机系统,包含有:
一键盘;以及
一键盘控制器,耦接于该键盘及该计算机系统之间,用来:
检测该键盘的开关阵列中是否发生一按键事件;
于检测到该按键事件时,判断该按键事件是否对应于一特定控制键;
于该按键事件非对应于该特定控制键,并且该按键事件为一按键按压事件时,将发生该按键按压事件的一开关的行列位置转换为一座标;
计算最近得到的二个座标之间的一位移数据;以及
传送该位移数据至该计算机系统的一鼠标驱动单元,使该计算机系统的一操作系统通过该鼠标驱动单元,取得该位移数据,以控制该计算机系统的屏幕上一指标的移动。
8.如权利要求7所述的输入装置,其中该特定控制键是该操作系统所使用的一控制键。
9.如权利要求7所述的输入装置,其中该特定控制键是一鼠标控制键。
10.如权利要求7所述的输入装置,其中该键盘控制器用来于该按键事件对应于该特定控制键并且该特定控制键是该操作系统所使用的一控制键时,传送该特定控制键所对应的一扫描码至该操作系统。
11.如权利要求7所述的输入装置,其中该键盘控制器用来于该按键事件对应于该特定控制键并且该特定控制键是一鼠标控制键时,将该按键事件记录为一鼠标状态值。
12.如权利要求11所述的输入装置,其中该键盘控制器还用来于传送该位移数据至该鼠标驱动单元时,同时传送该鼠标状态值至该鼠标驱动单元。
CN201010295508.0A 2010-09-29 2010-09-29 以键盘模拟鼠标装置的方法及输入装置 Active CN102436310B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010295508.0A CN102436310B (zh) 2010-09-29 2010-09-29 以键盘模拟鼠标装置的方法及输入装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010295508.0A CN102436310B (zh) 2010-09-29 2010-09-29 以键盘模拟鼠标装置的方法及输入装置

Publications (2)

Publication Number Publication Date
CN102436310A CN102436310A (zh) 2012-05-02
CN102436310B true CN102436310B (zh) 2014-09-24

Family

ID=45984406

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010295508.0A Active CN102436310B (zh) 2010-09-29 2010-09-29 以键盘模拟鼠标装置的方法及输入装置

Country Status (1)

Country Link
CN (1) CN102436310B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103677646B (zh) * 2012-09-19 2016-09-28 纬创资通股份有限公司 指针控制方法与指针控制装置
CN107357438B (zh) * 2017-07-22 2020-02-04 任文 一种键盘触摸屏虚拟鼠标功能的实现方法
CN109343661B (zh) * 2018-10-29 2022-04-29 吴崧毅 一种宏编程按键装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2665805Y (zh) * 2003-09-26 2004-12-22 英群企业股份有限公司 模拟键盘功能键输入的指针输入装置
CN101021747A (zh) * 2007-03-07 2007-08-22 赵俊峰 一种具有鼠标功能的键盘
CN101154137A (zh) * 2006-09-27 2008-04-02 联想(北京)有限公司 一种图形用户界面输入装置
CN101241397A (zh) * 2007-02-07 2008-08-13 罗伯特·博世有限公司 具有鼠标功能的键盘及其输入方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8059015B2 (en) * 2006-05-25 2011-11-15 Cypress Semiconductor Corporation Capacitance sensing matrix for keyboard architecture
US20100039404A1 (en) * 2008-08-18 2010-02-18 Sentelic Corporation Integrated input system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2665805Y (zh) * 2003-09-26 2004-12-22 英群企业股份有限公司 模拟键盘功能键输入的指针输入装置
CN101154137A (zh) * 2006-09-27 2008-04-02 联想(北京)有限公司 一种图形用户界面输入装置
CN101241397A (zh) * 2007-02-07 2008-08-13 罗伯特·博世有限公司 具有鼠标功能的键盘及其输入方法
CN101021747A (zh) * 2007-03-07 2007-08-22 赵俊峰 一种具有鼠标功能的键盘

Also Published As

Publication number Publication date
CN102436310A (zh) 2012-05-02

Similar Documents

Publication Publication Date Title
US9454239B2 (en) Enabling touch events on a touch sensitive mechanical keyboard
US9041652B2 (en) Fusion keyboard
KR101766187B1 (ko) 작동 모드들을 변화시키는 방법 및 장치
CN205485930U (zh) 输入装置和键盘
EP3190482B1 (en) Electronic device, character input module and method for selecting characters thereof
CN104641324A (zh) 姿势发起的键盘功能
CN102436310B (zh) 以键盘模拟鼠标装置的方法及输入装置
CN105446563B (zh) 降低等待时间的混合感测
US20130321320A1 (en) Touch input device, electronic apparatus, and input method
JP2009009252A (ja) タッチ式入力装置
CN104898852B (zh) 具有触控功能的键盘装置
CN101943985A (zh) 具有虚拟键盘的电子装置及其虚拟键盘操作方法
CN102999281B (zh) 输入方法和电子设备
TWI412957B (zh) 以鍵盤模擬滑鼠裝置的方法及輸入裝置
CN102571057A (zh) 无定位触摸按键控制装置及方法
US10877574B2 (en) Computer mouse, touchpad, input suite, and mobile device
JP2004220536A (ja) 情報処理装置の入力装置
US9134843B2 (en) System and method for distinguishing input objects
CN102929553A (zh) 利用产生于触控键盘的触控信号作为触控指令输入的方法
CN103064505A (zh) 用手指形态表示按键的模拟键盘
US20130063347A1 (en) Method of processing signal of portable computer and portable computer using the method
US11460930B2 (en) Keyboard with navigational control functions
CN101587418A (zh) 使用者界面的操作方法、电脑可读取媒体以及可携式装置
US20130318258A1 (en) Input system for host computer
KR20140107761A (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
C14 Grant of patent or utility model
GR01 Patent grant