以键盘模拟鼠标装置的方法及输入装置的制作方法

文档序号:6332967阅读:200来源:国知局
专利名称:以键盘模拟鼠标装置的方法及输入装置的制作方法
技术领域
本发明涉及一种用于计算机系统中以键盘模拟鼠标装置的方法及输入装置,特别是涉及一种通过按压键盘的按键,模拟鼠标装置所控制的指标移动的方法及输入装置。
背景技术
键盘、鼠标及触控板(Touchpad)为笔记型计算机所具备的标准输入装置。请参考图1,图1为现有的一输入装置10的示意图。输入装置10用于一笔记型计算机,其包含有一键盘100、一鼠标102及一触控板104。键盘100是由多个开关所组成的按键阵列,由一键盘控制器(Keyboard Controller) 106检测各按键的按压情形,并通过键盘驱动单元 110,将检测结果输出至一操作系统(Operating System) 120。鼠标102包含按键、滚轮及移动感应器等,由内建的控制器检测各元件的触发情形,并通过一鼠标驱动单元112,将检测结果输出至操作系统120。触控板104由矩阵排列的触控元件所组成,由一触控板控制器 108检测各触控元件的触控情形,并通过一触控板驱动单元114,将检测结果输出至操作系统 120。详细来说,当使用者选择英语做为键盘100所对应的语系后,若按下其中一按键时,键盘控制器106检测该按键的开关在开关阵列中所属的行列位置,并根据键盘语系所对应的键盘扫描码Gcan 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、20100、200102、202104106、204108110、206112、208114120、21040400、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的Χ、Υ轴的位移数据,控制计算机屏幕上指标的移动。值得注意的是,键盘控制器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所使用的一控制键,例如Siift键或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 的数据包含有Ibyte的X轴座标位移、Ibyte的Y轴座标位移及!Bbit的鼠标左键、中键及右键的状态值,因此键盘控制器204是传送(x-xO)及(y-yO)的数据至鼠标驱动单元208。根据步骤418,键盘控制器204除了传送位移数据,同时也传送鼠标状态值至鼠标驱动单元208。因此,操作系统210能够通过鼠标驱动单元208,取得与鼠标202所输出的鼠标状态值及位移数据相同格式的数据,将计算机屏幕上的指标移动至相对应的位置,并进行相对应的鼠标控制键运作。须注意的是,流程40的步骤404至步骤420是于键盘模拟鼠标的功能启动的状态下进行,在流程40进行中,若使用者操作相关功能键中止了键盘模拟鼠标的功能,流程40随即停止,键盘200及键盘控制器204回复运作于现有的字符输入模式。如本领域的技术人员所熟知,鼠标的灵敏度可依据使用者需求,由计算机的操作系统进行调整,进而反应于屏幕上指标移动的速度。值得注意的是,图2的输入装置20及图4的流程40的重点在于以键盘控制器将连续产生的按键事件转换为座标,进而产生输入至鼠标驱动单元的位移数据,鼠标驱动单元与后端的操作系统的运作与现有技术相同。因此,应用流程40的计算机的屏幕上指标移动的速度,同样可由操作系统210以现有方式进行调整。通过本发明实施例的流程及计算机系统,计算机的键盘能够模拟做为鼠标使用, 计算机中无须设置触控板,因而大幅增加了计算机小型化的优势。以上所述仅为本发明的较佳实施例,凡依本发明的权利要求所做的均等变化与修饰,皆应属本发明的涵盖范围。
权利要求
1.一种用于一计算机系统中以键盘模拟鼠标的方法,包含有 检测该计算机系统的一键盘的开关阵列中是否发生一按键事件; 于检测到该按键事件时,判断该按键事件是否对应于一特定控制键;于该按键事件非对应于该特定控制键,并且该按键事件为一按键按压事件时,将发生该按键按压事件的一开关的行列位置转换为一座标; 计算最近得到的二个座标之间的一位移数据;以及传送该位移数据至该计算机系统的一鼠标驱动单元,使该计算机系统的一操作系统通过该鼠标驱动单元,取得该位移数据,以控制该计算机系统的屏幕上一指标的移动。
2.如权利要求1所述的方法,其中该特定控制键是该操作系统所使用的一控制键。
3.如权利要求1所述的方法,其中该特定控制键是一鼠标控制键。
4.如权利要求1所述的方法,还包含有于该按键事件对应于该特定控制键,并且该特定控制键是该操作系统所使用的一控制键时,传送该特定控制键所对应的一扫描码至该操作系统。
5.如权利要求1所述的方法,还包含有于该按键事件对应于该特定控制键,并且该特定控制键用来做为一鼠标控制键时,将该按键事件记录为一鼠标状态值。
6.如权利要求5所述的方法,还包含有于传送该位移数据至该鼠标驱动单元时,同时传送该鼠标状态值至该鼠标驱动单元。
7.一种输入装置,用于一计算机系统,包含有 一键盘;以及一键盘控制器,耦接于该键盘及该计算机系统之间,用来 检测该键盘的开关阵列中是否发生一按键事件; 于检测到该按键事件时,判断该按键事件是否对应于一特定控制键; 于该按键事件非对应于该特定控制键,并且该按键事件为一按键按压事件时,将发生该按键按压事件的一开关的行列位置转换为一座标; 计算最近得到的二个座标之间的一位移数据;以及传送该位移数据至该计算机系统的一鼠标驱动单元,使该计算机系统的一操作系统通过该鼠标驱动单元,取得该位移数据,以控制该计算机系统的屏幕上一指标的移动。
8.如权利要求7所述的输入装置,其中该特定控制键是该操作系统所使用的一控制键。
9.如权利要求7所述的输入装置,其中该特定控制键是一鼠标控制键。
10.如权利要求7所述的输入装置,其中该键盘控制器用来于该按键事件对应于该特定控制键并且该特定控制键是该操作系统所使用的一控制键时,传送该特定控制键所对应的一扫描码至该操作系统。
11.如权利要求7所述的输入装置,其中该键盘控制器用来于该按键事件对应于该特定控制键并且该特定控制键是一鼠标控制键时,将该按键事件记录为一鼠标状态值。
12.如权利要求11所述的输入装置,其中该键盘控制器还用来于传送该位移数据至该鼠标驱动单元时,同时传送该鼠标状态值至该鼠标驱动单元。
全文摘要
本发明提供以键盘模拟鼠标装置的方法及输入装置。该用于一计算机系统中以键盘模拟鼠标的方法,包含有检测该计算机系统的一键盘的开关阵列中是否发生一按键事件;于检测到该按键事件时,判断该按键事件是否对应于一特定控制键;于该按键事件非对应于该特定控制键,并且该按键事件为一按键按压事件时,将发生该按键按压事件的一开关的行列位置转换为一座标;计算最近得到的二个座标之间的一位移数据;以及传送该位移数据至该计算机系统的一鼠标驱动单元,使该计算机系统的一操作系统通过该鼠标驱动单元,取得该位移数据,以控制该计算机系统的屏幕上一指标的移动。
文档编号G06F3/023GK102436310SQ201010295508
公开日2012年5月2日 申请日期2010年9月29日 优先权日2010年9月29日
发明者李元展 申请人:纬创资通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1