电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子资料>如何自己构建终极无线键盘

如何自己构建终极无线键盘

2023-07-03 | zip | 0.00 MB | 次下载 | 免费

资料介绍

描述

 

这个遥控器实际上只是一个无线键盘。这个遥控器就是结果。让我向您展示如何自己构建它,但请记住,这并不是一个适合初学者的项目。

第 1 步:概述

 

 
 
 
pYYBAGOXy4mANZN8AAD2O3XlGqU565.png
 
1 / 2
 

 

确保您查看我制作的原始遥控器,因为我将对其进行一些比较。且不说大部分硬件都是一样的,只是缩水了。

我在这里可能有点偏见,但我认为这个遥控器非常完美。它明显更小,电池可持续使用约 12 个月,可使用 USB C 型充电。不再有开/关开关。设备仍将其识别为标准键盘,这意味着它可以在任何支持键盘的设备上工作。最重要的是,它支持多种布局,并在它们之间无缝切换。我目前有2个布局。一个用于 youtube/VLC 播放器,另一个用于 Spotify。

我什至编写了一个 Windows 应用程序来自定义这些布局。您只需要插入加密狗,即可对遥控器进行无线编程

第 2 步:工具和材料

工具:

  • 3D 打印机 - 使用 PLA 打印,因此任何打印机都应该这样做。
  • 焊台/热风台 - 无论您喜欢哪个。大多数组件都是 0603 SMD 尺寸。
  • 砂纸 - 不是必需的,但它使外壳看起来好多了。120、320、1500 砂砾

材料:

稍后会列出电子元件,除此之外,您只需要 M2x5 DIN 912 螺钉和 M2 螺纹插件。我的是 4.1 毫米长,但还有更长的空间。这就是你所需要的。

第 3 步:电子设备

 

 
 
 
poYBAGOX0KeAZdNPABdMZp4UlOs993.jpg
 
1 / 2
 

 

 
 
 
pYYBAGOX0NSAC8X4AAfBRVJDHPE319.jpg
 
1 / 2
 

 

该项目旨在安装在一个 PCB 上,然后分成两部分。你只需要打破几个小标签我建议让 PCB 专业制造,因为它非常复杂。有很多便宜的中国公司只需几美元就可以做到。我已经包含了 Gerber 文件。它们是您制作所需的全部内容。PCB 的厚度必须为 0.6 毫米,否则外壳不适合。

您还可以制作模板以使焊接更容易,但它们有点贵。特别是如果您只制作一个遥控器。我得到了第一批 PCB 的模板,我在一天内制作了 10 个 PCB。当我在修复一些错误后重新订购 PCB 时。我决定不买模板了。我现在后悔了,因为焊接一块 PCB 需要 4-5 个小时。

当谈到把它放在一起。这很简单。BOM(物料清单)包括组装 PCB 所需的所有组件。board.pdf 上显示了组件的位置。我只想谈几个组件。

USB C 型是一个槽孔 16 针一号。由于这些连接器的类型很多,我还包括数据表中的图片和一些链接,以确保您拥有正确的连接器。全球速卖通亚马逊Sparkfun

收发器也称为 NRF24L01 模块。有很多中国制造商生产这些产品,最近他们添加了更小的 SMD 版本。查看链接。速卖通,亚马逊

我使用的电池是 500mAh Li-Po 电池。尺寸为(高 x 长 x 宽):5 毫米 x 35 毫米 x 30 毫米。如果找不到相同的,可以使用较小的。即使容量只有一半,电池寿命也应该没问题。是我从那里得到的。

 
 
 
 
 

第 4 步:编程

 

pYYBAGOX0Q6AZMCcAAjbLoohMsg432.png
 

 

poYBAGOX0RKAKTmwAABee2wBSMg589.png
 

 

电子设备完成后,是时候上传 Arduino 程序了。这通常是一项非常简单的任务,但我设法使其复杂化。别客气 :)

所有的编程都是在 1.8.8 版本的 Arduino IDE 上完成的。您需要几个库:

每个 PCB 有两个 Arduino。Atmega32u4 用于接收器,atmega328p 用于遥控器。虽然我说遥控器可以无线编程,但它不适用于这里。只有配置可以无线修改。因此,必须首先使用 PCB 背面的焊盘对这两个微控制器进行编程。引脚排列如图所示。我个人决定制作一个小型编程夹具,因为我正在构建更多它们。我在这里包含了它的文件,但它很笨拙,所以请记住这一点。

在接线方面,微控制器必须连接到在线串行编程器。我刚刚使用了另一个 Arduino nano。如果您想以相同的方式进行操作,请点击此处的链接。接线后,两个微控制器都有 4 个相同的步骤。

  • 刻录适当的引导加载程序
  • 将地址加载到 EEPROM 存储器
  • 上传实际程序

1. 烧录引导程序

上面的链接也解释了这个过程,但本质上你是在烧“固件”,告诉微控制器它是什么类型的 Arduino。对于 atmega328,我们需要特殊的引导加载程序,因为我们将使用内部时钟我从这里得到它对于 Atmega32U4,我们可以使用默认的(Arduino micro)。我发现的另一个怪癖是 Arduino IDE 总是无法无缘无故地刻录引导加载程序。我通过使用旧版本的 IDE 解决了这个问题。1.0.5 具体。

2.更改保险丝设置

简而言之,微控制器上的熔断器是其基本设置。我们需要改变一个选项。EESAVE 保险丝。默认情况下,上传新程序也会删除 EEPROM 存储器。更改此保险丝将意味着即使在我们重新编程后 EEPROM 也会保留。这是至关重要的,因为遥控器和接收器的地址保存在 EEPROM 中。遥控器和接收器的实际程序不包含它们的地址。

