蓝牙一主三从, 基于cc2540 cc2541 AMOMCU 蓝牙4.0开发板

蓝牙一主三从, 基于cc2540 cc2541 AMOMCU 蓝牙4.0开发板

amomcu 原创
演示视频 (复制到地址栏)     http://v.youku.com/v_show/id_XODQ2ODU5NDMy.html

1,要实现的功能

        应不少网友的要求,需要1个主机连接多个从机的例程,amomcu经过开发调试,实现了最大13从的功能,主机可通过TI自定义特征值服务CHAR1读写任意已连接上的从机,任意从机可以通过我们自定义的CHAR6进行对主机的数据通知(notify),在此基础上,朋友们可以在从机上负载上你的数据业务,比如实现蓝牙气象站等等都很easy了。

蓝牙一主三从, 基于cc2540 cc2541 AMOMCU 蓝牙4.0开发板_第1张图片

AmoMcu提供的这一份源码是一个独立工程,内含主机工程与从机工程,不依赖其他任何文件,理论上可放在任何地方进行编译和下载,但作为程序员需要有一个好习惯, 最好把这个工程放到不带中文且比较短的路径,否则有可能编译出错, 产生不必要的麻烦。

蓝牙一主三从, 基于cc2540 cc2541 AMOMCU 蓝牙4.0开发板_第2张图片

主机工程修改要点

首先我们增加了增加特征值CHAR6, 关于这个后面可以参看本教程的  《4.4 增加特征值CHAR6 》。

 

要实现一主三从,就是在连接从机时在原来的主机连一个从机的基础上再多连接2个,然后对每个连接过后的从机进行服务获取,以便后面主机对从机的数据通信。由于这个主机工程已被我们修改得太多,因此,我们以不一一说明都有哪些修改,我们只要把流程走上一片即可。

在此我们还是在此说明下我们实现的功能:

 

功能: 一主三从 的主机 (后面我们也将提供连接多从机的android app, 预告哈)

 

操作步骤 (注意我们都是含有oled显示屏的, 方便观察和操作)

1,主机通过 up按键 搜索从机

2,主机 center键 自动连接,可自动连接最多3个从机,

   按屏幕显示当显示 “key S1 = send data ” 时,

   按下s1 键即可,之后主机向每个从机的char1 与 char6发送轮流发送数据。

3,从机可以按下s1键 向主机的 notify char6的数据

4,主机可以按down键读取个从机的rssi 或取消。

4.5 总结

上面我们主要是来说明了各个数据的出口和入口。

 

我们来回答一些小问题。

4.5.1 如何获取rssi

答: 据我调试,主机随时都可以获取rssi值,在获取是注意一下打印格式, 否则可能的出来的值是例如 220 这样的值, 你我都不认识。

主机连接上之后,按一下五向按键的 down 按键,就会在oled显示屏上显示 各个从设备的rssi 值了。

4.5.2 如何串口输出?

答: 我们通篇都没有具体描述串口输出与输入,实际上我们都完成了,例如从机中:

 

就是串口初始化,波特率是 115200 

4.5.3 没有oled显示怎么办?

答: 我们强烈建议你配置上oled显示屏,小小屏幕大作用,TIsmartRF开发板的几乎所有代码都是包含显示代码的, 方便学习与观察。 万一没有显示屏,也没关系,我们也同是串口输出了, 你照着葫芦画瓢就是了。

4.5.4 某个从机断线了怎么办?

答: 目前的demo代码中, 没有处理断线之后的代码, 但是某个从机断线, 不影响其他没断线的从设备与主机之间的通信。

 

4.5.5 如何使能低功耗?

答: 目前的demo代码是基于ble1.3.2协议栈的,只要使能 POWER_SAVING 即可进入低功耗模式。把下图中的  xPOWER_SAVING 修改成 POWER_SAVING  即可!!!

 

4.5.4 如何连接更多从机?

答: 目前的demo代码中, 最大只能连接3个从机,这个事 TI 的这个协议栈库定死了的(我猜的,你若是找到办法, 能告诉我么?),如果你需要连接更多的从机, amomcu 没有办法了, 但是如果你只是想从机通知数据到主机, 那么其实可以用广播的方式, 请看我们的下一个例程即可(预计12月下旬推出哈)

4.5.4 如何连接更多从机?

答: 目前的demo代码中, 最大只能连接3个从机,这个事 TI 的这个协议栈库定死了的(我猜的,你若是找到办法, 能告诉我么?),如果你需要连接更多的从机, amomcu 没有办法了, 但是如果你只是想从机通知数据到主机, 那么其实可以用广播的方式, 请看我们的下一个例程即可(预计12月下旬推出哈)


如果需要蓝牙4.0BLE开发开发板和资料, 请看这里  http://amomcu.taobao.com/ , 这里能提供基于cc2540cc2541的蓝牙4.0BLE开发的详细硬件和软件资料, QQ群257318688(凭x宝单号加入否则婉拒),  阿莫单片机论坛  www.AmoMcu.com  提供技术, 更多项目实例介绍持续更新中。



你可能感兴趣的:(蓝牙4.0,BLE,CC2540,CC2541)