CC2640R2软件速成之三-软件开发从入门到专家
Loading the player...
将在30s后自动为您播放下一课程
大家好我是德州仪器无线连接技术部门的现场应用工程师Barbara Wu 这里我要给大家介绍德州仪器新一代的低功耗蓝牙芯片 软件开发的相关知识 之前我们介绍过芯片架构工作原理 以及软件开发包 这一讲我们深入来了解一下软件开发 看看如何从快速的开发入门 到软件专家 软件有存放于ROM的代码 和基于flash的代码两部分组成 在cc2640上ROM里面存放TI RTOS内核 和部分的BLE协议栈 在cc2640R2F上更多的BLE协议栈被放进了ROM 这些放在ROM资源是不需要占用flash的空间的 因此cc2640R2F提供了更大的flash空间 供上层应用程序使用 在flash部分上层应用程序 BLE的profile TI RTOS 都是以源码的方式提供 BLE的protocol协议栈 以库的方式提供通过API函数接口访问 可以使用CCS或IAR 作为编译器开发来调试软件 在编译的时候 应用程序和BLE协议栈 是分开编译的 这样的好处是在无限升级软件的时候 可以根据需要选择只升级应用程序的部分 或者同时升级应用程序和协议栈 从而提高了无限升级操作的效率 降低整个应用系统的使用功耗 协议栈和上层应用程序都基于TI RTOS开发 TI RTOS是一个实时操作系统 支持抢占式的多线程 只有确定性的调度机制 使用专门为低功耗而定制的内核 可以零延时配置和响应中断 包括各种定时器 软件层的时钟 精度可以达到微秒级别 同时TI RTOS还集成了非常多的软件功能模块 比如用于不同任务之间调度的信号量 外设接口的驱动程序 以及对电源功耗管理的模块 上层应用程序可以直接调用这些模块 相对应的API函数接口 从而简单快速的完成对应的操作 而不需要另外再重新编程 特别是功耗管理模块 已经在BLE协议栈中集成 上层应用程序只需要完成自己的应用需求开发 系统会自动根据软件应用情况 控制整个设备运行在能够满足应用的最低功耗状态 在软件开发方面 TI提供了非常丰富的例程以及多样的上手方式 从左到右不同的开发方式 涵盖了从简单版到进阶版的所有阶段 首先最简单的CCS Cloud加example的方式 不需要预先安装任何软件开发包 只需要一块launchpad和可以连接到互联网的浏览器 在浏览器中打开云服务器中的内存 可以再现编译例程或者烧录你的launchpad 对于需要的例程 也可以直接从源服务器下载到本地 进阶版的SimpleLink Academy 是一个学习例程的非常好的工具 在这个工具中基于几个典型的例程 分别完成不同的功能任务 工具列出了完成不同的功能需要做的代码的修改 并解释为什么需要做这样的修改 以及不同语句的作用 最后还有互动问答帮助理解 在整个step by step的教学过程中 用户可以学习到TI RTOS 自定义BLE的服务开发 Ble网路处理器 sensor controller等等非常有用的BLE相关知识 如果简单版的CCS Cloud 和进阶版的SimpleLink Academy 都满足不了你 你可以选择最难模式 直接使用BLE协议栈开发包和GitHub 协议栈开发包包含了对SIG定义好的 一些通用的BLE profile的使用实例 同时也包含了很多TI自定义BLE profile的例程 可以很容易的基于这些例程修改 或者搭建自己的BLE设备应用程序 同时github上TI还提供了一些不断添加在开发包上 包含新的功能的例程 比如组成设备的一体化 网络处理器的应用 从窗口打印应用调试信息等功能 都是最先从github上发布的 下面我们就以project zero例程为例 为大家介绍如何使用CCS Cloud 首先打开Chrome浏览器 打开链接 找到cc2640R2 launchpad 在开发版的目录下找到project zero 这个时候我们可以看到project zero的 Introduction已经在界面上显示 在界面上我们可以看到project zero App Project in Resource Explorer 打开这个 就直接打开了project zero例程 点击import to CCS Cloud 就可以导入工程到CCS Cloud 在这个地方看到project zero 已经被导入了 在这里我们已经连接了cc2640R2 Launchpad开发版到电脑上 所以直接点击Run 就可以再现编译工程和烧录开发版 这个时候看到已经在烧录开发版 这个时候烧录已经完成 board reset已经完成 那么如何使用这个软件呢 我们可以在Resource Explorer里面 找到对这个例程的说明 那么说明有提到在这个烧录完成开发版之后需要一个窗口调试工具 所以我打开一个调试工具 设置串口 然后我reset一下板子 这个时候可以看到 板子是已经进入了一个广播的状态 那么这个其实和我们的这个guide里面 显示的是一样的 进入广播状态 所以这个时候我拿出手机 在guide里面 它有说如何把project zero 连接到手机 所以TI有提供一个 叫Sensor Tag for IOS的app 那么我现在就打开一个这样的app 然后按照操作去连接 在连接上之后 可以看到log再根据实时的更新了 那么具体要做怎么样的操作呢 实际上可以看到它这个project zero里面 只有三个service 那么这个service其实在我们的文档里面也是有介绍的 它有说 对应的有三个service service下面会有不同的属性值 比如LED0对应的是111这个UID 那么我对它进行读或者写的操作 应该就可以对它控制开和关 那么回到我们的窗口调试工具 看一下 首先我读一下 LED0现在是一个零的状态 然后我要对它进行写 把它写成01 这个时候就可以看到 板子上面的灯亮了 因为这个地方我们只能看到log 所以其实在我这边的时候板子已经亮了灯 但是从log里面其实已经打出来了 这个灯确实是点亮了 那同样的我们也可以做相应的操作映射开发板上的按键操作 以及在手机和开发板之间进行 数据的收发 project zero是一个非常好的基础程序 从log信息我们可以轻松的在代码里找到对应的位置 很容易上手的一个软件开发 下面进入进阶版的simplelink Academy 前面有介绍这是一个非常棒的学习例程的工具 这个工具可以通过在线的方法访问 也可以下载安装本地文件 安装之后我们就可以直接在ccs里面访问到 SimpleLink Academy里的例子和任务 是根据cc2640/cc2640r2软件的发展 不断更新的 今天我们同样可以在academy中 找到基于project zero的教程 比如我打开了SimpleLink Academy 在BLE的最基础的教程之中 我们可以看到project zero如何使用 包括如何建立自己的环境 需要什么样的开发版 需要下载什么样的开发包 然后有介绍我们刚才介绍过的 用CCS Cloud的方法 然后编译 发现不同的service 如何使用notification 到最后如何自定义自己的应用程序 除了基于BLE协议栈的教程 SimpleLink Academy同样也提供了对TI-RTOS教程 通过课程可以了解到 TI- RTOS的几个重要组成部分 例如任务 信号量 中断 处理流程等 在完成了基础教程之后 SimpleLink Academy又提供了进阶版的任务 例如如何用SIG组织发布的 使用图形界面的开发工具 Bluetooth Developer Studio 来定义和开发自己的BLE协议 又例如 如何添加红外信号的驱动 这些进阶的教程可以帮助你一步步的深入学习 更多的平台知识 在完成了进阶版的教程之后 相信已经可以满足大多数的应用开发需要 但是SimpleLink Academy还开设了提高班 在提高班里你可以学习到更多的工具的使用 帮助你完成一些定制化的 或者说有差异性的功能的开发 比如如何使用Sensor Controller 进一步优化系统的功耗 如何把cc2640只作为一个BLE的网络传输芯片 外部添加一个MCU来完成更加复杂的应用需求等等 相信大家可以通过SimpleLink Academy 快速从入门到专家 TI还提供了很多PC端的调试工具 来帮助大家调试自己的程序 BTool和BLE Device Monitor 都可以在PC端模拟一个BLE Central设备 BTool可以测试所有可能的BLE操作 更偏向于对BLE协议栈的调试 而BLE Device Monitor 提供更加直观和图形化的界面 主要偏向于对自定义BLE服务 和属性的调试 Packet Sniffer是一个分析空中数据包的程序 Flash Programmer是烧录工具 通过三讲的介绍希望大家对cc2640 Cc2640R2F的开发有一些直观的了解 如果需要更加详细和具有针对性问题的解答 可以通过TI官方网站获取帮助 这里列出几个非常有用的TI官网连接 在TI BLE官网界面 我们可以很容易的下载到芯片的数据手册 操作指导文档 应用文档 软件开发包并购买TI的开发版 TI的支持社区有英文和中文两个版本 分别有全球的TI工程师 和中国本地的工程师为你的特定问题提供技术支持 欢迎大家通过访问这些TI技术网站 获得更多的关于TI BLE型芯片的信息和支持 谢谢大家的时间
大家好我是德州仪器无线连接技术部门的现场应用工程师Barbara Wu 这里我要给大家介绍德州仪器新一代的低功耗蓝牙芯片 软件开发的相关知识 之前我们介绍过芯片架构工作原理 以及软件开发包 这一讲我们深入来了解一下软件开发 看看如何从快速的开发入门 到软件专家 软件有存放于ROM的代码 和基于flash的代码两部分组成 在cc2640上ROM里面存放TI RTOS内核 和部分的BLE协议栈 在cc2640R2F上更多的BLE协议栈被放进了ROM 这些放在ROM资源是不需要占用flash的空间的 因此cc2640R2F提供了更大的flash空间 供上层应用程序使用 在flash部分上层应用程序 BLE的profile TI RTOS 都是以源码的方式提供 BLE的protocol协议栈 以库的方式提供通过API函数接口访问 可以使用CCS或IAR 作为编译器开发来调试软件 在编译的时候 应用程序和BLE协议栈 是分开编译的 这样的好处是在无限升级软件的时候 可以根据需要选择只升级应用程序的部分 或者同时升级应用程序和协议栈 从而提高了无限升级操作的效率 降低整个应用系统的使用功耗 协议栈和上层应用程序都基于TI RTOS开发 TI RTOS是一个实时操作系统 支持抢占式的多线程 只有确定性的调度机制 使用专门为低功耗而定制的内核 可以零延时配置和响应中断 包括各种定时器 软件层的时钟 精度可以达到微秒级别 同时TI RTOS还集成了非常多的软件功能模块 比如用于不同任务之间调度的信号量 外设接口的驱动程序 以及对电源功耗管理的模块 上层应用程序可以直接调用这些模块 相对应的API函数接口 从而简单快速的完成对应的操作 而不需要另外再重新编程 特别是功耗管理模块 已经在BLE协议栈中集成 上层应用程序只需要完成自己的应用需求开发 系统会自动根据软件应用情况 控制整个设备运行在能够满足应用的最低功耗状态 在软件开发方面 TI提供了非常丰富的例程以及多样的上手方式 从左到右不同的开发方式 涵盖了从简单版到进阶版的所有阶段 首先最简单的CCS Cloud加example的方式 不需要预先安装任何软件开发包 只需要一块launchpad和可以连接到互联网的浏览器 在浏览器中打开云服务器中的内存 可以再现编译例程或者烧录你的launchpad 对于需要的例程 也可以直接从源服务器下载到本地 进阶版的SimpleLink Academy 是一个学习例程的非常好的工具 在这个工具中基于几个典型的例程 分别完成不同的功能任务 工具列出了完成不同的功能需要做的代码的修改 并解释为什么需要做这样的修改 以及不同语句的作用 最后还有互动问答帮助理解 在整个step by step的教学过程中 用户可以学习到TI RTOS 自定义BLE的服务开发 Ble网路处理器 sensor controller等等非常有用的BLE相关知识 如果简单版的CCS Cloud 和进阶版的SimpleLink Academy 都满足不了你 你可以选择最难模式 直接使用BLE协议栈开发包和GitHub 协议栈开发包包含了对SIG定义好的 一些通用的BLE profile的使用实例 同时也包含了很多TI自定义BLE profile的例程 可以很容易的基于这些例程修改 或者搭建自己的BLE设备应用程序 同时github上TI还提供了一些不断添加在开发包上 包含新的功能的例程 比如组成设备的一体化 网络处理器的应用 从窗口打印应用调试信息等功能 都是最先从github上发布的 下面我们就以project zero例程为例 为大家介绍如何使用CCS Cloud 首先打开Chrome浏览器 打开链接 找到cc2640R2 launchpad 在开发版的目录下找到project zero 这个时候我们可以看到project zero的 Introduction已经在界面上显示 在界面上我们可以看到project zero App Project in Resource Explorer 打开这个 就直接打开了project zero例程 点击import to CCS Cloud 就可以导入工程到CCS Cloud 在这个地方看到project zero 已经被导入了 在这里我们已经连接了cc2640R2 Launchpad开发版到电脑上 所以直接点击Run 就可以再现编译工程和烧录开发版 这个时候看到已经在烧录开发版 这个时候烧录已经完成 board reset已经完成 那么如何使用这个软件呢 我们可以在Resource Explorer里面 找到对这个例程的说明 那么说明有提到在这个烧录完成开发版之后需要一个窗口调试工具 所以我打开一个调试工具 设置串口 然后我reset一下板子 这个时候可以看到 板子是已经进入了一个广播的状态 那么这个其实和我们的这个guide里面 显示的是一样的 进入广播状态 所以这个时候我拿出手机 在guide里面 它有说如何把project zero 连接到手机 所以TI有提供一个 叫Sensor Tag for IOS的app 那么我现在就打开一个这样的app 然后按照操作去连接 在连接上之后 可以看到log再根据实时的更新了 那么具体要做怎么样的操作呢 实际上可以看到它这个project zero里面 只有三个service 那么这个service其实在我们的文档里面也是有介绍的 它有说 对应的有三个service service下面会有不同的属性值 比如LED0对应的是111这个UID 那么我对它进行读或者写的操作 应该就可以对它控制开和关 那么回到我们的窗口调试工具 看一下 首先我读一下 LED0现在是一个零的状态 然后我要对它进行写 把它写成01 这个时候就可以看到 板子上面的灯亮了 因为这个地方我们只能看到log 所以其实在我这边的时候板子已经亮了灯 但是从log里面其实已经打出来了 这个灯确实是点亮了 那同样的我们也可以做相应的操作映射开发板上的按键操作 以及在手机和开发板之间进行 数据的收发 project zero是一个非常好的基础程序 从log信息我们可以轻松的在代码里找到对应的位置 很容易上手的一个软件开发 下面进入进阶版的simplelink Academy 前面有介绍这是一个非常棒的学习例程的工具 这个工具可以通过在线的方法访问 也可以下载安装本地文件 安装之后我们就可以直接在ccs里面访问到 SimpleLink Academy里的例子和任务 是根据cc2640/cc2640r2软件的发展 不断更新的 今天我们同样可以在academy中 找到基于project zero的教程 比如我打开了SimpleLink Academy 在BLE的最基础的教程之中 我们可以看到project zero如何使用 包括如何建立自己的环境 需要什么样的开发版 需要下载什么样的开发包 然后有介绍我们刚才介绍过的 用CCS Cloud的方法 然后编译 发现不同的service 如何使用notification 到最后如何自定义自己的应用程序 除了基于BLE协议栈的教程 SimpleLink Academy同样也提供了对TI-RTOS教程 通过课程可以了解到 TI- RTOS的几个重要组成部分 例如任务 信号量 中断 处理流程等 在完成了基础教程之后 SimpleLink Academy又提供了进阶版的任务 例如如何用SIG组织发布的 使用图形界面的开发工具 Bluetooth Developer Studio 来定义和开发自己的BLE协议 又例如 如何添加红外信号的驱动 这些进阶的教程可以帮助你一步步的深入学习 更多的平台知识 在完成了进阶版的教程之后 相信已经可以满足大多数的应用开发需要 但是SimpleLink Academy还开设了提高班 在提高班里你可以学习到更多的工具的使用 帮助你完成一些定制化的 或者说有差异性的功能的开发 比如如何使用Sensor Controller 进一步优化系统的功耗 如何把cc2640只作为一个BLE的网络传输芯片 外部添加一个MCU来完成更加复杂的应用需求等等 相信大家可以通过SimpleLink Academy 快速从入门到专家 TI还提供了很多PC端的调试工具 来帮助大家调试自己的程序 BTool和BLE Device Monitor 都可以在PC端模拟一个BLE Central设备 BTool可以测试所有可能的BLE操作 更偏向于对BLE协议栈的调试 而BLE Device Monitor 提供更加直观和图形化的界面 主要偏向于对自定义BLE服务 和属性的调试 Packet Sniffer是一个分析空中数据包的程序 Flash Programmer是烧录工具 通过三讲的介绍希望大家对cc2640 Cc2640R2F的开发有一些直观的了解 如果需要更加详细和具有针对性问题的解答 可以通过TI官方网站获取帮助 这里列出几个非常有用的TI官网连接 在TI BLE官网界面 我们可以很容易的下载到芯片的数据手册 操作指导文档 应用文档 软件开发包并购买TI的开发版 TI的支持社区有英文和中文两个版本 分别有全球的TI工程师 和中国本地的工程师为你的特定问题提供技术支持 欢迎大家通过访问这些TI技术网站 获得更多的关于TI BLE型芯片的信息和支持 谢谢大家的时间
大家好我是德州仪器无线连接技术部门的现场应用工程师Barbara Wu
这里我要给大家介绍德州仪器新一代的低功耗蓝牙芯片
软件开发的相关知识
之前我们介绍过芯片架构工作原理
以及软件开发包
这一讲我们深入来了解一下软件开发
看看如何从快速的开发入门
到软件专家
软件有存放于ROM的代码
和基于flash的代码两部分组成
在cc2640上ROM里面存放TI RTOS内核
和部分的BLE协议栈
在cc2640R2F上更多的BLE协议栈被放进了ROM
这些放在ROM资源是不需要占用flash的空间的
因此cc2640R2F提供了更大的flash空间
供上层应用程序使用
在flash部分上层应用程序
BLE的profile TI RTOS
都是以源码的方式提供
BLE的protocol协议栈
以库的方式提供通过API函数接口访问
可以使用CCS或IAR 作为编译器开发来调试软件
在编译的时候 应用程序和BLE协议栈
是分开编译的 这样的好处是在无限升级软件的时候
可以根据需要选择只升级应用程序的部分
或者同时升级应用程序和协议栈
从而提高了无限升级操作的效率
降低整个应用系统的使用功耗
协议栈和上层应用程序都基于TI RTOS开发
TI RTOS是一个实时操作系统
支持抢占式的多线程
只有确定性的调度机制
使用专门为低功耗而定制的内核
可以零延时配置和响应中断
包括各种定时器 软件层的时钟
精度可以达到微秒级别
同时TI RTOS还集成了非常多的软件功能模块
比如用于不同任务之间调度的信号量
外设接口的驱动程序
以及对电源功耗管理的模块
上层应用程序可以直接调用这些模块
相对应的API函数接口
从而简单快速的完成对应的操作
而不需要另外再重新编程
特别是功耗管理模块
已经在BLE协议栈中集成
上层应用程序只需要完成自己的应用需求开发
系统会自动根据软件应用情况
控制整个设备运行在能够满足应用的最低功耗状态
在软件开发方面
TI提供了非常丰富的例程以及多样的上手方式
从左到右不同的开发方式
涵盖了从简单版到进阶版的所有阶段
首先最简单的CCS Cloud加example的方式
不需要预先安装任何软件开发包
只需要一块launchpad和可以连接到互联网的浏览器
在浏览器中打开云服务器中的内存
可以再现编译例程或者烧录你的launchpad
对于需要的例程 也可以直接从源服务器下载到本地
进阶版的SimpleLink Academy
是一个学习例程的非常好的工具
在这个工具中基于几个典型的例程
分别完成不同的功能任务
工具列出了完成不同的功能需要做的代码的修改
并解释为什么需要做这样的修改
以及不同语句的作用
最后还有互动问答帮助理解
在整个step by step的教学过程中
用户可以学习到TI RTOS
自定义BLE的服务开发
Ble网路处理器 sensor controller等等非常有用的BLE相关知识
如果简单版的CCS Cloud
和进阶版的SimpleLink Academy
都满足不了你 你可以选择最难模式
直接使用BLE协议栈开发包和GitHub
协议栈开发包包含了对SIG定义好的
一些通用的BLE profile的使用实例
同时也包含了很多TI自定义BLE profile的例程
可以很容易的基于这些例程修改
或者搭建自己的BLE设备应用程序
同时github上TI还提供了一些不断添加在开发包上
包含新的功能的例程
比如组成设备的一体化
网络处理器的应用
从窗口打印应用调试信息等功能
都是最先从github上发布的
下面我们就以project zero例程为例
为大家介绍如何使用CCS Cloud
首先打开Chrome浏览器
打开链接
找到cc2640R2 launchpad
在开发版的目录下找到project zero
这个时候我们可以看到project zero的
Introduction已经在界面上显示
在界面上我们可以看到project zero
App Project in Resource Explorer
打开这个 就直接打开了project zero例程
点击import to CCS Cloud
就可以导入工程到CCS Cloud
在这个地方看到project zero
已经被导入了
在这里我们已经连接了cc2640R2
Launchpad开发版到电脑上
所以直接点击Run
就可以再现编译工程和烧录开发版
这个时候看到已经在烧录开发版
这个时候烧录已经完成 board reset已经完成
那么如何使用这个软件呢
我们可以在Resource Explorer里面
找到对这个例程的说明
那么说明有提到在这个烧录完成开发版之后需要一个窗口调试工具
所以我打开一个调试工具
设置串口
然后我reset一下板子
这个时候可以看到
板子是已经进入了一个广播的状态
那么这个其实和我们的这个guide里面
显示的是一样的 进入广播状态
所以这个时候我拿出手机
在guide里面 它有说如何把project zero
连接到手机 所以TI有提供一个
叫Sensor Tag for IOS的app
那么我现在就打开一个这样的app
然后按照操作去连接
在连接上之后
可以看到log再根据实时的更新了
那么具体要做怎么样的操作呢
实际上可以看到它这个project zero里面
只有三个service
那么这个service其实在我们的文档里面也是有介绍的
它有说 对应的有三个service
service下面会有不同的属性值
比如LED0对应的是111这个UID
那么我对它进行读或者写的操作
应该就可以对它控制开和关
那么回到我们的窗口调试工具
看一下
首先我读一下
LED0现在是一个零的状态
然后我要对它进行写
把它写成01
这个时候就可以看到
板子上面的灯亮了
因为这个地方我们只能看到log
所以其实在我这边的时候板子已经亮了灯
但是从log里面其实已经打出来了
这个灯确实是点亮了
那同样的我们也可以做相应的操作映射开发板上的按键操作
以及在手机和开发板之间进行
数据的收发
project zero是一个非常好的基础程序
从log信息我们可以轻松的在代码里找到对应的位置
很容易上手的一个软件开发
下面进入进阶版的simplelink Academy
前面有介绍这是一个非常棒的学习例程的工具
这个工具可以通过在线的方法访问
也可以下载安装本地文件
安装之后我们就可以直接在ccs里面访问到
SimpleLink Academy里的例子和任务
是根据cc2640/cc2640r2软件的发展
不断更新的 今天我们同样可以在academy中
找到基于project zero的教程
比如我打开了SimpleLink Academy
在BLE的最基础的教程之中
我们可以看到project zero如何使用
包括如何建立自己的环境
需要什么样的开发版 需要下载什么样的开发包
然后有介绍我们刚才介绍过的
用CCS Cloud的方法
然后编译 发现不同的service
如何使用notification
到最后如何自定义自己的应用程序
除了基于BLE协议栈的教程
SimpleLink Academy同样也提供了对TI-RTOS教程
通过课程可以了解到
TI- RTOS的几个重要组成部分
例如任务 信号量
中断 处理流程等
在完成了基础教程之后
SimpleLink Academy又提供了进阶版的任务
例如如何用SIG组织发布的
使用图形界面的开发工具
Bluetooth Developer Studio
来定义和开发自己的BLE协议
又例如
如何添加红外信号的驱动
这些进阶的教程可以帮助你一步步的深入学习
更多的平台知识 在完成了进阶版的教程之后
相信已经可以满足大多数的应用开发需要
但是SimpleLink Academy还开设了提高班
在提高班里你可以学习到更多的工具的使用
帮助你完成一些定制化的
或者说有差异性的功能的开发
比如如何使用Sensor Controller
进一步优化系统的功耗
如何把cc2640只作为一个BLE的网络传输芯片
外部添加一个MCU来完成更加复杂的应用需求等等
相信大家可以通过SimpleLink Academy
快速从入门到专家
TI还提供了很多PC端的调试工具
来帮助大家调试自己的程序
BTool和BLE Device Monitor
都可以在PC端模拟一个BLE Central设备
BTool可以测试所有可能的BLE操作
更偏向于对BLE协议栈的调试
而BLE Device Monitor
提供更加直观和图形化的界面
主要偏向于对自定义BLE服务
和属性的调试
Packet Sniffer是一个分析空中数据包的程序
Flash Programmer是烧录工具
通过三讲的介绍希望大家对cc2640
Cc2640R2F的开发有一些直观的了解
如果需要更加详细和具有针对性问题的解答
可以通过TI官方网站获取帮助
这里列出几个非常有用的TI官网连接
在TI BLE官网界面
我们可以很容易的下载到芯片的数据手册
操作指导文档 应用文档
软件开发包并购买TI的开发版
TI的支持社区有英文和中文两个版本
分别有全球的TI工程师
和中国本地的工程师为你的特定问题提供技术支持
欢迎大家通过访问这些TI技术网站
获得更多的关于TI BLE型芯片的信息和支持
谢谢大家的时间
大家好我是德州仪器无线连接技术部门的现场应用工程师Barbara Wu 这里我要给大家介绍德州仪器新一代的低功耗蓝牙芯片 软件开发的相关知识 之前我们介绍过芯片架构工作原理 以及软件开发包 这一讲我们深入来了解一下软件开发 看看如何从快速的开发入门 到软件专家 软件有存放于ROM的代码 和基于flash的代码两部分组成 在cc2640上ROM里面存放TI RTOS内核 和部分的BLE协议栈 在cc2640R2F上更多的BLE协议栈被放进了ROM 这些放在ROM资源是不需要占用flash的空间的 因此cc2640R2F提供了更大的flash空间 供上层应用程序使用 在flash部分上层应用程序 BLE的profile TI RTOS 都是以源码的方式提供 BLE的protocol协议栈 以库的方式提供通过API函数接口访问 可以使用CCS或IAR 作为编译器开发来调试软件 在编译的时候 应用程序和BLE协议栈 是分开编译的 这样的好处是在无限升级软件的时候 可以根据需要选择只升级应用程序的部分 或者同时升级应用程序和协议栈 从而提高了无限升级操作的效率 降低整个应用系统的使用功耗 协议栈和上层应用程序都基于TI RTOS开发 TI RTOS是一个实时操作系统 支持抢占式的多线程 只有确定性的调度机制 使用专门为低功耗而定制的内核 可以零延时配置和响应中断 包括各种定时器 软件层的时钟 精度可以达到微秒级别 同时TI RTOS还集成了非常多的软件功能模块 比如用于不同任务之间调度的信号量 外设接口的驱动程序 以及对电源功耗管理的模块 上层应用程序可以直接调用这些模块 相对应的API函数接口 从而简单快速的完成对应的操作 而不需要另外再重新编程 特别是功耗管理模块 已经在BLE协议栈中集成 上层应用程序只需要完成自己的应用需求开发 系统会自动根据软件应用情况 控制整个设备运行在能够满足应用的最低功耗状态 在软件开发方面 TI提供了非常丰富的例程以及多样的上手方式 从左到右不同的开发方式 涵盖了从简单版到进阶版的所有阶段 首先最简单的CCS Cloud加example的方式 不需要预先安装任何软件开发包 只需要一块launchpad和可以连接到互联网的浏览器 在浏览器中打开云服务器中的内存 可以再现编译例程或者烧录你的launchpad 对于需要的例程 也可以直接从源服务器下载到本地 进阶版的SimpleLink Academy 是一个学习例程的非常好的工具 在这个工具中基于几个典型的例程 分别完成不同的功能任务 工具列出了完成不同的功能需要做的代码的修改 并解释为什么需要做这样的修改 以及不同语句的作用 最后还有互动问答帮助理解 在整个step by step的教学过程中 用户可以学习到TI RTOS 自定义BLE的服务开发 Ble网路处理器 sensor controller等等非常有用的BLE相关知识 如果简单版的CCS Cloud 和进阶版的SimpleLink Academy 都满足不了你 你可以选择最难模式 直接使用BLE协议栈开发包和GitHub 协议栈开发包包含了对SIG定义好的 一些通用的BLE profile的使用实例 同时也包含了很多TI自定义BLE profile的例程 可以很容易的基于这些例程修改 或者搭建自己的BLE设备应用程序 同时github上TI还提供了一些不断添加在开发包上 包含新的功能的例程 比如组成设备的一体化 网络处理器的应用 从窗口打印应用调试信息等功能 都是最先从github上发布的 下面我们就以project zero例程为例 为大家介绍如何使用CCS Cloud 首先打开Chrome浏览器 打开链接 找到cc2640R2 launchpad 在开发版的目录下找到project zero 这个时候我们可以看到project zero的 Introduction已经在界面上显示 在界面上我们可以看到project zero App Project in Resource Explorer 打开这个 就直接打开了project zero例程 点击import to CCS Cloud 就可以导入工程到CCS Cloud 在这个地方看到project zero 已经被导入了 在这里我们已经连接了cc2640R2 Launchpad开发版到电脑上 所以直接点击Run 就可以再现编译工程和烧录开发版 这个时候看到已经在烧录开发版 这个时候烧录已经完成 board reset已经完成 那么如何使用这个软件呢 我们可以在Resource Explorer里面 找到对这个例程的说明 那么说明有提到在这个烧录完成开发版之后需要一个窗口调试工具 所以我打开一个调试工具 设置串口 然后我reset一下板子 这个时候可以看到 板子是已经进入了一个广播的状态 那么这个其实和我们的这个guide里面 显示的是一样的 进入广播状态 所以这个时候我拿出手机 在guide里面 它有说如何把project zero 连接到手机 所以TI有提供一个 叫Sensor Tag for IOS的app 那么我现在就打开一个这样的app 然后按照操作去连接 在连接上之后 可以看到log再根据实时的更新了 那么具体要做怎么样的操作呢 实际上可以看到它这个project zero里面 只有三个service 那么这个service其实在我们的文档里面也是有介绍的 它有说 对应的有三个service service下面会有不同的属性值 比如LED0对应的是111这个UID 那么我对它进行读或者写的操作 应该就可以对它控制开和关 那么回到我们的窗口调试工具 看一下 首先我读一下 LED0现在是一个零的状态 然后我要对它进行写 把它写成01 这个时候就可以看到 板子上面的灯亮了 因为这个地方我们只能看到log 所以其实在我这边的时候板子已经亮了灯 但是从log里面其实已经打出来了 这个灯确实是点亮了 那同样的我们也可以做相应的操作映射开发板上的按键操作 以及在手机和开发板之间进行 数据的收发 project zero是一个非常好的基础程序 从log信息我们可以轻松的在代码里找到对应的位置 很容易上手的一个软件开发 下面进入进阶版的simplelink Academy 前面有介绍这是一个非常棒的学习例程的工具 这个工具可以通过在线的方法访问 也可以下载安装本地文件 安装之后我们就可以直接在ccs里面访问到 SimpleLink Academy里的例子和任务 是根据cc2640/cc2640r2软件的发展 不断更新的 今天我们同样可以在academy中 找到基于project zero的教程 比如我打开了SimpleLink Academy 在BLE的最基础的教程之中 我们可以看到project zero如何使用 包括如何建立自己的环境 需要什么样的开发版 需要下载什么样的开发包 然后有介绍我们刚才介绍过的 用CCS Cloud的方法 然后编译 发现不同的service 如何使用notification 到最后如何自定义自己的应用程序 除了基于BLE协议栈的教程 SimpleLink Academy同样也提供了对TI-RTOS教程 通过课程可以了解到 TI- RTOS的几个重要组成部分 例如任务 信号量 中断 处理流程等 在完成了基础教程之后 SimpleLink Academy又提供了进阶版的任务 例如如何用SIG组织发布的 使用图形界面的开发工具 Bluetooth Developer Studio 来定义和开发自己的BLE协议 又例如 如何添加红外信号的驱动 这些进阶的教程可以帮助你一步步的深入学习 更多的平台知识 在完成了进阶版的教程之后 相信已经可以满足大多数的应用开发需要 但是SimpleLink Academy还开设了提高班 在提高班里你可以学习到更多的工具的使用 帮助你完成一些定制化的 或者说有差异性的功能的开发 比如如何使用Sensor Controller 进一步优化系统的功耗 如何把cc2640只作为一个BLE的网络传输芯片 外部添加一个MCU来完成更加复杂的应用需求等等 相信大家可以通过SimpleLink Academy 快速从入门到专家 TI还提供了很多PC端的调试工具 来帮助大家调试自己的程序 BTool和BLE Device Monitor 都可以在PC端模拟一个BLE Central设备 BTool可以测试所有可能的BLE操作 更偏向于对BLE协议栈的调试 而BLE Device Monitor 提供更加直观和图形化的界面 主要偏向于对自定义BLE服务 和属性的调试 Packet Sniffer是一个分析空中数据包的程序 Flash Programmer是烧录工具 通过三讲的介绍希望大家对cc2640 Cc2640R2F的开发有一些直观的了解 如果需要更加详细和具有针对性问题的解答 可以通过TI官方网站获取帮助 这里列出几个非常有用的TI官网连接 在TI BLE官网界面 我们可以很容易的下载到芯片的数据手册 操作指导文档 应用文档 软件开发包并购买TI的开发版 TI的支持社区有英文和中文两个版本 分别有全球的TI工程师 和中国本地的工程师为你的特定问题提供技术支持 欢迎大家通过访问这些TI技术网站 获得更多的关于TI BLE型芯片的信息和支持 谢谢大家的时间
大家好我是德州仪器无线连接技术部门的现场应用工程师Barbara Wu
这里我要给大家介绍德州仪器新一代的低功耗蓝牙芯片
软件开发的相关知识
之前我们介绍过芯片架构工作原理
以及软件开发包
这一讲我们深入来了解一下软件开发
看看如何从快速的开发入门
到软件专家
软件有存放于ROM的代码
和基于flash的代码两部分组成
在cc2640上ROM里面存放TI RTOS内核
和部分的BLE协议栈
在cc2640R2F上更多的BLE协议栈被放进了ROM
这些放在ROM资源是不需要占用flash的空间的
因此cc2640R2F提供了更大的flash空间
供上层应用程序使用
在flash部分上层应用程序
BLE的profile TI RTOS
都是以源码的方式提供
BLE的protocol协议栈
以库的方式提供通过API函数接口访问
可以使用CCS或IAR 作为编译器开发来调试软件
在编译的时候 应用程序和BLE协议栈
是分开编译的 这样的好处是在无限升级软件的时候
可以根据需要选择只升级应用程序的部分
或者同时升级应用程序和协议栈
从而提高了无限升级操作的效率
降低整个应用系统的使用功耗
协议栈和上层应用程序都基于TI RTOS开发
TI RTOS是一个实时操作系统
支持抢占式的多线程
只有确定性的调度机制
使用专门为低功耗而定制的内核
可以零延时配置和响应中断
包括各种定时器 软件层的时钟
精度可以达到微秒级别
同时TI RTOS还集成了非常多的软件功能模块
比如用于不同任务之间调度的信号量
外设接口的驱动程序
以及对电源功耗管理的模块
上层应用程序可以直接调用这些模块
相对应的API函数接口
从而简单快速的完成对应的操作
而不需要另外再重新编程
特别是功耗管理模块
已经在BLE协议栈中集成
上层应用程序只需要完成自己的应用需求开发
系统会自动根据软件应用情况
控制整个设备运行在能够满足应用的最低功耗状态
在软件开发方面
TI提供了非常丰富的例程以及多样的上手方式
从左到右不同的开发方式
涵盖了从简单版到进阶版的所有阶段
首先最简单的CCS Cloud加example的方式
不需要预先安装任何软件开发包
只需要一块launchpad和可以连接到互联网的浏览器
在浏览器中打开云服务器中的内存
可以再现编译例程或者烧录你的launchpad
对于需要的例程 也可以直接从源服务器下载到本地
进阶版的SimpleLink Academy
是一个学习例程的非常好的工具
在这个工具中基于几个典型的例程
分别完成不同的功能任务
工具列出了完成不同的功能需要做的代码的修改
并解释为什么需要做这样的修改
以及不同语句的作用
最后还有互动问答帮助理解
在整个step by step的教学过程中
用户可以学习到TI RTOS
自定义BLE的服务开发
Ble网路处理器 sensor controller等等非常有用的BLE相关知识
如果简单版的CCS Cloud
和进阶版的SimpleLink Academy
都满足不了你 你可以选择最难模式
直接使用BLE协议栈开发包和GitHub
协议栈开发包包含了对SIG定义好的
一些通用的BLE profile的使用实例
同时也包含了很多TI自定义BLE profile的例程
可以很容易的基于这些例程修改
或者搭建自己的BLE设备应用程序
同时github上TI还提供了一些不断添加在开发包上
包含新的功能的例程
比如组成设备的一体化
网络处理器的应用
从窗口打印应用调试信息等功能
都是最先从github上发布的
下面我们就以project zero例程为例
为大家介绍如何使用CCS Cloud
首先打开Chrome浏览器
打开链接
找到cc2640R2 launchpad
在开发版的目录下找到project zero
这个时候我们可以看到project zero的
Introduction已经在界面上显示
在界面上我们可以看到project zero
App Project in Resource Explorer
打开这个 就直接打开了project zero例程
点击import to CCS Cloud
就可以导入工程到CCS Cloud
在这个地方看到project zero
已经被导入了
在这里我们已经连接了cc2640R2
Launchpad开发版到电脑上
所以直接点击Run
就可以再现编译工程和烧录开发版
这个时候看到已经在烧录开发版
这个时候烧录已经完成 board reset已经完成
那么如何使用这个软件呢
我们可以在Resource Explorer里面
找到对这个例程的说明
那么说明有提到在这个烧录完成开发版之后需要一个窗口调试工具
所以我打开一个调试工具
设置串口
然后我reset一下板子
这个时候可以看到
板子是已经进入了一个广播的状态
那么这个其实和我们的这个guide里面
显示的是一样的 进入广播状态
所以这个时候我拿出手机
在guide里面 它有说如何把project zero
连接到手机 所以TI有提供一个
叫Sensor Tag for IOS的app
那么我现在就打开一个这样的app
然后按照操作去连接
在连接上之后
可以看到log再根据实时的更新了
那么具体要做怎么样的操作呢
实际上可以看到它这个project zero里面
只有三个service
那么这个service其实在我们的文档里面也是有介绍的
它有说 对应的有三个service
service下面会有不同的属性值
比如LED0对应的是111这个UID
那么我对它进行读或者写的操作
应该就可以对它控制开和关
那么回到我们的窗口调试工具
看一下
首先我读一下
LED0现在是一个零的状态
然后我要对它进行写
把它写成01
这个时候就可以看到
板子上面的灯亮了
因为这个地方我们只能看到log
所以其实在我这边的时候板子已经亮了灯
但是从log里面其实已经打出来了
这个灯确实是点亮了
那同样的我们也可以做相应的操作映射开发板上的按键操作
以及在手机和开发板之间进行
数据的收发
project zero是一个非常好的基础程序
从log信息我们可以轻松的在代码里找到对应的位置
很容易上手的一个软件开发
下面进入进阶版的simplelink Academy
前面有介绍这是一个非常棒的学习例程的工具
这个工具可以通过在线的方法访问
也可以下载安装本地文件
安装之后我们就可以直接在ccs里面访问到
SimpleLink Academy里的例子和任务
是根据cc2640/cc2640r2软件的发展
不断更新的 今天我们同样可以在academy中
找到基于project zero的教程
比如我打开了SimpleLink Academy
在BLE的最基础的教程之中
我们可以看到project zero如何使用
包括如何建立自己的环境
需要什么样的开发版 需要下载什么样的开发包
然后有介绍我们刚才介绍过的
用CCS Cloud的方法
然后编译 发现不同的service
如何使用notification
到最后如何自定义自己的应用程序
除了基于BLE协议栈的教程
SimpleLink Academy同样也提供了对TI-RTOS教程
通过课程可以了解到
TI- RTOS的几个重要组成部分
例如任务 信号量
中断 处理流程等
在完成了基础教程之后
SimpleLink Academy又提供了进阶版的任务
例如如何用SIG组织发布的
使用图形界面的开发工具
Bluetooth Developer Studio
来定义和开发自己的BLE协议
又例如
如何添加红外信号的驱动
这些进阶的教程可以帮助你一步步的深入学习
更多的平台知识 在完成了进阶版的教程之后
相信已经可以满足大多数的应用开发需要
但是SimpleLink Academy还开设了提高班
在提高班里你可以学习到更多的工具的使用
帮助你完成一些定制化的
或者说有差异性的功能的开发
比如如何使用Sensor Controller
进一步优化系统的功耗
如何把cc2640只作为一个BLE的网络传输芯片
外部添加一个MCU来完成更加复杂的应用需求等等
相信大家可以通过SimpleLink Academy
快速从入门到专家
TI还提供了很多PC端的调试工具
来帮助大家调试自己的程序
BTool和BLE Device Monitor
都可以在PC端模拟一个BLE Central设备
BTool可以测试所有可能的BLE操作
更偏向于对BLE协议栈的调试
而BLE Device Monitor
提供更加直观和图形化的界面
主要偏向于对自定义BLE服务
和属性的调试
Packet Sniffer是一个分析空中数据包的程序
Flash Programmer是烧录工具
通过三讲的介绍希望大家对cc2640
Cc2640R2F的开发有一些直观的了解
如果需要更加详细和具有针对性问题的解答
可以通过TI官方网站获取帮助
这里列出几个非常有用的TI官网连接
在TI BLE官网界面
我们可以很容易的下载到芯片的数据手册
操作指导文档 应用文档
软件开发包并购买TI的开发版
TI的支持社区有英文和中文两个版本
分别有全球的TI工程师
和中国本地的工程师为你的特定问题提供技术支持
欢迎大家通过访问这些TI技术网站
获得更多的关于TI BLE型芯片的信息和支持
谢谢大家的时间
视频报错
手机看
扫码用手机观看
收藏本课程
视频简介
CC2640R2软件速成之三-软件开发从入门到专家
所属课程:CC2640R2F软件速成
发布时间:2017.04.19
视频集数:3
本节视频时长:00:12:37
带领您了解CC2640R2软件开发,从熟悉您的第一个CC2640R2F例程到编写差异化定制应用,帮助您从入门到专家一步到位。
//=$v1;?>
//=$v['id']?>//=$v['down_category']?>//=$v['link']?>//=$v['is_dl']?>//=$v['link']?>//=$v['name']?>//=$v['name']?>
//=$v['id']?>//=$v['down_category']?>//=$v['path']?>//=$v['is_dl']?>//=$v['path']?>//=$v['name']?>//=$v['name']?>
////=count($lesson['bbsinfo'])?>
//=$elink?>//=$elink?>//=$tags[0]?>//=$tags[0]?>//=$elink?>//= $elink?>//=$tags[1]?>//=$tags[1]?>
//=$lesson['bbs'];?>
//=count($lesson['bbsinfo'])?>