极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 17599|回复: 7

蓝牙键盘模块的实验

[复制链接]
发表于 2015-9-13 21:27:12 | 显示全部楼层 |阅读模式
之前介绍过两种Arduino 模拟键盘的方法,一种是普通的Uno加上电阻之类的元件;一种是使用自带 USB 功能的 Arduino ,比如 Leonardo ,内部集成了USB Slave控制器。 这里再介绍蓝牙方案。

我们最常见的就是蓝牙透传模块,用蓝牙搜索安装之后能在系统中模拟出来一个串口,上位机直接按照串口方式即可进行通讯。这次介绍一款蓝牙键盘模块(实际上是键盘鼠标模块)。

外观和普通蓝牙透传模块一样(蓝牙芯片真正有用的都是内部Firmware)



用法非常类似,在蓝牙中搜索连接之后系统中会出现键盘设备。



然后数据是从串口送到蓝牙设备中的。根据说明我用 Arduino 编写了一个简单的测试程序,每隔5秒发送 “1” 字符。

输入 1:
按下数据 1 数据包为: 0C 00 A1 01 00 00 1E 00 00 00 00 00
按键弹起: 0C 00 A1 01 00 00 00 00 00 00 00 00

程序如下:
  1. char KeyPress[]={0x0C,0x00,0xA1,0x01,0x00,0x00,0x1E,0x00,0x00,0x00,0x00,0x00};
  2. char KeyRelease[]={0x0C,0x00,0xA1,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};
  3. void setup() {
  4.   // put your setup code here, to run once:
  5.     Serial1.begin(9600);      //设置串口波特率
  6. }

  7. void loop() {
  8.    for (byte i=0;i<sizeof(KeyPress);i++)
  9.     {
  10.      Serial1.write(KeyPress[i]);
  11.     }
  12.    for (byte i=0;i<sizeof(KeyRelease);i++)
  13.     {
  14.      Serial1.write(KeyRelease[i]);
  15.     }
  16.   delay(5000);  
  17. }
复制代码



测试结果,每隔5秒我的电脑上就可以收到一个 1 的输入。

更多的好玩还在研究中。有模拟键盘需要的朋友不妨考虑这样的蓝牙模块,顺便说一下,这种模块在35元左右,比普通透传模块贵多了(通常20左右)。当然,你可以看看国外类似的产品,Adafruit出品的“EZ-Key BT HID Keyboard Controller纸模块”价格在180元,感觉就不那么贵了......

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2015-9-14 07:48:26 | 显示全部楼层
不知道有没有能模拟手柄类的hid蓝牙模块
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-9-14 08:20:11 | 显示全部楼层
maxims 发表于 2015-9-14 07:48
不知道有没有能模拟手柄类的hid蓝牙模块

你去问问卖家吧  应该有可能有唉
回复 支持 反对

使用道具 举报

发表于 2015-9-14 18:01:50 | 显示全部楼层
zoologist 发表于 2015-9-14 08:20
你去问问卖家吧  应该有可能有唉

嗯,谢谢~
我有时间了上淘宝慢慢找找
回复 支持 反对

使用道具 举报

发表于 2015-9-17 08:28:50 | 显示全部楼层
maxims 发表于 2015-9-14 07:48
不知道有没有能模拟手柄类的hid蓝牙模块

mmjoy 有线手柄类的方案
至于蓝牙传输。。。。
回复 支持 反对

使用道具 举报

发表于 2015-9-17 18:01:01 | 显示全部楼层
darkorigin 发表于 2015-9-17 08:28
mmjoy 有线手柄类的方案
至于蓝牙传输。。。。

谢谢~
有线手柄类的对我来说,没有学习的价值。我主要是想学习蓝牙hid部分
回复 支持 反对

使用道具 举报

发表于 2015-9-17 23:11:53 | 显示全部楼层
maxims 发表于 2015-9-17 18:01
谢谢~
有线手柄类的对我来说,没有学习的价值。我主要是想学习蓝牙hid部分

有线手柄的技术难度远大于无线的。。。。。。
这个MMJOY开源就是如此。。。。。
支持多轴 支持非电阻轴。。支持超过100个键位。。。
每个轴可以支持超过10BIT的分辨率

模拟飞行游戏必须这样的。。。
开发技术难度也不小。 只不过有开源的

结合起来就更吊了。不过 蓝牙键盘的延迟。。。注定了这类摇杆似乎就无法用了
回复 支持 反对

使用道具 举报

发表于 2015-9-18 07:27:46 | 显示全部楼层
darkorigin 发表于 2015-9-17 23:11
有线手柄的技术难度远大于无线的。。。。。。
这个MMJOY开源就是如此。。。。。
支持多轴 支持非电阻轴 ...

嗯,你说得不错,不过,我都是学以致用。
蓝牙hid的摇杆,对我来说是有用处的。
有线摇杆,对我来说没有用处的。
仅此……
回复 支持 反对

使用道具 举报

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

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-4-19 23:54 , Processed in 0.042688 second(s), 20 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

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