首页 > 产品 > 无线连接 > CC2640R2F软件速成 >

蓝牙产品

最新课程

热门课程

CC2640R2软件速成之二-开发板,软件包及协议栈

大家好我是德州仪器无线连接 技术部门的现场应用 工程师Barbara Wu 这里我要给大家介绍德州 仪器新一代的低功耗蓝牙芯片 软件开发的相关知识在 上一讲中 我们一起了解了芯片是如何工作的 在这一讲中我们一起来看一看 CC2640和cc2640R2F 都有哪些可用的开发版软件包 以及协议栈 总的来说可供 CC2640和C2640R2F 使用的开发板有两种 一种是SensorTag 另外一种是LaunchPad SensorTag开发版上搭载了 很多的外部 传感器 比如六轴加速度传感器 温湿度传感器光照传感器等等 同时也附带一个512K的web flash 它需要搭配使用CCDEVPack 第八个板来完成烧录 和调试的功能 使用SensorTag 开发版可以使用TI提供的例程 在五分钟之内搭建起BLE终端 设备采集传感器数据并通过BLE 把数据传输到手机APP上并 显示的应用场景示例 LaunchPad上 已经集成了烧录器不需要再配合 CCDEVPack第八个板来 完成烧录和调试的工作 同时附带 的外部flash大小也增加 到了一兆 但并不带有传感器 LaunchPAD的好处是板子上接触了 芯片的各个引脚可以方便地使用 连线的方式搭建或者测试符合 自己应用的硬件环境比如对GPL口的 操作或者测试功耗 等等 同时配合LaunchPad的提案也 提供了更丰富的应用例程 包括 一些可以直接和手机APP连接 的例程 在上一讲中我们有提到 CC2640和CC2640R2F在 基本的芯片架构和工作原理上 相同 但是在软件功能上还是 有一些不同 这里我们就一起来 看一下到底有什么不同 从封装来看 cc2640和cc2640R2F 都支持QFN的封装 而且是 pin to pin的 C2640R2F增加了 一种2.7毫米乘2.7毫米的 芯片级封装 在软件开发包支持的 方面CC2640R2F使用的是 3.0.0版本的开发包 而CC2640则使用的是2.2.1版本 的开发包 这两个开发包从软件 实现的功能来说都是一样的 但是3.0.0版本释放了更多的 flash空间供客户应用编程使用 从开发版的支持来说 CC2640R2F使用搭在 CC2640R2的LaunchPad的 而CC2640则使用搭在CC2650 的LaunchPad 从蓝牙协议栈来说 目前两个开发包都支持蓝牙4.2协议 而2640R2F芯片本身 支持蓝牙5.0的PHY 在四月发布的 新的开发包之后 支持蓝牙5.0的协议 对于CC2640来说 则只支持到蓝牙4.2协议 所以如果要 对CC2640R2F和 CC2640的区别勾重点 就是三条 第一CC2640R2F支持 蓝牙5.0的PHY 内建对蓝牙5.0 的新特性发送长广播包的支持 第二点CC2640R2F可以 为客户应用的程序编程提供更大 的flash空间支持 从宽度中 我们可以看到同样是运行TI的 simple BLE peripheral例程 基于蓝牙4.0协议 CC2640R2F 可以提供给客户应用程序 编程的空间是83K大B 而CC2640是41K 如果是基于 蓝牙4.2的协议 CC2640R2F 可以提供给客户应用程序 编程的空间是80K大B 而CC2640则只有31K 第三点 就是CC2640R2F除了 pin to pin支持CC2640QFN 的封装之外还另外添加了一种 更小的2.7毫米乘2.7毫米的 芯片级封装 这种封装的外部 GPIO口有14个 那么为什么 在不改变芯片架构的情况下 CC2640R2F能够提供80K 字节的可编程空间给客户应用 程序使用呢 从框图中我们可以 看到CC2640R2F将蓝牙 4.2的协议栈放到ROM里面去了 后期如果需要升级必要一协议栈 可以通过打ROM patch的方式来实现 在这样的架构之上CC2640R2F 提供给客户应用的空间 可以满足和256K flash的BLE SoC芯片 一样的使用需求 下面我们一起来 看一下适用于CC2640的 2.2版本开发包都支持哪些蓝牙 4. 2的特点 首先添加了LE安全 连接的属性 包括修复蓝牙4.0和 4.1中使用legacy pairing存在的可能 被窃听的漏洞 添加了数字比较 配对认证方法 以防止中间人的攻击 使用ECDH算法用于配对 过程中的密钥交换 使用和蓝牙 4.0相同的FIPS兼容AES128 加密 向下兼容LE legacy pairing 方法 这一特点使蓝牙4.2的 设备连接更加安全可靠 然后增加 了LE1.2版本的隐私规范 通过使用随时间变化的随机蓝牙设备 地址来保护设备不被跟踪 修复了 老版本蓝牙协议中对实现隐私 功能混淆的部分 通过屏蔽不需要 的设备连接或者扫描结果来提高 效率 进一步降低功耗 允许对绑定 的IOS和安卓一设备使用 白名单从而实现隐私属性 这一特点 可以防止BLE4.2设备被 非使用者窃听和跟踪 同时又使整个 设备的功耗更低 第三点LE数据 长度扩展 和蓝牙4.0和4.1相比 数据吞吐量可以提高2.5倍 在使用同样的一兆Mbps通讯速率 PHY层的情况下PDU又可以从 27个字节增大到最多251个字节 具体PDU的大小是在连接 的过程中由通讯的双方设备协商 确认 由于PDU的增大带来了 整个吞吐量的提高 所以BLE设备 再也不是只能低速传输无线数据 也可以满足一些对数据 吞吐量有一定要求的应用 最典型 的一个例子就是在做无限升级 OAD的时候高数据吞吐量 可以明显缩短无限升级的时间 TI同样提供了专门适用于 CC2640R2F的软件开发包 这个开发包从对蓝牙协议的支持 来说和CC2640是一样的 都可以支持蓝牙4.2协议 从提供的 软件例程来看 包含了和 CC2640开发包一样的事例程序 同时还提供一个可选的应用程序 安装包 这个外加的安装包里包含 了一些额外的应用历程 从开发包 的组成来说则是和TI SimpleLink 一系列的芯片保持一致 这个高度 整合的平台使客户可以方便快捷 地在不同硬件之间进行切换 如果您已经使用过TI SimpleLink系列 芯片中的一种 并且已经基于它的 开发包开发过自己的应用程序 那么做少量的修改就可以方便地 把自己的应用程序移植到新的 硬件平台之上 从TI的官方网站 上下载软件包的安装文件并安装 完成之后可以看到在系统C盘 tm目录下就可以找到 CC2640R2F的软件资料了 包括TI Rtos内核层 驱动层的代码以及应用软件开发 最关心的事例程序和开发文档 示例程序在开发包目录example 文件夹下 包括对BLE 协议栈的例程以及对外设的 例程等等 开发文档则在开发包 目录docx文件夹下 从TI Rtos BLE协议栈 从系统 底层驱动到协议栈应用事例都有 专门的文档作为介绍 目录内有 一个名为Documentation Overview的 html文件 将所有的应用开发 文档整合在一个页面里 透过浏览器打开这个文件就可以方便 地浏览和查找你需要的开发寿命文档 那么如何修改CC2640R2F 软件包中的事例程序 使它能够运行在自己的硬件平台之上呢 其实步骤也非常简单 首先确认 硬件平台上使用的CC2640R2F 芯片的封装是什么 拿5x5 QFN封装作为例子 这时只需要 修改版及配置 将宏定义从默认对 7×7芯片的支持改为对5x5 芯片的支持 然后根据原理图对应 的更改银角定义就可以了 也可以 从TI的GitHub上获取 TI搭载不同封装芯片的EM板 的板级配置文件作为参考 谢谢大家的时间

