切换到宽版
爱科技/爱创意/爱折腾/爱极致;技术知识分享平台,点击进入新版数码之家网站
  • 12830阅读
  • 32回复

[外设]蓝牙模块AP6210B折腾记之-一步一步教你分析初始化数据 [复制链接]

上一主题 下一主题
离线sbiyou
 

发帖
180
M币
2570
专家
1
粉丝
17
只看楼主 倒序阅读 我要置顶 楼主  发表于: 2016-05-13
看到坛友买了POS机后只为了那颗电池,其他都丢垃圾桶,着实心疼,就算一个单片机都能玩很多花样了,比51单片机好玩多了。就此以为不再有人愿意折腾新技术了,直到前最近有坛友发表了蓝牙的串口数据,其实我两个月前就用这种方法抓取了蓝牙的数据,但是还没有完全分析透彻。我决定把我的分析结果分享给坛友。
在拿到蓝牙模块的时候首先要在网上找数据手册,我的模块是AP6210B,很遗憾博通提供的资料根本没有初始化的内容,却是发现了这个模块与其他模块的区别。


这模块是不带蓝牙协议栈的,好吧!既然这样,我用逻辑分析仪读取初始化数据看看。


所用到的工具,接好线后,先设置一个通道为下降沿触发采集,再点击开始,最后按POS机的开机键。


上面是引脚图,采集数据时只接RX和TX,还有GND直接接到USB的外壳即可,CTS和RTS不用管,这两个引脚是硬件流控制。


采集完后设置数据的波特率才能看明白,默认是115200的,但是我的模块在初始化时会先改变波特率为921600,所以看到数据错误不妨改一下波特率。
这是我采集分析的数据:http://pan.baidu.com/s/1gfc1mZT
通过分析我们可以看到单片机每发送一条数据到蓝牙,蓝牙就会回复一条数据给单片机,而他们也是有一定规律的,比如第一个数据为0x01,但是还有其他规律吗?于是我又看了TI的蓝牙协议栈,得知蓝牙里面也有一个单片机,主要是发送指令到蓝牙里面的单片机完成初始化的,就像初始化1602液晶一样。


通常有蓝牙协议栈的我们可以直接用AT指令,而没有我们要操作的是HCI层,也就是说发送的是HCI指令,HCI指令有多种格式。


首先是第一个字节表示HCI数据类型。


指令0x01开头,只能由单片机发到模块。


事件0x04开头,只能由模块发到单片机。


数据包可以双向发送。
接着是操作码,操作码由一个16字节的OCF和8字节的OGF经过重组后形成。


这是我整理的协议里的HCI指令转化为发送数据的方法。


数据转协议方法。。。要分析这些数据就要用到一个强大的手册了,SIG发布的国际蓝牙标准,蓝牙协议都是根据这个标准编写的(全英文)。http://pan.baidu.com/s/1dFM657V
首先查找OGF,比如:0x03(查找defined as 0x03快一点)。


大概知道了是链路控制命令,接着找OCF,比如:0x0003,直接往下翻。


找到了,这个是蓝牙重置命令,下面还有相关说明。也就是一开始单片机就要发送重置命令重置模块。
看了这么多,举个例子分析数据:蓝牙复位指令 HCl Reset:01 03 0C 00
第1个字节0x01,表示发送的是指令;
第2,3个字节是OGF:0x03,OCF:0x0003经过重组后的数据;
第4个字节是后面的参数长度,00表示没有参数。
再举个例子:


01 0B 04 16 77 89 39 98 22 00 54 0B 3F 42 F8 38 EE 90 09 BC 1D 1C 1E D1 E2 61
第1个字节0x01,表示发送的是指令;
第2,3个字节是OGF:0x01,OCF:0x000B经过重组后的数据;第4个字节表示参数长度22bit;

第5-10个字节表示参数BT_ADD;
第11-27个字节表示参数Link_key;

接楼下。。。
本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
本帖最近打赏记录:共26条打赏M币+80专家+1
离线sbiyou

发帖
180
M币
2570
专家
1
粉丝
17
只看该作者 1楼 发表于: 2016-05-13
请登录后查看
[ 此帖被sbiyou在2016-05-13 19:32重新编辑 ]
本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
本帖最近打赏记录:共10条打赏M币+28
离线zgklxj

发帖
468
M币
810
专家
1
粉丝
11
只看该作者 2楼 发表于: 2016-05-13
请登录后查看
离线t5r4a1
发帖
785
M币
135
专家
3
粉丝
37
只看该作者 3楼 发表于: 2016-05-13
请登录后查看
离线xzcz

发帖
6134
M币
1680
专家
0
粉丝
18
只看该作者 4楼 发表于: 2016-05-13
请登录后查看
离线sbiyou

发帖
180
M币
2570
专家
1
粉丝
17
只看该作者 5楼 发表于: 2016-05-13
回 xzcz 的帖子
请登录后查看
本帖最近打赏记录:共1条打赏M币+3
离线sbiyou

发帖
180
M币
2570
专家
1
粉丝
17
只看该作者 6楼 发表于: 2016-05-13
回 t5r4a1 的帖子
请登录后查看
本帖最近打赏记录:共1条打赏M币+3
离线衰落人

发帖
38539
M币
17324
专家
9
粉丝
98
只看该作者 7楼 发表于: 2016-05-13
请登录后查看
离线zoro

发帖
19302
M币
9600
专家
4
粉丝
37
只看该作者 8楼 发表于: 2016-05-13
请登录后查看
离线zoro

发帖
19302
M币
9600
专家
4
粉丝
37
只看该作者 9楼 发表于: 2016-05-13
请登录后查看
快速回复
限80 字节
温馨提示:欢迎交流讨论,请勿发布纯表情、纯引用等灌水帖子;以免被删除
 
上一个 下一个