由浅入深,蓝牙4.0/BLE协议栈开发攻略大全(6)

本系列教程将结合ti推出的cc254x soc 系列,讲解从环境的搭建到蓝牙4.0协议栈的开发来深入学习蓝牙4.0的开发过程。教程共分为六部分,本文为第六部分:
第六部分知识点:
第二十六节 ubl-usb升级
第二十七节 mt-ibeacon基站使用iphone空中升级
第二十八节 mt-ibeacon基站在pc端实现oad空中升级
第二十九节 mt-ibeacon基站关于lightblue软件的使用
第三十节 如何使用mt-usbdongle的透传功能
有关ti 的cc254x芯片介绍,可点击下面链接查看:
主流蓝牙ble控制芯片详解(1):ti cc2540
同系列资料推荐:
由浅入深,蓝牙4.0/ble协议栈开发攻略大全(1)
由浅入深,蓝牙4.0/ble协议栈开发攻略大全(2)
由浅入深,蓝牙4.0/ble协议栈开发攻略大全(3)
由浅入深,蓝牙4.0/ble协议栈开发攻略大全(4)
由浅入深,蓝牙4.0/ble协议栈开发攻略大全(5)
有关本文的工具下载,大家可以到以下这个地址:
朱兆祺forarm
第二十六节 ubl-usb升级
ubl升级是使用usb功能来进行升级的,它的配置也是一样的步骤。
配置ubl
(1) 打开iar,打开ble-cc254x-1.4.0下的工程c:texas instrumentsble-cc254x-1.4.0projectsleutilublsoc_8051usb_msdiar ubl.eww,选择cc2540-nano。
(2) 这里有点改动,因为ti提供的ubl是使用p2.0上拉d+的,而我们的开发板是使用p0.4经过三极管上拉的,所以这里还需要修改上拉的引脚。
(3) 编译下载,将开发板的用miniusb连接到电脑,就可以看到有一个u盘插入了。这里有一点要注意,在win8的系统上好像识别这个u盘有问题,需要win7一下的才支持。
配置升级固件
升级固件的配置和sbl几乎是一样的,主要有两处不一样的地方需要更改。
(1) 添加宏
oad_keep_nv_pages
feature_ubl_msd
(2) 配置config
(3) build选项
(4) 编译后可以看到
(5) 固件升级
升级的方法很简单,只需要将生成的bin文件拷贝到u盘中即可。
第二十七节 mt-ibeacon基站使用iphone空中升级
在iphone端实现固件更新
为了使用iphone或者ipad对ibeacon进行固件更新,首先要确认手机为iphone4s及以上,系统为ios7及以上,在appstore里搜索下载multitool,这个app是ti免费提供的,可以直接下载安装。安装好这个app后,pc上需要使用itunes将固件拷贝到手机。
itunes操作
这里我们将需要更新的固件a和b都拷贝到手机。
iphone操作
1. 打开multitool,搜索设备
2. 连接ibeacon
这步要确保ibeacon没有进行部署,否则无法连接上设备,如果已经进行了临时部署,可以将电池卸下重新安装后才可以连接。连接后可以看到如下界面,选择update fw。
3. 选择升级模式
选择高速模式,并且进入固件选择。
4. 选择shared file
进入固件选择界面,这里注意,我们可以看到选择运行的固件为a固件,所以我们需要选择b固件进行更新(如果运行的是b固件,则需要选择a固件进行更新),我们选择shared file。
5. 固件选择
选择b固件,进行升级。
6. 正在升级
7. 升级完成
第二十八节 在pc端实现oad空中升级
1. 通过pc进行oad无线升级需要mt-usbdongle,结合ti提供的ble device monitor软件。用户可以到馒头科技淘宝旗舰店购买到mt-usbdongle,然后根据馒头团队撰写的《mt-usbdongle-用户手册》中“pc端调试开发功能”章节安装好ble device monitor。
2. 在馒头科技百度网盘中下载到馒头科技提供的升级固件,a和b都要下载。
3. 打开ble device monitor软件,自动扫描当前正在广播的设备。
4. 成功扫描到一个mt-ibeacon基站设备,mac地址为:7c:66:9d:9f:63:84。信号强度为-73。点击connect按钮,向此设备发起连接。
5. 连接上后,事件日志文本框中会提示,oad support detected,说明此设备支持oad无线升级。
6. 在菜单栏options——》gap settings设置选项中,按下图给出的值设置好。
7. 在菜单栏file中点击program(oad),进行oad升级过程。这时可以在弹出来的窗口看到target image中显示“type: b version: 1”,那么需要选择ibeacona-v2.0.bin作为升级固件。反之亦然。
8. 在file image中选择刚才下载的ibeacona-v2.0.bin固件,然后点击start开始升级。升级完成后mt-ibeacon设备会自动重启,ble device monitor会失去与之的连接,这时可以单击左下角的reset按钮,复位软件重新扫描当前的ibeacon设备,或者适用手机设备搜索该设备。如果能够搜索到则说明升级成功,可以发送at指令查看固件版本号是否更新。
9. (重复7、8步骤会出现的另外一种情况)在菜单栏file中点击program(oad),进行oad升级过程。这时可以在弹出来的窗口看到target image中显示“type: a version: 1”,那么需要选择ibeaconb-v2.0.bin作为升级固件。
10. 在file image中选择刚才下载的ibeaconb-v2.0.bin固件,然后点击start开始升级。升级完成后mt-ibeacon设备会自动重启,ble device monitor会失去与之的连接,这时可以单击左下角的reset按钮,复位软件重新扫描当前的ibeacon设备,或者适用手机设备搜索该设备。如果能够搜索到则说明升级成功,可以发送at指令查看固件版本号是否更新。
11. 注意:7-8步骤和9-10步骤,是用户在升级过程中会遇到的两种情况,用户只要执行了其中一种就可以完全升级成功。
第二十九节 mt-ibeacon基站使用lightblue软件发送at指令设置
在苹果商店app store中输入lightblue,可查找到lightblue软件,如下图所示:
下载lightblue软件。下载完成之后,打开lightblue软件,如图所示:
点击进入搜索到的馒头科技mt-ibeacon基站,如图所示。
这五个通道的详细说明参考《mt-ibeacon-用户手册》。前四个通道是设置uuid、major、minor、measured的值,最后一个通道是通过at指令设置馒头科技ibeacon基站的参数。点击atcmd进入,如图所示。
点击上图左边界面的右上角的hex,选择utf-8字符串输入。这样我们才能进行输入at指令。选择完成之后,回到atcmd界面,设置回应at指令,如所示。
点击listen for notifications,变成上图所示。接着点击write new value,进行at指令的设置。如所示。
更加详尽的指令参考《mt-ibeacon-at指令手册》。
mt-ibeacon基站的设置下载网盘:
http://pan.baidu.com/share/link?shareid=3562495290&uk=3996269986#dir/path=%2f%e6%9c%b1%e5%85%86%e7%a5%baforarm%2f%e9%a6%92%e5%a4%b4%e7%a7%91%e6%8a%80%e8%93%9d%e7%89%994.0%e7%b3%bb%e5%88%97%2fmt-ibeacon%e5%9f%ba%e7%ab%99
第三十节 如何使用mt-usbdongle的透传功能
工具
1. 请用户先确认是从馒头科技购买的具有透传功能的mt-usbdongle,或者用户自己更换成了具有透传功能的固件,若不确定请联系客服。
2. 从馒头科技百度网盘中馒头科技蓝牙4.0系列——》mt-usbdongle——》透传测试软件文件夹中下载馒头科技官方提供的串口助手软件(无需安装可直接使用),以及android端测试app。
3. 在此,只说明mt-usbdongle与android设备之间的数据透传,如果用户要和其他设备进行透传,可以参考《mt254xcorestest-用户手册》。
与android端透传
1. 将usbdongle插入电脑usb接口,可以在设备管理器中发现多了一个串口设备。
2. 打开串口助手软件,将参数设置为115200/none/8/1,打开串口。
3. 打开android设备上的app——truthblue,自动搜索附近的广播设备。如下图,可以看到搜索到了1个mt-usbdongle设备和2个mt-ibeacon基站设备。
4. 点击第1行,向usbdongle设备发起连接,窗口转入下图的界面。查看user服务下面有两个通道,communication是透传通道,contrl是远控通道。点击第二行,进入透传通道。
5. 软件进入此界面后,用户就可以发送数据给usbdongle了。
6. 在下方的文本框中输入“mantoukeji”,然后点击“发送”。可以在串口助手中看到,透传过来的一模一样的数据。
7. 反过来从串口助手给android端发送数据。在串口助手下方的文本框中输入“0123456789”,然后发送。

一加5什么时候上市最新消息:一加5发布会邀请函曝光!一加5旗舰备货充足!官方拍照样张,夜拍大升级!
测长机测量块的使用方法
无人机赋能创客教育 推动中小学无人机创客教育普及
微软花大价钱收购LinkedIn图什么?
ST推出支持iDP标准的“桥接”芯片组
由浅入深,蓝牙4.0/BLE协议栈开发攻略大全(6)
华为被Facebook中止业务合作 以回应美国禁令
全球光伏市场快速发展,我国光伏产品出口总额再次突破200亿美元
Maxim Integrated发布业界首款可连续监测自放电并提供保护功能的锂离子电池电量计
华为智能手机的设计新思路
将VR的特性发挥到极致的游戏是如何诞生的?
主流精密电阻技术特点分析
SPI的四种传输模式及工作机制分析
一般人我不告诉他的行业经验【其利天下高速风筒方案开发】
中国移动2020年5G手机在智能手机市场占有率超8.5%
LG为新机器人申请专利 锤子手机价格下跌
CPU核心技术
AMD正计划收购芯片制造商赛灵思
PCB的质量问题对工艺的装配质量的影响
ROADM网络的应用优势及总体结构设计与应用场景分析