站内搜索
发作品签到
最丐61+3键机械键盘(外观)
标准版

最丐61+3键机械键盘(外观)

简介

键盘有了,缺个壳,正巧打算用玻纤板做,反正上面没电路,不如······(逮虾户~)

简介:键盘有了,缺个壳,正巧打算用玻纤板做,反正上面没电路,不如······(逮虾户~)

开源协议

GPL 3.0

创建时间:2020-07-31 10:21:01更新时间:2022-03-11 05:13:18

描述

程序讲解

先来看看人家的讲解:

https://www.bilibili.com/read/cv7465854/

看得云里雾里就对了,你只要知道经过这个代码的升级,我的项目某方面能和里面提到的键盘差不多甚至更好就够了。

按键消抖

按照我的理解旧代码就已经是首字符先发码,(“&”逻辑滤波)

下面上图:

滤波1.png

“&”,“|”逻辑滤波

红色线为经过“&”逻辑滤波后的识别情况。

具体实现思路是将当前数据与前面10ms内的数据进行与运算,有零出零,这样就做到前沿从抖动开始就识别为按下。

后延要到抖动结束后10ms才识别为松开。

蓝色线为经过“|”逻辑滤波后的识别情况。

同理,只是刚好相反,按下延时动作,松开从第一个抖动开始即时动作。

那能不能结合两个的长处?其实也不难,至于写出来能不能感知到我就不清楚了,欢迎讨论。

而且1000Hz回报率对电脑配置也有点要求,前面有人反馈电脑带不动,所以这里继续取500Hz。

滤波2.png

绿线是要做到的目标,下面贴代码

uchar code move_code[2][8]={
0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,
0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f
};
void keybord_trembling()
{
	uchar i,j,k=0;
	static idata uchar temp[64]={0};
	
	for(i=0;i<8;i++)
	{
		for(j=0;j<8;j++)
		{
			if(key_temp[i]&move_code[0][j])//如果按下
			{
				if(temp[k]==0)
					temp[k]=30;
				else if(temp[k]<40)
					temp[k]++;
			}
			else//如果松开
			{
				if(temp[k]==40)
					temp[k]=10;
				else if(temp[k]>0)
					temp[k]--;
			}
			if(temp[k]>20)
				key_temp[i]|=move_code[0][j];
			else
				key_temp[i]&=move_code[1][j];
			
			k++;
		}	
	} 
}

下面附件的代码就是采用这种快速激进,容易双击的算法,如果出现双击,建议回刷普通版的代码

本想导入漫画的,结果不够清晰,表情包走起

嘉立创的丝印总是有瑕疵

IMG_20200807_122208.jpg

焊接铜螺母,总共8个(焊完有点氧化变红了)

IMG_20200807_125203.jpg

装上键盘

IMG_20200807_130437.jpg

定位板(这是黑油喷锡的,效果还行)

IMG_20200813_125602.jpg

pcb合照

IMG_20200815_171131.jpg

正面(带底板的图片晚点补,螺丝在路上)

IMG_20200815_171227.jpg

侧面特写

IMG_20200815_171255.jpg

IMG_20200815_171318.jpg

开源平台logo特写

IMG_20200815_171326.jpg

其他用户制作的成品:

QQ图片20201028094015.jpg

QQ图片20201028093920.jpg

1819687571b8fe7d32d6562fad9fa50.jpg

微信图片_20210311203416.jpg

微信图片_20210311203410.jpg

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

3D模型

序号文件名称下载次数
暂无数据

附件

序号文件名称下载次数
1
VID_20200812_211550 [最优化的质量和大小].mp4
1055
2
64键盘程序Ver0.7speed.hex
30
克隆工程
添加到专辑
0
0
分享
侵权投诉
知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

底部导航