logo资料库

简单粗暴学蓝牙4.0.pdf

第1页 / 共589页
第2页 / 共589页
第3页 / 共589页
第4页 / 共589页
第5页 / 共589页
第6页 / 共589页
第7页 / 共589页
第8页 / 共589页
资料共589页,剩余部分请下载后查看
前言
第一章 新手常见问题集
1.1、本章简介
********************准备阶段问题集*******************
1.2.1、新手入门,有什么学习资源吗?
1.2.2、新手入门,如何学习较快?
1.2.3、怎么样的手机才支持蓝牙4.0、蓝牙5?
1.2.4、什么是蓝牙的主机、从机?
1.2.5、蓝牙能否一主多从、一从多主?
1.2.6、蓝牙主从机通信的方式有几种?
1.2.7、蓝牙信号是否会受到干扰?
1.2.8、如何调整蓝牙通信的距离?
1.2.9、是不是蓝牙通信距离越远越好?
1.2.10、BLE跟蓝牙什么关系?
1.2.11、手机中的蓝牙是经典蓝牙还是BLE?
1.2.12、手机BLE能作从机广播吗?
1.2.13、主机、从机、客户端、服务器是什么关系?
1.2.14、手机端有什么蓝牙app好用吗?
1.2.15、BLE的认证是怎么回事?
*******************开发阶段问题集********************
1.3.1、为何有时固件端更新了代码,手机APP端却看不到现象?
1.3.2、蓝牙广播停止、蓝牙通信断开的原因是什么?
1.3.3、为什么有些工程会异常(打开时软件崩溃退出、编译没错而仿真却出错、使用别人的工程出错)?
1.3.4、为什么我的串口收发不正常、串口乱码??
1.3.5、为什么有些函数中有些变量前加void?
1.3.6、为什么看到别人代码中使用notify时,用到的特征值句柄为0x002E、0x0035,哪里来的?
1.3.7、为什么看到别人代码中使用GATT_Notification(0, &pReport, FALSE)的连接句柄是0?
1.3.8、CC2541的工程能下到CC2540中、CC2540的工程能下到CC2541中吗?
1.3.9、为什么我的packet sniffer抓不到通信数据包?
1.3.10、CC2541通信时一个数据包最多能传几个字节?
1.3.11、CC2540和CC2541有什么区别?
1.3.12、从机怎么给主机发送数据?
1.3.13、为什么我的按键按了没反应?
1.3.14、我用HalLedSet函数开led,为什么有时会闪烁?
1.3.15、为什么手机自带的蓝牙软件扫描不到CC2541的广播?
1.3.16、为什么2541flash只有256K,却能下载大于256K的hex?
1.3.17、如何查看工程的bin大小?
1.3.18、CC2541是否能同时使用两个串口?
1.3.19、在香瓜开发板上如何点亮oled?
1.3.20、使用BTool软件时显示超时,是怎么回事?
1.3.21、进行修改了CC2541端的名称、修改了CC2541端的特征值等操作,为什么手机上显示的仍然是之前的显示数据?
1.3.22、CC2540、CC2541都能作为packet sniffer的抓包工具,进行抓包吗?
1.3.23、CC2541被手机连接上以后,是否还能广播数据让其他设备搜到?
1.3.24、32M、32K外部晶振能不能省略?
1.3.25、CC2541的OSAL中使用的定时器是哪个定时器?
1.3.26、协议栈中的SimpleBLECentral例程,如何修改才能搜索周围的ble设备(如手环等)?
1.3.27、CC2541的RF工作频率是多少?
1.3.28、CC2541的adc采样位有几位?
1.3.29、CC2541从机如何获取主机MAC地址?
1.3.30、主机端接收灵敏度如何设置?
1.3.31、ANCS是什么?
1.3.32、CC2541从机的广播间隔拉长为3S,导致CC2541主机连接很慢,怎么解决?
1.3.33、simpleBLEcentral工程连接simpleBLEperipheral后,发现服务很慢,如何解决?
1.3.34、如何知道一块CR1632(120mAh)在自己的设备上能用多久?
1.3.35、如果从机申请更新参数失败了,会执行什么操作?
1.3.36、为什么我用GAPRole_GetParameter(GAPROLE_CONN_ADDR,peerAddress)获取主机(手机)的mac地址后,每次重启后mac地址就变了?
1.3.37、如何将多个hex合成一个hex?
1.3.38、蓝牙从机设备生产时该如何测试?
1.3.39、packet sniffer如何过滤出某个设备的广播包信息?
1.3.40、假设特征值6的数据长度是20,如何能让app发送少于20字节数据给CC2541?
***************仿真器CC Debugger问题集*****************
1.4.1、下载线需要几根?如何连接?
*****************开发工具问题集**********************
1.5.1、IAR版本与协议栈版本该如何选择?
1.5.2、为什么有时候IAR中设置不了断点?
1.5.3、仿真状态下,为什么查看的变量值看不到?
1.5.4、为什么工程中有些是灰色的文件?
1.5.5、工程中的“CC2541DK-MINI Keyfob”是什么?
第二章 opengua官方旗舰店
2.1、本章简介
********************蓝牙5开发板套件*******************
2.2.1、CC2640R2F开发板
2.2.2、XDS100V3下载器/仿真器
2.2.3、CC2640R2F传感器套件
2.2.4、OLED显示屏
2.2.5、USB Dongle抓包工具
*******************蓝牙4.0开发板套件******************
2.3.1、CC2540开发板
2.3.2、CC Debugger下载器/仿真器
*******************树莓派开发板套件******************
2.4.1、树莓派ZERO开发板
2.4.2、树莓派ZERO W开发板
*******************香瓜团队服务******************
2.5.1、香瓜团队培训课
2.5.2、香瓜团队技术支持服务
2.5.3、香瓜团队项目外包服务
第三章 软件的安装及使用
3.1、本章简介
3.2、下载地址
3.3、安装及使用
3.3.1、协议栈
3.3.2、编译器
3.3.3、下载软件
3.3.4、抓包软件
3.3.5、代码阅读工具
3.3.6、代码对比工具
3.3.7、串口调试助手
3.3.8、串口抓包工具
3.3.9、USB转串口驱动
3.3.10、CDC驱动
3.3.11、安卓端app
第四章 蓝牙通信初体验
4.1、本章简介
4.2、手机(主机)与蓝牙开发板(从机)的简单通信
第五章 初级例程-外设相关
5.1、本章简介
5.2.1、CC2541之spi从模式的中断接收
5.2.2、CC2541之解析协议栈的晶振初始化过程
5.2.3、CC2541之与CC2540的区别
5.2.4、CC2541之指令周期
5.2.5、CC2541之32.768kHZ外部晶振
5.2.6、CC2541之自定义IO输出
5.2.7、CC2541之按键
5.2.8、CC2541之自定义按键
5.2.9、CC2541之自定义长短按键
5.2.10、CC2541之多个自定义长短按键
5.2.11、CC2541之串口收发
5.2.12、CC2541之OLED
5.2.13、CC2541之timer1
5.2.14、CC2541之timer3
5.2.15、CC2541之看门狗
5.2.16、CC2541之PWM
5.2.17、CC2541之硬件IIC(TMP102温度传感器)
5.2.18、CC2541之CC Debugger
5.2.19、CC2541之BTool
第六章 中级例程-蓝牙相关
6.1、本章简介
6.2.1、CC2541之连接参数
6.2.2、CC2541之发现服务与特征值
6.2.3、CC2541之发现多个特征值句柄
6.2.4、CC2541之添加特征值
6.2.5、CC2541之notify
6.2.6、CC2541之indicate
6.2.7、CC2541之添加自定义服务
6.2.8、CC2541之添加自定义任务
6.2.9、CC2541之删除服务
6.2.10、CC2541之连接时广播
6.2.11、CC2541之主从机端主动断开连接
6.2.12、CC2541之开启广播过程
6.2.13、CC2541之回调函数
6.2.14、CC2541之修改MAC
6.2.15、CC2541之广播MAC
6.2.16、CC2541之动态广播
6.2.17、CC2541之动态更新设备名
6.2.18、CC2541之通过广播发送自定义数据
6.2.19、CC2541之修改广播时间
6.2.20、CC2541之设置发射功率
6.2.21、CC2541之修改广播通道
1、广播通道为全通道
2、广播通道修改成38广播通道
6.2.22、CC2541之解析simpleBLECentralEventCB
6.2.23、CC2541之RSSI
1、SimpleBLECentral工程中以连接方式读RSSI
2、SimpleBLEPeripheral工程以连接方式读RSSI
3、SimpleBLECentral工程中以不连接的扫描方式读RSSI)
6.2.24、CC2541之主机端读取特征值
6.2.25、CC2541之主机端获取广播包数据
6.2.26、CC2541之主机端获取notify数据
6.2.27、CC2541之配对与绑定
6.2.28、CC2541之设置出厂时的配对密码
6.2.29、CC2541之配对密码的读取与修改
6.2.30、CC2541之配对密码的重置
6.2.31、CC2541之数据加密与解密
6.2.32、CC2541之数据加密与解密(利用MAC形成自定义秘钥)
6.2.33、CC2541之动态广播加密数据
6.2.34、CC2541之SNV
6.2.35、CC2541之电池电量服务
6.2.36、CC2541之SBL
6.2.37、CC2541之SBL修改bootloader大小
6.2.38、CC2541之OAD
1、OAD第一次升级步骤
2、OAD第二次升级步骤
6.2.39、CC2541之Large OAD
第七章 高级例程-综合项目
7.1、本章简介
7.2、香瓜的个人代码规范
7.3.1、CC2541之通过RSSI测距
7.3.2、CC2541之DHT11温湿度采集
7.3.3、CC2541之PWM控制直流电机
7.3.4、CC2541之通信协议
更新日志
简单粗暴学蓝牙 4.0 (CC2541 篇) 作者:甜甜的大香瓜 纠错/业务合作: 897503845@qq.com 淘宝店铺:opengua 科技 本书最新下载地址:opengua 科技
简单粗暴学蓝牙 4.0(CC2541 篇) 前言................................................................................................................................. 6 第一章 新手常见问题集 ................................................................................................... 7 1.1、本章简介 .......................................................................................................... 7 ********************准备阶段问题集******************* .................................... 8 1.2.1、新手入门,有什么学习资源吗? ................................................................... 8 1.2.2、新手入门,如何学习较快? .......................................................................... 9 1.2.3、怎么样的手机才支持蓝牙 4.0、蓝牙 5? ....................................................... 9 1.2.4、什么是蓝牙的主机、从机? .......................................................................... 9 1.2.5、蓝牙能否一主多从、一从多主? ................................................................... 9 1.2.6、蓝牙主从机通信的方式有几种? ................................................................. 10 1.2.7、蓝牙信号是否会受到干扰? ........................................................................ 10 1.2.8、如何调整蓝牙通信的距离? ........................................................................ 10 1.2.9、是不是蓝牙通信距离越远越好? ................................................................. 10 1.2.10、BLE 跟蓝牙什么关系? .............................................................................. 10 1.2.11、手机中的蓝牙是经典蓝牙还是 BLE?.......................................................... 11 1.2.12、手机 BLE 能作从机广播吗?....................................................................... 11 1.2.13、主机、从机、客户端、服务器是什么关系? .............................................. 11 1.2.14、手机端有什么蓝牙 app 好用吗?................................................................ 11 1.2.15、BLE 的认证是怎么回事? ........................................................................... 12 *******************开发阶段问题集******************** .................................. 13 1.3.1、为何有时固件端更新了代码,手机 APP 端却看不到现象? ........................... 13 1.3.2、蓝牙广播停止、蓝牙通信断开的原因是什么? ............................................ 13 1.3.3、为什么有些工程会异常(打开时软件崩溃退出、编译没错而仿真却出错、使用 别人的工程出错)? ............................................................................................... 13 1.3.4、为什么我的串口收发不正常、串口乱码?? ................................................ 13 1.3.5、为什么有些函数中有些变量前加 void? ...................................................... 14 1.3.6、为什么看到别人代码中使用 notify 时,用到的特征值句柄为 0x002E、0x0035, 哪里来的? ............................................................................................................. 14 1.3.7、为什么看到别人代码中使用 GATT_Notification(0, &pReport, FALSE)的连接 句柄是 0? .............................................................................................................. 14 1.3.8、CC2541 的工程能下到 CC2540 中、CC2540 的工程能下到 CC2541 中吗?........ 15 1.3.9、为什么我的 packet sniffer 抓不到通信数据包? ....................................... 15 1.3.10、CC2541 通信时一个数据包最多能传几个字节? .......................................... 15 1.3.11、CC2540 和 CC2541 有什么区别? ................................................................ 15 1.3.12、从机怎么给主机发送数据?....................................................................... 15 1.3.13、为什么我的按键按了没反应? ................................................................... 15 1.3.14、我用 HalLedSet 函数开 led,为什么有时会闪烁?..................................... 16 1.3.15、为什么手机自带的蓝牙软件扫描不到 CC2541 的广播? .............................. 16 1.3.16、为什么 2541flash 只有 256K,却能下载大于 256K 的 hex? ....................... 16 1.3.17、如何查看工程的 bin 大小?....................................................................... 17 1.3.18、CC2541 是否能同时使用两个串口? ........................................................... 17 1.3.19、在香瓜开发板上如何点亮 oled? ............................................................... 17 1.3.20、使用 BTool 软件时显示超时,是怎么回事? .............................................. 18 1.3.21、进行修改了 CC2541 端的名称、修改了 CC2541 端的特征值等操作,为什么手机 第 1 页
简单粗暴学蓝牙 4.0(CC2541 篇) 上显示的仍然是之前的显示数据? .......................................................................... 18 1.3.22、CC2540、CC2541 都能作为 packet sniffer 的抓包工具,进行抓包吗? ..... 18 1.3.23、CC2541 被手机连接上以后,是否还能广播数据让其他设备搜到? .............. 18 1.3.24、32M、32K 外部晶振能不能省略? ............................................................... 19 1.3.25、CC2541 的 OSAL 中使用的定时器是哪个定时器? ........................................ 19 1.3.26、协议栈中的 SimpleBLECentral 例程,如何修改才能搜索周围的 ble 设备(如 手环等)? ............................................................................................................. 19 1.3.27、CC2541 的 RF 工作频率是多少? ................................................................ 19 1.3.28、CC2541 的 adc 采样位有几位? .................................................................. 19 1.3.29、CC2541 从机如何获取主机 MAC 地址? ........................................................ 20 1.3.30、主机端接收灵敏度如何设置? ................................................................... 20 1.3.31、ANCS 是什么? ........................................................................................... 21 1.3.32、CC2541 从机的广播间隔拉长为 3S,导致 CC2541 主机连接很慢,怎么解决? ............................................................................................................................... 21 1.3.33、simpleBLEcentral 工程连接 simpleBLEperipheral 后,发现服务很慢,如何 解决? .................................................................................................................... 21 1.3.34、如何知道一块 CR1632(120mAh)在自己的设备上能用多久? ..................... 22 1.3.35、如果从机申请更新参数失败了,会执行什么操作?.................................... 22 1.3.36、为什么我用 GAPRole_GetParameter(GAPROLE_CONN_ADDR,peerAddress)获取主 机(手机)的 mac 地址后,每次重启后 mac 地址就变了? ....................................... 22 1.3.37、如何将多个 hex 合成一个 hex? ................................................................ 23 1.3.38、蓝牙从机设备生产时该如何测试? ............................................................ 23 1.3.39、packet sniffer 如何过滤出某个设备的广播包信息? ............................... 23 1.3.40、假设特征值 6 的数据长度是 20,如何能让 app 发送少于 20 字节数据给 CC2541? ............................................................................................................................... 23 ***************仿真器 CC Debugger 问题集*****************............................. 24 1.4.1、下载线需要几根?如何连接? ..................................................................... 24 *****************开发工具问题集********************** .................................. 25 1.5.1、IAR 版本与协议栈版本该如何选择? ........................................................... 25 1.5.2、为什么有时候 IAR 中设置不了断点? .......................................................... 25 1.5.3、仿真状态下,为什么查看的变量值看不到? ................................................ 26 1.5.4、为什么工程中有些是灰色的文件? .............................................................. 26 1.5.5、工程中的“CC2541DK-MINI Keyfob”是什么? ............................................ 27 第二章 opengua 官方旗舰店 ........................................................................................... 28 2.1、本章简介 ........................................................................................................ 28 ********************蓝牙 5 开发板套件******************* .............................. 29 2.2.1、CC2640R2F 开发板 ....................................................................................... 29 2.2.2、XDS100V3 下载器/仿真器 ............................................................................. 31 2.2.3、CC2640R2F 传感器套件 ................................................................................ 32 2.2.4、OLED 显示屏 ................................................................................................ 33 2.2.5、USB Dongle 抓包工具 .................................................................................. 34 *******************蓝牙 4.0 开发板套件****************** .............................. 35 2.3.1、CC2540 开发板 ............................................................................................ 35 2.3.2、CC Debugger 下载器/仿真器 ....................................................................... 36 第 2 页
简单粗暴学蓝牙 4.0(CC2541 篇) *******************树莓派开发板套件****************** .................................. 37 2.4.1、树莓派 ZERO 开发板..................................................................................... 37 2.4.2、树莓派 ZERO W 开发板 ................................................................................. 38 *******************香瓜团队服务****************** ......................................... 39 2.5.1、香瓜团队培训课 .......................................................................................... 39 2.5.2、香瓜团队技术支持服务 ............................................................................... 40 2.5.3、香瓜团队项目外包服务 ............................................................................... 40 第三章 软件的安装及使用 ............................................................................................. 41 3.1、本章简介 ........................................................................................................ 41 3.2、下载地址 ........................................................................................................ 41 3.3、安装及使用 .................................................................................................... 42 3.3.1、协议栈 ................................................................................................. 42 3.3.2、编译器 ................................................................................................. 43 3.3.3、下载软件 ............................................................................................. 44 3.3.4、抓包软件 ............................................................................................. 45 3.3.5、代码阅读工具 ...................................................................................... 46 3.3.6、代码对比工具 ...................................................................................... 47 3.3.7、串口调试助手 ...................................................................................... 48 3.3.8、串口抓包工具 ...................................................................................... 49 3.3.9、USB 转串口驱动 .................................................................................... 50 3.3.10、CDC 驱动 ............................................................................................ 51 3.3.11、安卓端 app ......................................................................................... 52 第四章 蓝牙通信初体验 ................................................................................................. 53 4.1、本章简介 ........................................................................................................ 53 4.2、手机(主机)与蓝牙开发板(从机)的简单通信 ............................................ 54 第五章 初级例程-外设相关............................................................................................ 62 5.1、本章简介 ........................................................................................................ 62 5.2.1、CC2541 之 spi 从模式的中断接收 ................................................................ 63 5.2.2、CC2541 之解析协议栈的晶振初始化过程 ...................................................... 84 5.2.3、CC2541 之与 CC2540 的区别 ......................................................................... 89 5.2.4、CC2541 之指令周期 ..................................................................................... 91 5.2.5、CC2541 之 32.768kHZ 外部晶振 .................................................................... 93 5.2.6、CC2541 之自定义 IO 输出 ............................................................................. 95 5.2.7、CC2541 之按键 .......................................................................................... 100 5.2.8、CC2541 之自定义按键 .................................................................................113 5.2.9、CC2541 之自定义长短按键 ......................................................................... 121 5.2.10、CC2541 之多个自定义长短按键 ................................................................ 132 5.2.11、CC2541 之串口收发 .................................................................................. 155 5.2.12、CC2541 之 OLED ........................................................................................ 166 5.2.13、CC2541 之 timer1 .................................................................................... 191 5.2.14、CC2541 之 timer3 .................................................................................... 196 5.2.15、CC2541 之看门狗 ..................................................................................... 199 5.2.16、CC2541 之 PWM.......................................................................................... 203 5.2.17、CC2541 之硬件 IIC(TMP102 温度传感器) ............................................... 212 第 3 页
简单粗暴学蓝牙 4.0(CC2541 篇) 5.2.18、CC2541 之 CC Debugger............................................................................ 226 5.2.19、CC2541 之 BTool ...................................................................................... 232 第六章 中级例程-蓝牙相关.......................................................................................... 237 6.1、本章简介 ...................................................................................................... 237 6.2.1、CC2541 之连接参数 ................................................................................... 238 6.2.2、CC2541 之发现服务与特征值 ..................................................................... 243 6.2.3、CC2541 之发现多个特征值句柄 .................................................................. 247 6.2.4、CC2541 之添加特征值 ................................................................................ 256 6.2.5、CC2541 之 notify ...................................................................................... 269 6.2.6、CC2541 之 indicate................................................................................... 273 6.2.7、CC2541 之添加自定义服务 ......................................................................... 286 6.2.8、CC2541 之添加自定义任务 ......................................................................... 305 6.2.9、CC2541 之删除服务 ................................................................................... 315 6.2.10、CC2541 之连接时广播 .............................................................................. 320 6.2.11、CC2541 之主从机端主动断开连接 ............................................................. 323 6.2.12、CC2541 之开启广播过程 ........................................................................... 326 6.2.13、CC2541 之回调函数 .................................................................................. 331 6.2.14、CC2541 之修改 MAC................................................................................... 337 6.2.15、CC2541 之广播 MAC................................................................................... 340 6.2.16、CC2541 之动态广播 .................................................................................. 346 6.2.17、CC2541 之动态更新设备名 ....................................................................... 353 6.2.18、CC2541 之通过广播发送自定义数据 ......................................................... 358 6.2.19、CC2541 之修改广播时间 ........................................................................... 362 6.2.20、CC2541 之设置发射功率 ........................................................................... 364 6.2.21、CC2541 之修改广播通道 ........................................................................... 367 1、广播通道为全通道 .................................................................................... 368 2、广播通道修改成 38 广播通道..................................................................... 370 6.2.22、CC2541 之解析 simpleBLECentralEventCB................................................ 371 6.2.23、CC2541 之 RSSI ........................................................................................ 378 1、SimpleBLECentral 工程中以连接方式读 RSSI ............................................ 379 2、SimpleBLEPeripheral 工程以连接方式读 RSSI .......................................... 384 3、SimpleBLECentral 工程中以不连接的扫描方式读 RSSI)........................... 387 6.2.24、CC2541 之主机端读取特征值 .................................................................... 389 6.2.25、CC2541 之主机端获取广播包数据 ............................................................. 393 6.2.26、CC2541 之主机端获取 notify 数据 ........................................................... 404 6.2.27、CC2541 之配对与绑定 .............................................................................. 408 6.2.28、CC2541 之设置出厂时的配对密码 ............................................................. 417 6.2.29、CC2541 之配对密码的读取与修改 ............................................................. 421 6.2.30、CC2541 之配对密码的重置 ....................................................................... 432 6.2.31、CC2541 之数据加密与解密 ....................................................................... 467 6.2.32、CC2541 之数据加密与解密(利用 MAC 形成自定义秘钥) .......................... 470 6.2.33、CC2541 之动态广播加密数据 .................................................................... 477 6.2.34、CC2541 之 SNV.......................................................................................... 482 6.2.35、CC2541 之电池电量服务 ........................................................................... 489 第 4 页
简单粗暴学蓝牙 4.0(CC2541 篇) 6.2.36、CC2541 之 SBL.......................................................................................... 498 6.2.37、CC2541 之 SBL 修改 bootloader 大小........................................................ 505 6.2.38、CC2541 之 OAD.......................................................................................... 508 1、OAD 第一次升级步骤 .................................................................................. 512 2、OAD 第二次升级步骤 .................................................................................. 523 6.2.39、CC2541 之 Large OAD ............................................................................... 525 第七章 高级例程-综合项目.......................................................................................... 542 7.1、本章简介 ...................................................................................................... 542 7.2、香瓜的个人代码规范 .................................................................................... 543 7.3.1、CC2541 之通过 RSSI 测距 ........................................................................... 547 7.3.2、CC2541 之 DHT11 温湿度采集 ..................................................................... 552 7.3.3、CC2541 之 PWM 控制直流电机 ..................................................................... 563 7.3.4、CC2541 之通信协议 ................................................................................... 576 更新日志...................................................................................................................... 588 第 5 页
简单粗暴学蓝牙 4.0(CC2541 篇) 前言 大家好,我是甜甜的大香瓜,欢迎阅读本书。 在开始正式阅读之前,我想在这里聊聊本书承载的思想,以便大家更好地阅读正文。 一、香瓜认为的好书是怎么样的? 香瓜认为一个好的工具是会让人变“傻”的。 举几个例子,用习惯了打火机就不会钻木取火了、开习惯了自动挡汽车就不会开手动挡汽车 了、用习惯了 iphone 就不会用安卓手机了„„ 所以,香瓜希望这本书能让你变“傻”,让你毫不费脑就能实现项目功能,让你在翻阅其他 技术类型的书籍时邹着眉头蹦出一句——书,不是这么写的。 二、本书有何特点? 1、文档公开:任何人都可免费下载本书 pdf。 2、快速更新:读者反馈的任何错误,香瓜第一时间更新后重新发布新版本 pdf。 3、极简步骤:所有例程基于一个基础 demo,在本书中提供所有最简操作步骤。 4、写你想看:把你想看的技术内容反馈给香瓜,香瓜会挑选一部分编写进此书。 5、移植方便:再也不用担心协议栈升级,按照本书步骤再做一遍即可。 6、内容开源:欢迎大家分享知识点、源码给香瓜,香瓜会实验后写进本书。 三、给新手的几点建议 1、不要害怕因技术分享而被别人超越:技术开源激发出的学习能力是别人学不走的。 2、不要觉得自己水平较低就无法帮助别人:有比你更“零基础”的人需要你的帮助。 3、不要害怕在众目睽睽之下交流技术:出错了还有其他人能帮你纠正。 最后,如若书中有任何错误(包括标点符号使用不当),请发邮件至 897503845@qq.com,我 会第一时间更正。谢谢大家。 甜甜的大香瓜 2017 年 05 月 16 日 第 6 页
简单粗暴学蓝牙 4.0(CC2541 篇) 第一章 新手常见问题集 1.1、本章简介 本章香瓜将介绍新手最常遇到的问题,不断更新,本章必读。 第 7 页
分享到:
收藏