最丐17键+触摸条机械键盘

简介:时隔1年,最丐机械键盘的续作:最丐小键盘,充分发挥CH551G自带的触摸按键外设, 结合了我以前开源的触摸滑环DEMO,用触摸条用作多媒体控制(而且触摸条不用额外元件,这个成本你一定DIY得起)

开源协议: GPL 3.0

发布时间:2020-12-20 22:47:29
  • 3.7k
  • 34
  • 40
描述

咨询了沁恒的工程师,得知CH551G已经停产,还在生产的CH552G是可以完全兼容程序的。买芯片的时候可以考虑下。

顺带一提有人买到了不带USB启动程序的CH551G向我反映烧录不了,这里我直接放个之前买到能用的链接

我不会为店家做担保,在华强北电子城,如果某家没有这芯片会把订单给隔壁摊位发货,不能烧录的芯片会不会窜货我就不知道了。

套件出售链接:http://aliurl.cn/299o2p

功能描述:

灯光:

  • 为lock时:1Hz呼吸
  • 非lock时:0.5Hz呼吸

按键:

  • 因IO数量限制,按键有冲突,无法识别同时按下,但局部无冲(2,4,5,6,8)
  • 在非num lock时:减号的按键键码会被替换为退格,方便会计录入。

触摸:

  • 触摸条为90Hz采样率
  • 开机自动调零算法,避免洗板与不洗板的电容差异
  • 触摸条在num lock时:滑动音量调节,点击中间播放/暂停,按上下切音乐
  • 非num lock时:滑动为鼠标滚轮,点击中间打开计算器,按上下调亮度【笔记本或一体机有效】
  • 具体触摸操作见附件视频

其他:

  • 板载STC烧写口,UART与按键复用,带自动重上电功能(与LED驱动mos管复用),但程序暂时未适配。
  • USB口右上斜45°引出,与上一代统一的设计语言
  • 采用micro usb接口,消耗多余micro线,想要type C的DIYer们可以自己修改

成本:

  • PCB大小均在10*10cm内
  • 电子元件精简,除去单片机、按键和LED,仅1个场效应管,2个电阻,3个电容,4个二极管。
  • 电容触摸按键不要钱,因为集成在PCB上嘛~~~ (~ ̄▽ ̄)~

原理:

电容按键位置检测原理:

电容按键原理示例.png

虽然技术文档没给出内部电路,但我猜原理和上面差不多,通过阻容震荡输出脉冲的计数检测触摸电容的大小。

而且触摸电容的容量变化与接触面积成正比,所以只要通过简单的比例运算便能得出按压的中间位置。

为了加大中间过渡的位置,所以触摸的覆铜会做成类似交错的梳子,见下图。

触摸盘.png

PS:电容触摸屏,触控板也是相同原理

详细的触摸覆铜推荐形状见附件里的PDF。

电容按键消抖程序:

uint touch_data[5];//读取回来的原始数据,正常工作时范围在4000~1000
uchar touch_leve[5];//滤波后的数据,保留百位数
void hysteresis()//滤除噪声
{
  uchar i;
  uint temp;
  for(i=0;i<5;i++)
  {
    temp=touch_leve[i]*100;
    if(touch_data[i]>temp+100)//每次才加减这一点点,动态是差点,但在90Hz采样率下这都不是什么大问题
      touch_leve[i]++;
    else if(touch_data[i]<temp-100)
      touch_leve[i]--;
  }
}

程序滤波算法类似迟滞比较器,当达到特定阈值才进入下一等级,进入下一个等级后上下触发阈值也会变化。

用人话说就是施密特消抖而已。

这东西和之前很火的电容极板检测纸张数量很像,有兴趣的同学建议去看看,我就不重复造轮子了。

想要程序点我头像看<CH551G触摸DEMO>工程。

矩阵按键扫描原理:

矩阵结构.jpeg

这就是上一作的修改的原电路,没看过的点我头像看以往工程。

注意下,这图片是正逻辑,而51是弱上拉输出,所以实际使用中是负逻辑(把二极管反过来)。

从图中可以看出除了矩阵按键,下面还有一排独立按键,完全复用了,但按键冲突很严重,

除了独立按键之间可以同时按,其他按键某一时刻只能有一个按着,不然读不出来确切是哪几个按键按着。

当然可以用加钱实现全键无冲。但最后向成本妥协还是冲冲冲,

如果稍微土豪一点桥接一堆74HC595就有无限可能了,对吧 `(>﹏<)′

PS:LCSC里有低配版本595平时不缺货时才1毛一个,现在2毛

实物拆机鉴赏:(为什么是拆机?因为漏了拍摄制作过程)

左为主板,右为底板,和上一作一样,用焊接M3螺母方式来连接,螺丝不突出底板,不怕刮擦布料

注意定位板下面先塞入螺丝再焊接轴体固定定位板。

IMG_20210206_140026.jpg

底板图案可以随便改,反正没功能

IMG_20210206_140107.jpg

底板的USB口位置做了开槽,使得键盘更薄

IMG_20210206_140349.jpg

和当前主力键盘来个合照

IMG_20210206_140418.jpg

封面

IMG_20210205_155941.jpg

操作视频:https://b23.tv/f7rfO5

在附件传视频看起来不流畅,所以发B站了

软件

烧录教程:https://oshwhub.com/TheLight/zi-ding-yi-jian-pan

捕获.PNG

程序更新日志:

前面加了什么,没详细记录,大致还在进行功能性的迭代。

Ver0.4:

  1. 加入电容按键上电时自校正,请确保上电时触摸区域干净
  2. 触摸区功能修改
    • 在num lock时:滑动音量调节,点击中间播放/暂停,按上下切音乐
    • 非num lock时:滑动为鼠标滚轮,点击中间打开计算器,按上下调亮度【笔记本或一体机有效】

Ver0.41:

  1. 开启看门狗
  2. 修复USB总线复位后死机的BUG

Ver0.42:

  1. 亮度变化过程修改,由线性变化改为对数曲线

Ver0.421:(定制分支)

  1. 修改灯效,移除计算器功能改为亮度控制

Ver0.43:

  1. 修复触摸转换bug(未验证,理论上更加灵敏)

感谢引用

原理说明图片引用链接:https://baijiahao.baidu.com/s?id=1621173179116478690&wfr=spider&for=pc#

PDF来源:世强元件,微芯,意法半导体

ID Name Designator Footprint Quantity
1 CH551G U1 SOP-16_L10.0-W3.9-P1.27-LS6.0-BL 1
2 AO3401 Q3 SOT-23-3_L2.9-W1.6-P1.90-LS2.8-BR 1
3 330 R2 R0603 1
4 10K R1 R0603 1
5 4PIN UART HDR1X4 1
6 CherryMX Stabilizer 2U K2,K1,K3 CHERRY_MX_2U 3
7 105017-0001 USB1 MICRO-USB-SMD_105017-0001 1
8 TS665CJ BOOT SW-TH_4P-L6.0-W6.0-P4.50-LS6.5 1
9 106 C3 C0603 1
10 104 C1,C2 C0603 2
11 4148 D4,D1,D3,D2 LL-34_L3.5-W1.5-RD 4
12 高特插拔轴(两脚F3) S2,S4,S3,S17,S1,S8,S5,S6,S7,S12,S9,S10,S11,S16,S13,S14,S15 高特插拔轴 2脚LED 17

展开

工程成员

服务时间

周一至周五 9:00~18:00
  • 153 6159 2675

服务时间

周一至周五 9:00~18:00
  • 立创EDA微信号

    easyeda

  • QQ交流群

    664186054

  • 开源平台公众号

    oshwhub