有线键盘改蓝牙键盘转换器 制作记录(下)
有线键盘改蓝牙键盘转换器 制作记录(下)
本篇内容来自#垃圾佬的日常生活#有奖征稿活动。分享你作为垃圾佬的自我修养和日常生活,争当张大妈社区垃圾王!欢迎参与投稿。>点击了解详情<
追加修改(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。
//qna.smzdm.com/201908/01/5d425cce6980d414.jpg_a200.jpg
有线键盘改蓝牙键盘转换器 制作记录(上)追加修改(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模块的资料。
https://am.zdmimg.com/201908/14/5d53c78023f1d6883.jpg_e680.jpg
AT-09模块默认波特率是9600,支持蓝牙4.0 BLE协议栈。
https://am.zdmimg.com/201908/14/5d53c7f9327c64317.jpg_e680.jpg
原版固件不支持蓝牙HID,需要刷cc254x-hidKbdM固件。这个固件由Geekhack的网友pseudolobster制作,他测试所使用的是HM-10模块。注意到有教程使用AT-09模块刷HM-10模块的固件,AT-09模块和HM-10模块所使用的MCU芯片都是CC2541,固件可以通用。
https://qnam.smzdm.com/201908/13/5d528ad29b5275673.jpg_e680.jpg
HM-10模块的原理图如图所示。
https://am.zdmimg.com/201908/13/5d528b2aecaee570.jpg_e680.jpg
AT-09模块的原理图如图所示,两者的引脚定义是接近的。
https://am.zdmimg.com/201908/14/5d53d2270c02c1094.jpg_e680.jpg
拆掉AT-09模块的包装,接线。
https://am.zdmimg.com/201908/15/5d5526d5a284e2762.jpg_e680.jpg
Arduino Pro mini不带usb接口,需要FT232RL编程器进行通讯刷固件。
https://qnam.smzdm.com/201908/14/5d54235a650259099.jpg_e680.jpg
AT-09模块刷HM-10模块是有差别的,需要使用BLE-stack与IAR Embedded Workbench调试模块。
https://am.zdmimg.com/201908/15/5d55076a81f57550.jpg_e680.jpg
安装完成后,从gayhub下载固件,复制cc254x-hidKbdM文件到程序的Texas Instruments | BLE-CC254x-1.4.0 | | Projects | ble文件夹下。
https://qnam.smzdm.com/201908/15/5d550a0da0f8e406.jpg_e680.jpg
将HAL_UART_ISR的参数设置为2。
https://qnam.smzdm.com/201908/14/5d542082915758183.jpg_e680.jpg
刷固件使用的软件叫CCLoader。
https://qnam.smzdm.com/201908/15/5d55036b661499526.jpg_e680.jpg
蓝牙模块的通讯需要经过Arduino Pro mini,需刷入CCLoader.ino。
https://qnam.smzdm.com/201908/15/5d55045c3b4ab2615.jpg_e680.jpg
使用CCLoader.exe刷入cc254x-hidKbdM固件。
https://qnam.smzdm.com/201908/15/5d5503e3bfb9e7741.jpg_e680.jpg
刷固件完成后,测试笔记本电脑能不能搜索到模块。
https://qnam.smzdm.com/201908/15/5d5529c4303414323.jpg_e680.jpg
尝试连接模块,默认配对码是6个000000。
https://qnam.smzdm.com/201908/15/5d552ca47730c5644.jpg_e680.jpg
配对成功,Arduino IDE的测试正常。
https://qnam.smzdm.com/201908/15/5d55273b85c638393.jpg_e680.jpg
去掉编程器,将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机械键盘,内部空间比较大,安装这个模块是挺合适的,下次会写原创说明如何将这个模块塞进去,喜欢的可以关注一下。
未经授权,不得转载
页:
[1]