Monkey可编程键盘控制器,让您的老键盘焕发青春!含教程和实例

作者:
瀏覽:648

何为Monkey?先看此贴介绍:http://bbs.kbc-china.com/thread-3572-1-1.html,简单的说,它是一个可编程的键盘控制器,通过它,以前的不同接口(比如XT,485,串口等)的老键盘可以改装成USB口的键盘,让你的老键盘不再躺在角落里作为收藏品,让它焕发青春!该控制器经过打样测试,目前已经批量生产。
帖子上用到的软件下载:http://ljy99731.6.vod899.cn/picture/Monkey/monkey.rar


Monkey三围:含mini USB座时:5*2*0.6(CM)(W*L*H),不包含mini USB座:5*2*0.4(cm)(W*L*H),体积小巧,即使是小键盘也可以轻松找到容身之处。   
正面说明


背面说明


尺寸图,不用我说啦,一看脚间距就知道装了插针以后可以直接插到面包板上的啦


全套套件,包括1.5米白色USB线一根,Monkey主板一块,扎线带一根,10cm左右的40P排线一条


板子功能见此贴:http://bbs.kbc-china.com/thread-3572-1-1.html

以下对板子各部分做说明:
正面部分
mini USB座(下面有4个焊盘,背面可看到,可选择焊接usb线)为Monkey与电脑通信的通道,作用不言自明。
左下角为电源指示灯(红色),上电正确会常亮,右边为“L1指示灯”,进入刷新固件模式的时候会闪烁(大概2Hz),指示灯上面是升级按键,当按住该按键再插入usb时进入固件升级模式,正常使用无需关心该按键,该按键连接到ROW1和COL1,如已连接键盘,也可按键盘上对应ROW1和COL1的按键代替该按键功能。
背面部分
ROW1~ROW18:行1~行18,接矩阵键盘的行线,顺序任意
COL1~COL8:列1~列8,接矩阵键盘的列线,顺序任意
LED组1:为Num Lock(简称NL,下同),Caps Lock(CL),Screen Lock(SL)三个指示灯接口,_R表示经过了Monkey上的限流电阻,可以直接接到矩阵按键板的led引脚上,适合按键板上没有电阻的键盘,如G84-4125,L1为层指示灯,没有_R表明没有串入限流电阻。
LED组2:目前功能均为连接LED接口,NL,CL,SL上面已经解释,没有_R表示没有串入限流电阻,适合按键板上指示灯已有限流电阻的键盘,可直接接到对应口上。L1,L2,L3为层指示灯,用来指示当前的层模式,有_R标志说明已经串入电阻,目前固件不提供层指示功能。
USB接口:mini USB接口暂不焊接,可根据需要自己焊接或提前说明需要焊接,因为焊接好该接口以后,当焊接usb线到+、-、D+、D-的时候可能会碰到mini USB的外壳导致短路,当需要焊接USB线时可以拔下mini USB座。
背面的Monkey为该主控名称,HW:A1表明硬件版本号是A1,以后的升级固件会指明所适用的硬件版本。

补充说明:
指示灯按公共端不同分共阴和共阳两种,如下图


其中公共端接VCC的为共阳接法,公共端接到Monkey的VCC脚上,反之为共阴接法,公共端接到Monkey的GND脚上。我们公布的两种固件,一个是对应共阴的,一个对应共阳的,可以自行更新。对于只有一个指示灯的小键盘,无需区分共阴还是共阳。
Monkey各个部分算是介绍完了,那么如何连接到你的键盘上呢?我们需要找到键盘的行列线,先看下面16*8矩阵键盘的等效图(实际键盘可能比下图的按键少)



