找回密码
 立即注册
查看: 557|回复: 0

有线键盘改蓝牙键盘转换器 制作记录(下)

[复制链接]

883

主题

81

回帖

439

积分

中级渣柚V1

积分
439

活跃会员

发表于 2019-9-29 21:25:49 | 显示全部楼层 |阅读模式

                        
                           
                                
                                有线键盘改蓝牙键盘转换器 制作记录(下)                           
                           
                           
                            本篇内容来自#垃圾佬的日常生活#有奖征稿活动。分享你作为垃圾佬的自我修养和日常生活,争当张大妈社区垃圾王!欢迎参与投稿。>点击了解详情<
追加修改(2019-08-21 15:57:45):
追加AT-09模块蓝牙HID固件的下载地址,已经完全设置好参数,使用CCLoader直接刷入固件即可。

前言上次说到HC-06或HC-05使用的都是蓝牙2.0协议,实际体验不佳。现在基本是蓝牙3.0和4.0的天下,2.0配置相对落后,与现有的设备兼容性不佳。后面我选了几款支持蓝牙4.0协议的蓝牙模块,按价格排列分别是ESP32、NRF51822、BT05、HM-10、AT-09。

                               
登录/注册后可看大图

有线键盘改蓝牙键盘转换器 制作记录(上)追加修改(2019-08-0210:32:12):补充个成本:ArduinoPromini9.8元;USBHostShield22.6元;FT232RL编程器10.6元;面包板5元;面包板电源3.5元;杜邦线3.2元;仔线1.7元;hc-0518.5元。总成本是75元。如果将hc-05换成Esp32qianseyue| 21 评论21 收藏95查看详情ESP32较贵不划算首先排除,余下ARM的NRF51822、CC2541的BT05、HM-10和AT-09。性能上,NRF51822是ARM-M0(32位), TX 10.5mA,RX 13mA;CC2541是8051(8位),TX 18.2mA,RX 17.9mA。考虑成本,最终选AT-09模块。某宝上10元不到就能包邮买到,比油管UP主DastardlyLabs所使用的HC-05或HC-06模块价钱更低。

改造网络上关于AT-09模块的资料不多。AT-09模块和BT05-A模块所使用的MCU芯片都是CC2541。很多某宝卖家都将其当作BT05-A模块识别,附送的都是BT05-A模块的资料。

                               
登录/注册后可看大图

AT-09模块默认波特率是9600,支持蓝牙4.0 BLE协议栈。

                               
登录/注册后可看大图

原版固件不支持蓝牙HID,需要刷cc254x-hidKbdM固件。这个固件由Geekhack的网友pseudolobster制作,他测试所使用的是HM-10模块。注意到有教程使用AT-09模块刷HM-10模块的固件,AT-09模块和HM-10模块所使用的MCU芯片都是CC2541,固件可以通用。

                               
登录/注册后可看大图

HM-10模块的原理图如图所示。

                               
登录/注册后可看大图

AT-09模块的原理图如图所示,两者的引脚定义是接近的。

                               
登录/注册后可看大图

拆掉AT-09模块的包装,接线。

                               
登录/注册后可看大图

Arduino Pro mini不带usb接口,需要FT232RL编程器进行通讯刷固件。

                               
登录/注册后可看大图

AT-09模块刷HM-10模块是有差别的,需要使用BLE-stack与IAR Embedded Workbench调试模块。

                               
登录/注册后可看大图

安装完成后,从gayhub下载固件,复制cc254x-hidKbdM文件到程序的Texas Instruments | BLE-CC254x-1.4.0 | | Projects | ble文件夹下。

                               
登录/注册后可看大图

将HAL_UART_ISR的参数设置为2。

                               
登录/注册后可看大图

刷固件使用的软件叫CCLoader。

                               
登录/注册后可看大图

蓝牙模块的通讯需要经过Arduino Pro mini,需刷入CCLoader.ino。

                               
登录/注册后可看大图

使用CCLoader.exe刷入cc254x-hidKbdM固件。

                               
登录/注册后可看大图

刷固件完成后,测试笔记本电脑能不能搜索到模块。

                               
登录/注册后可看大图

尝试连接模块,默认配对码是6个000000。

                               
登录/注册后可看大图

配对成功,Arduino IDE的测试正常。

                               
登录/注册后可看大图

去掉编程器,将AT-09模块的RX与TX接到Arduino Pro mini的TX与RX上。Arduino Pro mini刷回USBHIDBootKbd固件,有线键盘改蓝牙键盘转换器的蓝牙模块的添加就完成了。供电方面测试时使用的是面包板供电,实际使用会由3.7v聚合物锂电池供电,接Arduino Pro mini的GND和VCC接口。

后记成本上(价格仅供参考):Arduino Pro mini 9.8元;USB Host Shield 22.6元;FT232RL编程器 10.6元;面包板 5元,面包板电源 3.5元;杜邦线3.2元;仔线 1.7元;AT-09蓝牙模块 8元,3000mAh 3.7v聚合物锂电池15元,锂电池充电板2元。总成本是80元左右。
相对某宝上蓝牙3.0成品(不带电池)的价格要100元,自己制作的支持蓝牙4.0性能更佳,蓝牙3.0。缺点是集成度不高,占用空间。手头上有一把樱桃g80-3000机械键盘,内部空间比较大,安装这个模块是挺合适的,下次会写原创说明如何将这个模块塞进去,喜欢的可以关注一下。   
未经授权,不得转载
                        
                        

                        
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|矿渣社区 ( 黔ICP备2024020525号-1 )

GMT+8, 2024-10-6 01:19 , Processed in 0.048005 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表