生成配列和定位板
矩阵键盘
键盘是通过按下某个键来给电脑发送按键的信号,按键的电路设计有许多,比如独立IO和矩阵电路。各有各的优缺点。这里主要讲独立IO和矩阵电路。
独立IO接口
所谓的独立IO就是给配个按键分配两个IO接口,如果有N个按键,那么就需要有N*2个接口,显然这会大大怎么设计生成,而且芯片的IO接口是非常有限的,除非通过IO扩展芯片来增加,这样不仅增加了设计难度,还增加了成本。
假设现在有个3行3列的正方形键盘,9个按键,如果使用独立IO的话,总共需要18个IO接口,听上去不是很多,如果30个按键呢,那就更多了,显然这种方案是不行的。
矩阵IO接口
有没有什么办法能节省IO接口呢?当然是有的,键盘都是由N行M列组成的,每个按键都有自己的行号和列号,那么,我们可以把每行串联起来,每列串联起来,按下某个按键的时候就发送行号和列号,这样就能知道是哪个按键被按下,给电脑发送什么按键信号了。
假设现在有个3行3列的正方形键盘,9个按键,如果使用矩阵IO的话,总共就需要6个IO接口,节省大量的IO接口。
生成键盘配列
所谓的键盘配列就是给每个按键配置行号和列号,这里配列主要是为后面电路设计准备。
首先回到https://www.keyboard-layout-editor.com/网站,打开在下方的Raw data栏
在右下角找到红框的按钮,上传我们之前保存的布局文件。上传后就会自动恢复到我们的布局了,把文本框里的内容全部复制下来。
打开https://kbfirmware.com/网站,在红框处把复制的内容粘贴上去,点击下方的Import,网站会自动为我们生成配列。
这是网站自动生成的配列,可以看到每个按键都有行号和列号,注意,行号和列号不是从不是1开始,而是从0开始。
生成的配列的最大行号是6,最大列号是是15,也就是说需要7行16列,实际上我们设计的键盘有6行15列,所以,我们要手动修改下配列。
点击任意按键后,可以在红框的位置修改行号和列号。
这是修改过后的配列,明显比前面的整洁多了,而且最大行号是6,最大列号是14,完全符合我们的设计,最后把配列截图保存下载,后面要用到。
生成定位板
定位板就是给每个按键固定位置,主要是按键插座定位,每个键盘都有自己的大小,如果手动定位的话,那也太麻烦了,所以我们通过工具生成定位板。
打开http://builder.swillkb.com/网站,把布局的代码粘贴到Plate Layout输入框里。Switch Type按键开口类型选择MX,这是最常见的一种,Stabilizer Type卫星轴开口类型选择_s:1或者_s:2都可以,这里选择_s:2,方便后面修改,最后点击下方的按钮就可以生成定位板。
这是生成好的定位板,点击右上方的DXF,下载定位板文件,保存好,后面还会用到。