大家好我是德州仪器无线连接

技术部门的现场应用 工程师Barbara Wu

这里我要给大家介绍德州

仪器新一代的低功耗蓝牙芯片

软件开发的相关知识在 上一讲中

我们一起了解了芯片是如何工作的

在这一讲中我们一起来看一看

CC2640和cc2640R2F

都有哪些可用的开发版软件包

以及协议栈 总的来说可供

CC2640和C2640R2F

使用的开发板有两种 一种是SensorTag

另外一种是LaunchPad

SensorTag开发版上搭载了 很多的外部

传感器 比如六轴加速度传感器

温湿度传感器光照传感器等等

同时也附带一个512K的web flash

它需要搭配使用CCDEVPack

第八个板来完成烧录

和调试的功能 使用SensorTag

开发版可以使用TI提供的例程

在五分钟之内搭建起BLE终端

设备采集传感器数据并通过BLE

把数据传输到手机APP上并

显示的应用场景示例 LaunchPad上

已经集成了烧录器不需要再配合

CCDEVPack第八个板来

完成烧录和调试的工作 同时附带

的外部flash大小也增加

到了一兆 但并不带有传感器

LaunchPAD的好处是板子上接触了

芯片的各个引脚可以方便地使用

连线的方式搭建或者测试符合

自己应用的硬件环境比如对GPL口的

