各位大神,我现在想要与一个HID DEVICE-智能手环(类似于国外的MYO智能手环)通过蓝牙连接,蓝牙接收到数据后将其通过uart传给单片机。手环采用蓝牙芯片是CC2640。
我的想法是:利用单片机+CC2540/41作为作为HID HOST(可行否?)。
而在对CC2540/2541开发的过程中,我想在TI的HIDAdvRemoteDongle例程的基础上进行修改。
我现在想要弄清楚以下问题:
1、手环如何与其连接:这一例程是跟HIDAdvRemote配对使用的,通过按键触发连接,而手环没有按键,该如何修改程序才能使其连接?
2、如何用单片机与CC2540/41进行uart通讯?我的想法是对其添加AT指令,不知是否可行?
3、我选择的蓝牙连接方案是否可行?有无更方便快捷的方案?
本人刚入门,还望大神解答!
在此谢过!
Yan:
michael liu2
利用单片机+CC2540/41作为作为HID HOST(可行否?)。
–理论上是可行的。dongle只有2540能做,因为2541是不带USB接口的。单片机+254x你是想用USB还是其他接口呢?
1、手环如何与其连接:这一例程是跟HIDAdvRemote配对使用的,通过按键触发连接,而手环没有按键,该如何修改程序才能使其连接?
–很简单,你可以让手环一上电就进入广播状态就行,当然,从功耗的角度考虑,你的广播间隔要设置长一点。
把initial_advertising_enable 改成TRUE, 把DEFAULT_ADVERTISING_INTERVAL 修改的长一点,比如1000ms。
2、如何用单片机与CC2540/41进行uart通讯?我的想法是对其添加AT指令,不知是否可行?
–可以。你可以参考http://processors.wiki.ti.com/index.php/SerialBLEbridge_V_1.4.1, 或者http://processors.wiki.ti.com/index.php/SimpleBLEPeripheral_SerialInterface, TI的wiki上有很多资料。
3、我选择的蓝牙连接方案是否可行?有无更方便快捷的方案?
–蓝牙完全可行,但其实你没必要一定要用HID,用简单的IO按键就能做到的话,HID就显得太复杂了。你可以参考一下Keyfob工程,或者simpleBLEPeripheral工程里面的按键用法。
user4779153:
回复 Yan:
Y,
非常感谢你如此详细的解答!
可能是我开始没有讲清楚,手环已经是成品了,走的是HID,里面的程序我是不能动的。
我要做的就是开发蓝牙模块与手环连接并通讯。如果是这样的话,用简单的IO口还可以实现吗?
手环在上电之后应该就是处于广播状态的。
基于以上,你可否再给出一些建议呢?
谢谢!
Yan:
回复 user4779153:
michael liu2,
Aha. 但这个就难说了,我觉得很难。对方完全有可能拒绝你的连接,或者数据是加密的你没法解析。
user4779153:
回复 Yan:
Y,
谢谢。
我现在这里有:手环用来操控安卓手机的app源文件以及HID Report Definition文件,是否会有帮助?该如何合理利用?
Yan:
回复 user4779153:
michael liu2,
这个自然有帮助,只要不侵权就行了。。。
HID report definition 能知道两边交互用的是哪些按键或者私有数据是通过哪些report ID发送的等等。
app源文件能看到更多,但是这个你就只能自己琢磨了,只要不侵权。。。