让STM32Duino可以使用HID:如何烧写HID Bootloader,DIY超便宜的键盘主控

1.前言

如果你使用32U4来自制键盘,必然会遇到一个大问题就是引脚不够,随便一把键盘,60按键以上,通常都会设计16以上的脚位,而Arduino板子的 Leonardo一类板型在这样的引脚需求下并不够用。

 

而且,这些东西还很贵,从成本来说并不划算,所以是否有一些好的办法,可以自制主控,然后又能有好的性能和比较高的配置?这时候就要用上STM32了,当然为了大幅度的缩减时间成本,我会使用Arduino IDE来进行程序的编写。

 

1.1 要应用这一篇文章内容,你需要有以下条件

STM32F03C8T6最小系统一块

ST-Link一个

Windows10 电脑一台

Arduino 1.6.0以上的版本,当然我建议用今年最新的1.8.13

Micro USB线一条

 

1.2建议参考的先前撰写的文章

原创 使用Arduino IDE来编写上传STM32以及STM8代码

原创 解决STM32duino Bootloader烧写后驱动程序找不到的问题

原创 STM32F103C8T6在Arduino中的实际引脚对应

 

2.刷写HID Bootloader和实际操作

2.1 兼容问题与HID Bootloader

如果你使用Arduino的自带例程,也就是提供给Leonardo的那些,必然会遇到这类问题,比如

 

fatal error: HID.h: No such file or directory

 #include "HID.h"

 

意思是找不到“HID.h”,而实际上是找不到STM32Duino这里的HID.h,所以需要换一种方式以解决这个问题

 

这里提供的方法是刷写HID Bootloader 这一个Bootloader,从而让STM32支持以HID的形式通过Micro USB和电脑连接

 

2.2 怎么刷HID Bootloader

首先,从网盘下载 HID Bootloader以及文件,我顺便附上了文章撰写时候最新的Arduino 1.8.13

 

链接:https://pan.baidu.com/s/1c58hZ-vl_06TkxqNX3Ly7Q

提取码:hxhr

 

两个文件,一个是CLI下刷写Bootloader的工具另外一个是固件。

 

连接好ST-Link,并且将STM32F103C8T6的BOOT全部设置到0这个位置

接着是选择固件,固件是依据板子上LED灯接到哪里来选择的

 

我们的这一个板子上所接的LED1和引脚PC13连接,所以就选择文件hid_generic_pc13.bin

复制到st-flash.exe的目录下,如何查找st-flash?使用闪电搜索或者anyfile这类软件就可以

 

之后打开CMD,切换到这一个目录下,然后输入st-flash.exe write hid_generic_pc13.bin 0x8000000   如果出现这些,提示jolly good!那么就说明当下可以正常的使用了。如果遇到问题重插ST-LINK一般都能解决

 

 

重新插USB线到STM32上面,如果一切OK会出现如下的标识

 

 

 

 

 

注:如果把BOOT-1(靠近复位按钮的那个跳线)设置到1并复位,那么这一个刷写了HID-Bootloader的STM32会保持在HID模式下启动。

 

 

2.3 如何使用刷了HID Bootloader的STM32

我把如何配置安装STM32Duino的过程省略了,可以看文章开始时候的文章,首先打开Arduino IDE,并且选择一个例程,这里我选择的是Blink,然后,设置Upload method为HID bootloader 2.0

 

连接STM32,BOOT-1要切换成1,到这里我已经把ST-LINK断开了因为没有使用的需要。点击上传,出现提示后说明有正常上传。

 

 

更多的使用说明,请看我接下来的文章。

 

  • 3
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值