操作或者测试功耗

等等 同时配合LaunchPad的提案也

提供了更丰富的应用例程 包括

一些可以直接和手机APP连接

的例程 在上一讲中我们有提到

CC2640和CC2640R2F在

基本的芯片架构和工作原理上

相同 但是在软件功能上还是

有一些不同 这里我们就一起来

看一下到底有什么不同 从封装来看

cc2640和cc2640R2F

都支持QFN的封装 而且是

pin to pin的 C2640R2F增加了

一种2.7毫米乘2.7毫米的

芯片级封装 在软件开发包支持的

方面CC2640R2F使用的是

3.0.0版本的开发包

而CC2640则使用的是2.2.1版本

的开发包 这两个开发包从软件

实现的功能来说都是一样的

但是3.0.0版本释放了更多的

flash空间供客户应用编程使用

从开发版的支持来说

CC2640R2F使用搭在

CC2640R2的LaunchPad的

而CC2640则使用搭在CC2650

的LaunchPad 从蓝牙协议栈来说

目前两个开发包都支持蓝牙4.2协议

而2640R2F芯片本身

支持蓝牙5.0的PHY 在四月发布的 新的开发包之后

支持蓝牙5.0的协议 对于CC2640来说

则只支持到蓝牙4.2协议 所以如果要

对CC2640R2F和

CC2640的区别勾重点 就是三条

第一CC2640R2F支持

蓝牙5.0的PHY 内建对蓝牙5.0

的新特性发送长广播包的支持

第二点CC2640R2F可以

为客户应用的程序编程提供更大

的flash空间支持 从宽度中

我们可以看到同样是运行TI的

simple BLE peripheral例程

基于蓝牙4.0协议 CC2640R2F

可以提供给客户应用程序

编程的空间是83K大B

而CC2640是41K 如果是基于

蓝牙4.2的协议 CC2640R2F

可以提供给客户应用程序

编程的空间是80K大B

而CC2640则只有31K 第三点

就是CC2640R2F除了

pin to pin支持CC2640QFN

的封装之外还另外添加了一种

更小的2.7毫米乘2.7毫米的

芯片级封装 这种封装的外部

GPIO口有14个 那么为什么

在不改变芯片架构的情况下

CC2640R2F能够提供80K

字节的可编程空间给客户应用

程序使用呢 从框图中我们可以

看到CC2640R2F将蓝牙

4.2的协议栈放到ROM里面去了

后期如果需要升级必要一协议栈

可以通过打ROM patch的方式来实现

在这样的架构之上CC2640R2F

提供给客户应用的空间

可以满足和256K

flash的BLE SoC芯片

一样的使用需求 下面我们一起来

看一下适用于CC2640的

2.2版本开发包都支持哪些蓝牙

4. 2的特点 首先添加了LE安全

连接的属性 包括修复蓝牙4.0和