由此我们可以看到,在行线与列线交叉的地方放置一个按键(S1~S128),共有128个按键可以使用,而且每根列线(标注为ROW)接了16个按键,而每根行线(COL)接了8个按键,因此,我们需要先把键盘原来的控制板拆除,如果是控制板和按键板一起的(如22R),则把板子上除了按键和跳线、指示灯外的部分全部拆除。然后通过键盘的走线,或者是用万用表(不要问我怎么用万用表-_-!)测量找出行列线,然后把行线接到Monkey上的任意ROWx上,列线接到Monkey的任意COLx上,对于部分行列线较少的键盘,用不到的引脚悬空即可;行和列少于8的非无冲键盘行列可以互换。最后再根据上面的说明,把三个指示灯(如果有)的线接上。Monkey与键盘按键板的连接完成。
什么?你问我拆下的控制板怎么办?这个。。你就来一次喜新厌旧吧。无视它好了,它已经没有用处了。
        现在把USB线接到Monkey板子上,请按以下定义连接:橙接+,白接-,蓝接D+,绿接D-,然后把USB线插到电脑上,如果在设备管理器出现下图的“USB人体学输入设备”,


说明电脑正确识别了Monkey,恭喜,你已经接近成功了!剩下的只是动动鼠标,敲敲键盘的事情。如果没有出现“USB人体学输入设备”,也不要担心,请仔细检查一下焊接是否可靠,是否有短路的,是否接错线,只要耐心+细心,这步是很容易的。
下面来说说如何配置你的键盘,真正让你的键盘活起来!
从我们给出的地址下载压缩包,安装里面的libusb-win32-devel-filter-1.2.1.0软件,一路next就可以了,然后打开开始菜单,找到LibUSB-Win32——>Enable filter(admin only),注意,只有管理员才有此权限!


之后会出来一个类似命令提示符的窗口,不用做任何操作,让软件自己安装驱动,这个时候USB设备会失去响应,视USB设备的多少,大概持续一分钟左右,安装完成后窗口会自动关闭。
打开压缩包里面的aikon. exe程序,如果看到左下角显示“connect”,说明驱动安装正常,软件已经找到Monkey了,点击“Key Map Read”从Monkey读取配置数据,如下图


在这里可以导入配置数据、导出配置数据、清除缓冲区配置数据、读取配置数据、写入配置数据等操作,当按键配置好以后可以导出备份,避免设置错乱以后恢复。
可以看到,因为没有配置过按键,所以绿色框里面的数据都是none,点击上面的Key Test选项卡进入按键配置界面,如下图


从这里可以看到,当你按下键上的某个键的时候,可以看到对应的矩阵行列值,所对应的按键及按键编码等,LED测试分别对NL,CL,SL三个灯进行测试,可以知道接线是否正确。因为还没有设定,所以对应的按键都为none,而矩阵行列值与实际的硬件连接有关,而不同的键盘每个键对应的矩阵值可能不同,即使是同一个键盘不同接法的矩阵值也会不同,这就是我们为什么要重新配置的原因,也是Monkey之意义所在!
由上图可以看到,程序处在读取按键状态,我按下的是行4列2交叉处的按键,在我的键盘(22R)上对应的是数字6,那么我需要在“按键设定区”点击数字6,软件会提示"Writing OK",则这个按键就设定好了!同时软件会显示该按键编码



如果我再次按下该键,因为已经设定好,所以软件会识别到这个按键,小键盘区的数字6会变黄(注意Fn键设定好以后按下是不会变黄的,但是软件会在“行列值所对应的按键”那里显示这个按键是Fn)



聪明的你应该知道如何操作了吧?其实是very easy的啦。。当全部按键设定完毕以后,最最重要的一步,要点击“Key Map Fix",否则刚才的设定将前功尽弃,因为键盘掉电的时候当前配置数据将全部丢失!
让我们看看设定好以后缓冲区里面有什么


