- · 《中华少年》数据库收录[05/28]
- · 《中华少年》收稿方向[05/28]
- · 《中华少年》投稿方式[05/28]
- · 《中华少年》征稿要求[05/28]
- · 《中华少年》刊物宗旨[05/28]
华为天才少年稚晖君做了一把模块化机械键盘,
作者:网站采编关键词:
摘要:但是,你以为到这里就结束了?NO! 看一看键盘左边这个玩意:竟然是一块屏幕!还真是「万物皆可加屏幕」? 稚晖君表示:接下来,正片开始! 如果说以上模块都是为了酷炫而设计,
但是,你以为到这里就结束了?NO! 看一看键盘左边这个玩意:竟然是一块屏幕!还真是「万物皆可加屏幕」?
稚晖君表示:接下来,正片开始!
如果说以上模块都是为了酷炫而设计,那么USB HUB处的设计,才体现了稚晖君「真正想做点什么」。
先从电路硬件说起,怎么检测某个按键是否被按下了呢?
而对于科技小白来说,稚晖君也贴心地配备了配套傻瓜软件工具,只需要鼠标将电脑屏幕上的图片「瀚安」拖入工具中,「瀚安」几乎一眨眼便出现在了墨水屏幕上,比更换手机壁纸还要简单。
从键盘的「精魂」电路、「骨架」模块化再到外观,稚晖君确实在键盘功能上加入了自己的思考,并进行了有效设计,而不仅仅是在外壳上大动干戈。
将客制化进行到底,稚晖君还自己开发了一套键盘固件!
很简单,中学物理告诉我们,每个建轴是一个独立的开关,按下和弹起会分别导通 0 和 1,控制器芯片就可以检测按键的高低电平。但是......现实没有这么简单。
智能交互模块
因此,这款键盘虽然也有缺点(如不能无线),却着实在极客发烧友中引起了一次小型地震,稚晖君「一人顶一个团队」的声名逐渐广为人知。
他来了他来了,一人顶一个团队的稚晖君又一次带着一项硬核(虽然他强调是“软核”)黑科技来了!
不过,非比寻常的设计必然带来非常规的工程难点:
有解决办法吗?稚晖君说有,而且是一个完美方案:使用移位寄存器来实现按键扫描。
但这样一来,按键之间就存在耦合,所以会出现「鬼键」现象。有解决办法吗?当然还是有,我们可以在每个按键下面添加一个二极管来防止误触发。
USB HUB
而稚晖君开发的这套固件,基本上把全速HID设备的性能都拉到顶了。
这小小一隅,可以是你喜欢的图片、天气预报、Github贡献墙、电脑剩余电量等状态显示等等……
https://www.zhihu.com/question/545024674
稚晖君曾经发布过一个视频,展示如何通过FOC控制把一个无刷电机模拟成各种物理效果的旋钮。融合了该设计,这个滚轮旋钮便可以模拟出任意力反馈效果,如0摩擦力滚动、多档开关、弹簧、阻尼等。再结合一旁的OLED屏幕,许多有意思的应用蓄势待发:
稚晖君表示,他会把这个模块二次开发的通信协议和驱动都封装成SDK,客制化发烧友们便可以基于SDK开发各种交互应用。
独创电容式触摸按键条
滚轮旋钮
于是乎,他给键盘侧面贴上了一个电容式触摸按键条。
如果电脑已经装好了其他生物识别设备,这个设计也不会浪费,可以替换插入鼠标接受器,游戏手柄接收器等实用模块。
当然,如果只是多了一块屏幕,也不见得智能了多少。
说了这么多,这键盘到底长啥样呢?
既然是客制化,稚晖君想要最大限度发挥自己的设计自由度,于是,他从头设计了键盘电路硬件以及固件代码。没错,不只是换壳,是真的完全客制化!
抑或是模拟成无摩擦的惯性旋钮来滚动页面,由于无摩擦的原因,页面滚动极致丝滑……
完成了以上设计后,稚晖君式奇思又钻了出来:平时在打字时,两个大拇指好像没什么事做?一起按一个空格键,是不是有些浪费?
一个键盘有大约 100 个按键,要是给每个按键都接一根导线到 MCU 的引脚,就需要 100 多个引脚,这也太浪费了。有解决办法吗?有,用矩阵键盘形式来检测按键就可以了嘛。
然而,问题又来了。我们在设计 PCB 的时候,一般都要做减震处理,在 PCB 建轴之间挖出很多长槽。但矩阵键盘和一堆二极管的模式会导致 PCB 的走线变得非常麻烦。
文章来源:《中华少年》 网址: http://www.zhsnzzs.cn/zonghexinwen/2022/0727/2672.html