b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

STM32硬核DIY机械键盘[蓝牙USB双模|灯光控制]

电脑杂谈  发布时间:2020-08-14 02:11:57  来源:网络整理

机械键盘 蓝牙模块_蓝牙机械键盘内部结构_蓝牙键盘模块

STM32硬核DIY机械键盘[蓝牙USB双模|灯光控制]

-创建一个WorldEdit_1.0

该项目已开源给Github: 点击我发送

视频BiliBili项目制作的:

文章目录

项目来源: “ Thinking”项目简介:

为什么叫WorldEdit?

因为我希望将来使用此键盘来探索世界并创造更多东西,就像创造之神一样,

所以它被称为创世第一世界编辑

机械键盘 蓝牙模块_蓝牙键盘模块_蓝牙机械键盘内部结构

创世一号采用STM32F103RCT6主控制,集成了锂电池充放电管理,稳压,蓝牙串口HID,USB-HID,LED灯阵列驱动器和按钮检测电路.

可以实现蓝牙连接模式(支持IOS,Android等平台)和USB连接模式. 蓝牙连接的响应时间约为15ms,USB连接模式主机的响应时间约为0.3Ms.

照片如下:

在这里插入图片描述

1. 资料准备阶段1.键盘布局

首先要制作机械键盘,您需要了解键盘布局. 有许多可用于制作版面的工具. 在此步骤中,我们需要生成定位板的CAD图并使用以下两个网站:

编辑站点的分配:

定位板CAD生成网站:

如果要进行的配置与我的相同,则可以直接使用我的配置CAD文件

蓝牙机械键盘内部结构_机械键盘 蓝牙模块_蓝牙键盘模块

我想要做的配置如下: (该网站可以轻松修改配置,已经有很多教程,我将不做详细介绍)

在这里插入图片描述

然后将您的配置的原始数据复制到CAD生成网站. 生成CAD定位板文件

(绘制PCB和键盘外壳时需要此文件)

在这里插入图片描述

然后以下是与轴身有关的内容,通常来说,默认值是很好.

在这里插入图片描述

点击

在这里插入图片描述

蓝牙键盘模块_蓝牙机械键盘内部结构_机械键盘 蓝牙模块

生成文件,然后单击右上角的DXF并下载并保存文件.

在这里插入图片描述

在这里,键盘布局已完成. 然后去网上冲浪并购买,购买键帽,蓝牙HID模块,主控制器,一些电容器,电阻器,锂电池以及其他所需的物品.

2. 采购组件,模块,电池,轴,键帽等.

整个键盘所需的项目列表如下:

在这里插入图片描述

购买元件后,就可以开始绘制电路了(如果没有,可以用我的PCB进行加工,我以100元的价格制作了5块PCB). 由于整个项目都是开源的,因此将不介绍特定的电路这里.

然后设计外壳. 由于没有加工条件,只能定制,因此钢板的简单设计没有底部作为框架. 最终产品还可以.

在这里插入图片描述

机械键盘 蓝牙模块_蓝牙键盘模块_蓝牙机械键盘内部结构

在这里插入图片描述

第二,组装和调试

上述准备完成后,焊接电路,安装轴,并安装键帽. 有关具体步骤,您可以观看我的制作视频.

三,优化程序代码

代码部分的想法是检查键盘消息是否已更新,更新后生成密钥数据包,然后将串行端口传输到蓝牙模块. 如果处于USB模式,它将通过USB直接发送到主机.

如何快速将按钮物理链接到程序代码?这是个主意. 如果有更好的方法或建议,请留言或私人留言,谢谢.

在这里,我们将按钮的位置与数组的顺序相对应,这在以后处理按钮消息时非常方便.

#define xxCK	myKeyBoard_ControlKey 
#define xxSK	myKeyBoard_SpecialKey 
const char * myKeyBoard_KeyMap_Name[6][16] = 
{
	"Esc","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12","PrtSc","ScrollLock","PauseBreak",
	"~","!","@","#","$","%","^","&","*","(",")","-","+","BackSpace","Insert","Home",
	"Tab","Q","W","E","R","T","Y","U","I","O","P","{","}","|","Delete","End",
	"CapsLock","A","S","D","F","G","H","J","K","L",";","'","Enter","","","PageUp",
	"LShift","Z","X","C","V","B","N","M",",",".","/","RShift","Up","","","PageDown",
	"LCtrl","Win","LAlt","Space","RAlt","FN","Menu","RCtrl","Left","Down","Right","","","","",""
};
const unsigned char myKeyBoard_KeyMap_ATValue[6][16] = 
{
	0x29,0x3A,0x3B,0x3C,0x3D,0x3E,0x3F,0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,
	0x35,0x1E,0x1F,0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,0x2D,0x2E,0x2A,0x49,0x4A,
	0x2B,0x14,0x1A,0x08,0x15,0x17,0x1C,0x18,0x0C,0x12,0x13,0x2F,0x30,0x31,0x4C,0x4D,
	0x39,0x04,0x16,0x07,0x09,0x0A,0x0B,0x0D,0x0E,0x0F,0x33,0x34,0x28,0x00,0x00,0x4B,
	xxCK,0x1D,0x1B,0x06,0x19,0x05,0x11,0x10,0x36,0x37,0x38,xxCK,0x52,0x00,0x00,0x4E,
	xxCK,xxCK,xxCK,0x2C,xxCK,xxSK,xxSK,xxCK,0x50,0x51,0x4F,0x00,0x00,0x00,0x00,0x00,
};

主要功能如下: (特定代码已开源到GitHub)


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/bofangqi/article-298451-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...