让我们谈谈如何做到这一点。我们需要使用 avrdude,它是 Arduino IDE 的标准工具,我在这里再次使用 1.0.5 版本。不幸的是,它没有图形界面,因此您必须使用命令行。打开 CMD 并导航到 avrdude,它通常位于 Arduino IDE 文件夹中的 hardware/tools/avr/bin/

对于这两个微控制器,我们将把 HIGH 保险丝更改为以下内容:

原来是 0xDA 改为 0xD2 -atmega328p

原来是 0xD8 改为 0xD0 -atmega32u4

这些是我使用的实际命令,但您必须调整路径:

G:\Mirko\arduino\arduino-1.0.5\hardware/tools/avr/bin/avrdude -CG:\Mirko\arduino\arduino-1.0.5\hardware/tools/avr/etc/avrdude.conf -v - cstk500v1 -PCOM11 -b19200 -patmega328p -U hfuse:w:0xd2:m

G:\Mirko\arduino\arduino-1.0.5\hardware/tools/avr/bin/avrdude -CG:\Mirko\arduino\arduino-1.0.5\hardware/tools/avr/etc/avrdude.conf -v - cstk500v1 -PCOM11 -b19200 -patmega32u4 -U hfuse:w:0xd0:m

3. 加载地址到 EEPROM

当我说我的地址时,我指的是 NRF24 的通信管道。我决定给每个远程唯一地址的唯一原因是,如果您在一个房间里有多个,它们将不会相互触发。该地址保存在 EEPROM 存储器中,这意味着即使拔下电池也不会被擦除。由于我们在上一步更改了熔断器设置,因此即使在上传新程序时也会保存该地址。要将地址写入内存,您需要上传 eeprom_writer 草图。在草图中,您可以通过更改 n1、n2、n3 变量来自定义地址。草图必须上传到两个微控制器。

要上传草图,请使用 ICSP,如前所述。我又一次偶然发现了 IDE 的问题。我能够在 1.8.8 版本中编译草图,但它不会上传。在 1.0.5 版本中,它不会编译,但上传效果很好。我的解决方法是用 1.8.8 版本生成一个 hex 文件,然后用 1.0.5 IDE 的 avrdude 上传它。该过程在此处进行了更多讨论。

4. 上传最终程序。

最后,您只需上传遥控器和接收器的草图。你实际上可以用它的 USB 端口插入接收器并这样做。对于遥控器,您仍然需要在线串行编程器。上面描述的生成 hex 文件和使用 avrdude 的过程也适用于此。一旦你上传了程序,它就完成了。他们应该工作。您现在可以按照自己的喜好对其进行配置。

Windows 应用程序现在可用于自定义您喜欢的按钮。玩得开心 :)

 
 
 

第 5 步:案例

 

 
 
 
 
1 / 3
 

 

 
 
 
pYYBAGOX0WaAeP5CAA-6jMBY3N0710.jpg
 
1 / 3
 

 

您可以打印所有文件,将它们放在一起,然后收工。只是不要期望您在图片中看到的结果。

我将遥控器打印在 0.1 毫米层高的 Creality CR-10 上。按钮中间有一个小孔,这意味着切片机将在外侧和中间形成一个周边。我还把周边加厚了,所以没有填充物。这使得按钮在打磨后非常干净。

顶部和底部都印有接触构建板的大面。我还添加了支撑材料,因为悬垂有点太陡了。除了旋钮上的环形灯用透明 PLA 打印外,所有东西都用白色 PLA 打印。

旋钮被强力粘合在一起,这是唯一需要胶水的部分。为了打磨外壳,我把它放在一起,同时打磨两半。这样可以确保以后它们之间不会有任何差距。我从120砂砾开始。在大部分图层线消失后,我切换到 320 粒度,然后使用 1500 粒度进行哑光效果。它并不完美,但由于我没有使用任何油漆,它应该更耐刮擦。旋钮和按钮也使用了相同的打磨技术。

其实,我撒了谎。我也在加密狗上使用了胶水。老实说,我没有在加密狗上投入太多精力,你也不应该。一起拍吧。

 
 

 


下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1山景DSP芯片AP8248A2数据手册
  2. 1.06 MB  |  532次下载  |  免费
  3. 2RK3399完整板原理图(支持平板,盒子VR)
  4. 3.28 MB  |  339次下载  |  免费
  5. 3TC358743XBG评估板参考手册
  6. 1.36 MB  |  330次下载  |  免费
  7. 4DFM软件使用教程
  8. 0.84 MB  |  295次下载  |  免费
  9. 5元宇宙深度解析—未来的未来-风口还是泡沫
  10. 6.40 MB  |  227次下载  |  免费
  11. 6迪文DGUS开发指南
  12. 31.67 MB  |  194次下载  |  免费
  13. 7元宇宙底层硬件系列报告
  14. 13.42 MB  |  182次下载  |  免费
  15. 8FP5207XR-G1中文应用手册
  16. 1.09 MB  |  178次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234315次下载  |  免费
  3. 2555集成电路应用800例(新编版)
  4. 0.00 MB  |  33566次下载  |  免费
  5. 3接口电路图大全
  6. 未知  |  30323次下载  |  免费
  7. 4开关电源设计实例指南
  8. 未知  |  21549次下载  |  免费
  9. 5电气工程师手册免费下载(新编第二版pdf电子书)
  10. 0.00 MB  |  15349次下载  |  免费
  11. 6数字电路基础pdf(下载)
  12. 未知  |  13750次下载  |  免费
  13. 7电子制作实例集锦 下载
  14. 未知  |  8113次下载  |  免费
  15. 8《LED驱动电路设计》 温德尔著
  16. 0.00 MB  |  6656次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935054次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537798次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420027次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234315次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233046次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191187次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183279次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138040次下载  |  免费