专利名称:键盘测试方法
技术领域:
本发明是关于一种测试方法,尤其是关于一种键盘的测试方法。
背景技术:
随着科技日益发达,无论是工作或是休闲娱乐,电脑以及其外围设备已是每个人日常生活中的一部分,而作为电脑以及使用者间的桥梁的输入装置亦受到相当大的重视。输入装置包括鼠标、键盘以及轨迹球等,其中以可利用多按键输入指令及文字至电脑的键
盘装置最为重要。请参阅第I图,其为现有键盘装置的外观结构示意图。现有键盘装置I的表面上 设有多个按键,该些按键被分类为字母键10、数字键11、功能键12以及依各家厂商设计出的不同的特殊按键13等,而该些字母键10、数字键11、功能键12亦被通称为一般按键,键盘上的按键是供使用者以手指触压而产生相对应的信号至电脑,使电脑执行被触压的按键功能,字母键10用以输入英文字母等符号,数字键11用以输入数字,功能键12则用以提供各种功能,例如Fl F12等。其中,最特别的是特殊按键13,该特殊按键13通常用以控制键盘本身状态或是电脑主机的状态,常见的特殊按键13包括有休眠键、唤醒键以及关闭电源键,特殊按键与上述其它按键最大不同之处在于,特殊按键输入至电脑主机中的按键码格式与其它一般按键不同,举例来说,特殊按键的按键码格式通常以0x02为开始,并且整个按键码长度通常少于八个字节,例如休眠键为0x020x02,而其它按键的按键码的格式则为0x01。换句话说在USB键盘中的特殊按键通常它的用法页(Usage Page)不同于一般按键的用法页。键盘装置于制造过程中必须经过测试,以确保键盘装置可正常工作。而键盘装置的测试包括对键盘装置的电路板的测试以及对组装完成的键盘装置进行完整的测试。以已组装完成的键盘来说,现有测试方法会先将键盘插上测试主机,接着,以人工手动方式或以机器自动方式依序敲打按键,此时,键盘将输出按键码至测试主机中,在测试主机将该按键码转换为虚拟码后,会由安装于主机的测试程序自动判断该虚拟码是否与预设于测试主机中的正确的按键码相同,若依序按压完全部按键,并都符合上述条件,则判断此键盘通过测试。然而,现有用以测试的主机的系统多为windows,而测试程序则多利用Labview软件所写,在windows系统中,一般按键皆有预设其对应的虚拟按键码,而如上述的特殊按键的按键码格式在测试主机的系统(windows)中则是未被定义的,也就是说若于测试时按压特殊按键,测试主机的系统无法提供按压特殊按键的虚拟码,因此测试程序无法进行测试。
发明内容
本发明要解决的技术问题在于,针对现有技术存在的上述不足,提供一种键盘测试方法,能够测试键盘上的特殊按键,包括休眠键、唤醒键、关闭电源键及退片键。本发明解决其技术问题所采用的技术方案是提供一种键盘测试方法,用以测试一键盘的至少一特殊按键输出至一主机的一特殊信息与至少一一般按键输出至该主机的一一般信息,其中该特殊信息与该一般信息的编码格式不同,该方法包括下列步骤(A)接收该键盘输出的一按键信息;(B)侦测输出至该主机的该按键信息是否为该特殊信息,若是,则进行步骤(C),若否,该按键信息是为该一般信息,则进行步骤(E); (C)拦截该特殊信息并转换该特殊信息的编码;(D)接收已转换编码的该特殊信息并判断其是否为预设的至少一按键编码,若是,则进行步骤(F),若否,则显示该键盘的一测试结果;(E)处理该一般信息并判断其是否为预设的该按键编码,若是,则进行步骤(F),若否,则显示该键盘的一测试结果;以及(F)判断是否已测试完该键盘的所有按键,若否,则进行步骤(A),若是,则显示该键盘的一测试结果。较佳地,该特殊按键是该键盘上的休眠键、唤醒键、关闭电源键或退片键。较佳地,该主机包括一屏幕,该屏幕显示该键盘的所有按键的图式。较佳地,于步骤(D)中,当判断已转换编码的该特殊信息的编码为预设的一按键编码时,还包括使该屏幕上对应该特殊信息的特殊按键的图标改变颜色的步骤,以供一使用者判定测试结果。较佳地,于步骤(E)中,当判断该一般信息的编码为预设的该按键编码时,还包括使该屏幕上对应该一般信息的一般按键的图标改变颜色的步骤,以供一使用者判定测试结果。较佳地,步骤(B)的侦测输出至该主机的该按键信息是否为该特殊信息,以及步骤(C)的拦截该特殊信息并转换该特殊信息的编码是由安装于该主机的一信息拦截模块(hook)执行。较佳地,于步骤(C)中,转换该特殊信息的编码包括依据该特殊按键的按压状态而呼叫预存于该信息拦截模块中的一特定按键事件(Key event),以便将该特殊信息的编码格式转换为一虚拟按键码的格式。较佳地,步骤(D)、步骤(E)与步骤(F)由安装于该主机的一键盘测试模块以及一信息拦截模块执行。较佳地,步骤(E)中的处理该一般信息包括将该一般信息转换为对应的一虚拟按键码。本发明的键盘测试方法透过于主机中安装该信息拦截模块,以拦截键盘输出的特殊信息并转换其编码,达成测试键盘上的特殊按键的功能,当使用者已使用键盘测试模块,则不需修改键盘测试模块,只需安装该信息拦截模块,便可达成测试键盘上所有一般按键与特殊按键的功能。
图I是现有键盘装置的外观结构示意图。图2是本发明键盘测试方法于第一较佳实施例中的流程图。图3是本发明键盘测试方法于第一较佳实施例中实施本发明键盘测试方法的系、统方块图。图4是本发明键盘测试方法第一较佳实施例于测试时屏幕的示意图。
具体实施例方式请参阅图2、3,其分别为本发明键盘测试方法于第一较佳实施例中的流程图与实施本发明测试方法的系统方块图。在开始测试键盘前,使用者需先将一键盘测试模块25与一信息拦截模块26安装于一主机20,该主机20的操作系统为一般常见的windows系统,而该键盘测试模块25则为Labview模块,该主机20包括一屏幕24以显示测试结果供使用者检视。开始测试时,使用者需将待测的键盘21连接至该主机20,该键盘21上具有多个一般按键22与至少一个特殊按键23。开始进行测试时,使用者需依序敲打该键盘21的按 键,或者可另外设计而使机械臂或打击头自动依序敲打该键盘21的按键,使该键盘21得以输出按键信息至该主机20,此时,便进行本发明键盘测试方法的步骤101,接收该键盘21输出的一按键信息。当使用者敲打按键时,键盘21便会输出按键信息至该主机20,其中,若敲打一般按键22,则该按键信息为一一般信息221,而若是敲打特殊按键23,则该按键信息为一特殊信息231,此处所指的特殊按键23,为键盘21上的休眠键、唤醒键、关闭电源键或退片键。当主机接收该键盘21输出的一按键信息,便进行步骤102,侦测输出至该主机20的该按键信息是否为该特殊信息231,若否,则该按键信息为该一般信息221,进入步骤105,若是特殊信息则进入步骤103,拦截该特殊信息231并转换该特殊信息231的编码。需特别说明的是,该信息拦截模块26为一种hook模块,亦即,实际实施时在系统为windows的主机20安装该信息拦截模块26,该信息拦截模块26为一较windows系统内建的hook模块更底层的信息撷取模块,此部分应为本领域普通技术人员所知悉,故不多赘述。 当该信息拦截模块26拦截到该特殊信息231后,举例来说,使用者按下睡眠键,则输出至主机20的特殊信息的编码0x02 0x02便会被该信息拦截模块26拦截。拦截该特殊信息231后,该信息拦截模块26便依据该特殊按键23的按压状态而呼叫预存于该信息拦截模块中的一特定按键事件(Key event),以便将该特殊信息的编码格式转换为一虚拟按键码的格式(VK_Code),亦即,仿真该一般按键22被按压的情形。以下详细说明之,此处所述的将该特殊信息231的编码格式转换为一虚拟按键码的格式是指,于设计信息拦截模块时,预先设定将特殊信息转换为一虚拟按键码,当然,该虚拟按键码并不能与一般信息221 (此一般信息是指该键盘常见的一般按键所输出的一般信息)所对应的虚拟按键码相同,亦即,在设计时,需使用windows系统有预设虚拟按键码而并无设计于一般键盘上的按键,如F13、F14、F15等按键的虚拟按键码,举例来说,将拦截到的该特殊信息的编码0x02 0x02转换为虚拟按键码VK_F14 (此为按键F14输入至主机后所转换的虚拟按键码),如此一来,便不会与转换一般信息后所产生的虚拟按键码重复而造成误判。承上所述,经转换之后的特殊信息232便可以被键盘测试模块25所识别,接着,进行步骤104,接收已转换编码的该特殊信息232并判断其是否为预设的至少一按键编码。此处所指的按键编码即为该键盘测试模块25内预设的虚拟按键码,在Windows系统中,每个一般按键皆预设有其对应的虚拟按键码,而该键盘测试模块亦预设有该些虚拟按键码以供比对,举例来说,该键盘测试模块25便接收该虚拟按键码并判断虚拟按键码(VK_F14)是否为预设的至少一按键编码,若是,则通过对此该特殊按键的测试,并进入步骤106,判断是否已测试完该键盘的所有按键,若否,则进行步骤107,于该屏幕显示该键盘的测试结果,也就是显示该特殊按键没通过测试。在步骤106判断是否已测试完该键盘的所有按键中,该判断是依据是否所有预设的按键编码皆有相符合的虚拟按键码,若是,则判定该键盘21通过测试,则会在该屏幕上显示此键盘通过测试的信息,若尚有按键未通过测试,则重复进行步骤 101。在步骤102侦测输出至该主机的该按键信息是否为该特殊信息231的过程中,若判定该按键信息并非为特殊信息231时,该按键信息为一般信息221,此时,进行步骤105,处理该一般信息221并判断其是否为预设的该按键编码,该主机20的Windows系统内建的模块是将该一般信息221自动转换成对应的一虚拟按键码,当该一般信息221自动转换成对应的该虚拟按键码后,该键盘测试模块25便可辨识,并判断其是否为预设的该按键编码,若是,则进行步骤106判断是否已测试完该键盘的所有按键,若否即不为预设的该按键·编码,则进行步骤107,于该屏幕显示该键盘的一测试失败信息。以下补充说明,请参阅图4,其为本发明键盘测试方法的第一较佳实施例于测试时屏幕的示意图。当测试进行时,该测试模块25于该屏幕24显示该键盘21的所有按键的图标,如图所示的一般按键的图标251与特殊按键的图标252,当进行步骤104时,若判断已转换编码的该特殊信息232的编码为预设的一按键编码,则该屏幕24上对应该特殊信息的特殊按键的图标会改变颜色,如图所示,特殊按键的图式252改变颜色,使使用者可以藉由屏幕24 了解目前键盘测试情形,需特别说明的是,在进行步骤104时,虽然键盘测试模块25实际上依据不存在的按键(例如按键F14)对应的虚拟按键码进行判断,旦依照图形化程序设计,仍然可使该特殊按键的图标252于该屏幕24上改变颜色。相同地,当进行步骤105时,当判断转换该一般信息221后的虚拟按键码为预设的按键编码时,则该屏幕24上对应该一般信息的一般按键的图标251亦改变颜色。在其它较佳实施例中,该键盘测试模块25更包括一预设按键码脚本,使该键盘测试模块自动根据该预设按键码脚本而判断该虚拟按键码是否正确。综合以上所述,本发明的键盘测试方法透过于主机中安装该信息拦截模块,以拦截键盘输出的特殊信息并转换其编码,达成测试键盘上的特殊按键的功能,当使用者已使用键盘测试模块,则不需修改键盘测试模块,只需安装该信息拦截模块,便可达成测试键盘上所有一般按键与特殊按键的功能。以上所述仅为本发明的较佳实施例,并非用以限定本发明的权利要求范围,因此凡其它未脱离本发明所揭示的精神下所完成的等效改变或修饰,均应包含于本发明的范围内。
权利要求
1.一种键盘测试方法,用以测试一键盘的至少一特殊按键输出至一主机的一特殊信息与至少般按键输出至该主机的般信息,其中该特殊信息与该一般信息的编码格式不同,其特征在于,该方法包括下列步骤 (A)接收该键盘输出的一按键信息; (B)侦测输出至该主机的该按键信息是否为该特殊信息,若是,则进行步骤(C),若否,该按键信息是为该一般信息,则进行步骤(E); (C)拦截该特殊信息并转换该特殊信息的编码; (D)接收已转换编码的该特殊信息并判断其是否为预设的至少一按键编码,若是,则进行步骤(F),若否,则显示该键盘的一测试结果; (E)处理该一般信息并判断其是否为预设的该按键编码,若是,则进行步骤(F),若否,则显示该键盘的一测试结果;以及 (F)判断是否已测试完该键盘的所有按键,若否,则进行步骤(A),若是,则显示该键盘的一测试结果。
2.如权利要求I的键盘测试方法,其特征在于,该特殊按键是该键盘上的休眠键、唤醒键、关闭电源键或退片键。
3.如权利要求I的键盘测试方法,其特征在于,该主机包括一屏幕,该屏幕显示该键盘的所有按键的图式。
4.如权利要求3的键盘测试方法,其特征在于,于步骤(D)中,当判断已转换编码的该特殊信息的编码为预设的一按键编码时,还包括使该屏幕上对应该特殊信息的特殊按键的图标改变颜色的步骤,以供一使用者判定测试结果。
5.如权利要求3的键盘测试方法,其特征在于,于步骤(E)中,当判断该一般信息的编码为预设的该按键编码时,还包括使该屏幕上对应该一般信息的一般按键的图标改变颜色的步骤,以供一使用者判定测试结果。
6.如权利要求I的键盘测试方法,其特征在于,步骤(B)的侦测输出至该主机的该按键信息是否为该特殊信息,以及步骤(C)的拦截该特殊信息并转换该特殊信息的编码是由安装于该主机的一信息拦截模块执行。
7.如权利要求6的键盘测试方法,其特征在于,于步骤(C)中,转换该特殊信息的编码包括依据该特殊按键的按压状态而呼叫预存于该信息拦截模块中的一特定按键事件,以便将该特殊信息的编码格式转换为一虚拟按键码的格式。
8.如权利要求I的键盘测试方法,其特征在于,步骤(D)、步骤(E)与步骤(F)由安装于该主机的一键盘测试模块以及一信息拦截模块执行。
9.如权利要求I的键盘测试方法,其特征在于,步骤(E)中的处理该一般信息包括将该一般信息转换为对应的一虚拟按键码。
全文摘要
本发明关于一种键盘测试方法,用以测试键盘上的一般按键与特殊按键。本发明方法包括接收该键盘输出的一按键信息,侦测该按键信息是否为一特殊信息,若是,则拦截并转换该特殊信息的编码并判断是否为预设的至少一按键编码,若该按键信息为一一般信息,则处理该一般信息后判断是否为预设的按键编码其中之一,最后判断是否已测试完该键盘的所有按键,本发明的方法可达成测试键盘的特殊按键的效果。
文档编号G06F11/26GK102760091SQ20111010298
公开日2012年10月31日 申请日期2011年4月25日 优先权日2011年4月25日
发明者张倍铭 申请人:致伸科技股份有限公司