这就是刚才设定的行列值所对应的按键(我只设定了部分按键),都自动填到里面了,如果你刚才没有点击"Key Map Fix",现在赶紧点击一下"Key Map Write"吧。之后,这个键盘在其他电脑上就可以使用了(即插即用),不需要手动安装任何驱动和软件。
         刚才我们看到,aikon软件支持三层,第一层即为键盘默认工作层,也是最常用的,所对应的为按键上对应的按键,比如按下7就是数字7,按shift+7是&
         第二层为与Fn组合实现其他按键功能,按键较少的键盘常用组合键达到输入键盘上没有的按键的目的(比如G84-4100用Fn+F1实现F11功能),在全键盘上一般不需要Fn组合键,因为软件上最多也就支持105个按键而已(含Fn)
        第三层为NumLock键按下,NumLock灯熄灭时所在的层,只对小键盘区有效,此时小键盘区数字键作为方向键及翻页键等功能使用,比如NumLock灯亮时按小键盘区数字4是输入的是4,当NumLock熄灭时候则为←键。
以上是个人对三个层的理解,如有错误之处,欢迎指出。
下面再卖弄一下如何设置各个层的功能
以我手上的22R为例,刚才我已经设定好了数字键,现在我希望按下Fn+6的时候执行的是F6功能键,需要按下图设定



注意只需要勾选Function前的勾,表示只对该层设定,按下数字6,软件可以正常检测到,此时点击一下F6,软件提示Writing OK,则Fn+6=F6就设定好了!
现在按下Fn+6看看,F6变黄了!


注意到Fn与其他按键组合的时候软件只显示Fn的键码,这是因为软件显示的是最后按下的键码,组合键的时候Fn是最先按下最后放开的。虽然软件上键码看着不顺眼,但是组合键确实成功了!
按上面的方法,也可以改掉NumLock键熄灭的时候小键盘区的默认功能键(比如把4改成F4),如何修改自己摸索一下就知道啦。
最后,我们再来看看软件的option,看看可以做什么


第一项N-key Rollover的意思是,如果你的键盘矩阵支持无冲(也就是串有二极管,极性为ROW正COL负),使能该选项可以支持无冲(没有无冲键盘,未测试)
第二项ScrolLock LED->FN LED的意思是,可以用卷帘指示灯(ScrolLock LED)代替FN LED,使能的时候,当按下Fn时,ScrolLock LED亮,而当按下ScrolLock键时,将用单闪和双闪提示ScrolLock的开闭(已测试通过)
第三项FN Lock的意思是,如果使能该选项,你可以通过连按三次进入Fn锁定模式,此时按下的键将作为Fn+该键的组合键输出,当需要解锁时,只需再按一次Fn键,配合第二项的指示灯更直观。(已测试通过)
注意,上面三项设置好后需要点击Apply才会生效

刚才提到,由于指示灯有共阴和共阳不同的接法,我们会提供两个固件,下面说说如何通过USB口更新固件。
按住Monkey上的升级按钮(如果Monkey已经安装到键盘上,可以通过aikon找到对应行1列1的按键,按住此键功能与升级按钮相同),然后把Monkey与电脑连接,Monkey上的L1指示灯将闪烁,如果是装好的键盘,NL,CL,SL三个指示灯也会闪烁,然后打开我们给出的HIDBootFlash软件,如下图



点击Find Device按钮,软件会找到Monkey,此时其他按钮可用



软件会自动查找到当前目录下的hex文件,我们也可以手动加载HEX文件,点击open.hex file,找到要刷新的HEX文件(如下图为Monkey for A1.hex)



返回程序,点击右边的Flash Device,软件即开始刷新固件



正在刷新固件,软件显示写入地址


固件刷新完成,重新上电就可以按新的固件工作了。



至此,Monkey使用说明基本完成,个人能力有限,如有不足,请联系我们。

以下以修改22R做个实例(Monkey为之前的打样版本,跟目前版本差别不大)

拆掉22R后面的两颗螺丝,可以很轻易的打开后盖,拔掉全部键帽,拆除全部与矩阵无关的元件,找到行列焊点


把找到的行列及NL接线焊接到Monkey的ROW,COL(行列小于8的非无冲键盘行列可以互换)上


再来看看排线下面是怎么焊接的


全部接线就完成了,把Monkey放到22R上面的空间,刚好合适,USB线从原来的串口线引出,看一下最后改装好的,是不是很清爽呢?