4.1中使用legacy pairing存在的可能

被窃听的漏洞 添加了数字比较

配对认证方法 以防止中间人的攻击

使用ECDH算法用于配对

过程中的密钥交换 使用和蓝牙

4.0相同的FIPS兼容AES128

加密 向下兼容LE legacy pairing

方法 这一特点使蓝牙4.2的

设备连接更加安全可靠 然后增加

了LE1.2版本的隐私规范

通过使用随时间变化的随机蓝牙设备

地址来保护设备不被跟踪 修复了

老版本蓝牙协议中对实现隐私

功能混淆的部分 通过屏蔽不需要

的设备连接或者扫描结果来提高

效率 进一步降低功耗 允许对绑定

的IOS和安卓一设备使用

白名单从而实现隐私属性 这一特点

可以防止BLE4.2设备被

非使用者窃听和跟踪 同时又使整个

设备的功耗更低 第三点LE数据

长度扩展 和蓝牙4.0和4.1相比

数据吞吐量可以提高2.5倍

在使用同样的一兆Mbps通讯速率

PHY层的情况下PDU又可以从

27个字节增大到最多251个字节

具体PDU的大小是在连接

的过程中由通讯的双方设备协商

确认 由于PDU的增大带来了

整个吞吐量的提高 所以BLE设备

再也不是只能低速传输无线数据

也可以满足一些对数据

吞吐量有一定要求的应用 最典型

的一个例子就是在做无限升级

OAD的时候高数据吞吐量

可以明显缩短无限升级的时间

TI同样提供了专门适用于

CC2640R2F的软件开发包

这个开发包从对蓝牙协议的支持

来说和CC2640是一样的

都可以支持蓝牙4.2协议 从提供的

软件例程来看 包含了和

CC2640开发包一样的事例程序

同时还提供一个可选的应用程序

安装包 这个外加的安装包里包含

了一些额外的应用历程 从开发包

的组成来说则是和TI SimpleLink

一系列的芯片保持一致 这个高度

整合的平台使客户可以方便快捷

地在不同硬件之间进行切换

如果您已经使用过TI SimpleLink系列

芯片中的一种 并且已经基于它的

开发包开发过自己的应用程序

那么做少量的修改就可以方便地

把自己的应用程序移植到新的

硬件平台之上 从TI的官方网站

上下载软件包的安装文件并安装

完成之后可以看到在系统C盘

tm目录下就可以找到

CC2640R2F的软件资料了

包括TI Rtos内核层

驱动层的代码以及应用软件开发

最关心的事例程序和开发文档

示例程序在开发包目录example

文件夹下 包括对BLE

协议栈的例程以及对外设的

例程等等 开发文档则在开发包

目录docx文件夹下 从TI Rtos

BLE协议栈 从系统

底层驱动到协议栈应用事例都有

专门的文档作为介绍 目录内有

一个名为Documentation Overview的

html文件 将所有的应用开发

文档整合在一个页面里

透过浏览器打开这个文件就可以方便

地浏览和查找你需要的开发寿命文档

那么如何修改CC2640R2F

软件包中的事例程序

使它能够运行在自己的硬件平台之上呢

其实步骤也非常简单 首先确认

硬件平台上使用的CC2640R2F

芯片的封装是什么

拿5x5 QFN封装作为例子 这时只需要

修改版及配置 将宏定义从默认对

7×7芯片的支持改为对5x5

芯片的支持 然后根据原理图对应

的更改银角定义就可以了 也可以

从TI的GitHub上获取

TI搭载不同封装芯片的EM板

的板级配置文件作为参考

谢谢大家的时间

视频报错
手机看
扫码用手机观看
收藏本课程

视频简介

CC2640R2软件速成之二-开发板,软件包及协议栈

所属课程:CC2640R2F软件速成 发布时间:2017.04.19 视频集数:3 本节视频时长:00:11:53
带领您了解CC2640R2软件开发,从熟悉您的第一个CC2640R2F例程到编写差异化定制应用,帮助您从入门到专家一步到位。
TI培训小程序