cc2640蓝牙芯片软件开发指导说明文件

2018-12-04 16:58

1概述

该文档的目的是为了给出TI simpleLink 低功耗蓝牙cc2640无线MCU软件开发工具的概述,从而开始创建一个智能蓝牙的定制应用。该文档也提供了低功耗蓝牙的特性的介绍,在本文档中,低功耗蓝牙特指BLE。然而,这些不能作为BLE完整的技术规格的替代。阅读蓝牙内核规范来了解更多的细节,或者是TI BLE wiki页中提供的一些介绍资料。 1.1 介绍

4.1版本的蓝牙规范允许两种无线技术系统:基本频率和低功耗蓝牙。BLE系统设计用来一次发送非常小的数据包,所以比BR设备消耗更少的电量。

可以支持BR和BLE的设备就是双模式设备,运行在Bluetooth? Smart Ready下。在蓝牙

无线技术系统中的典型应用,一台移动智能手机或者笔记本电脑就是双模式设备。设备只制成BLE的就是单模式设备,运行在Bluetooth? Smart下。这些单模式设备同城用在优先考虑低功耗的应用场景中,比如那些基于纽扣电池的设备。

1.2 BLE 协议栈基础

BLE协议栈属性如下所示:

BE协议栈(就是简称协议栈)由两个部分组成:控制器和主机。这两个部分经常独立实现,这就将主机和控制器设备与蓝牙的BR设备区分开了。任何配置和应用都位于GAP和GATT层的上面。 物理层(PHY)是一个1Mbps适配调频的GFSK接收器,操作在公开的2.4GHz带宽上的。 链路层(LL)控制设备上的RF的状态,设备会处于五种当中的一种状态:就绪、广播、扫描、初始化、连接。广播者发送数据不需要连接,扫描者监听广播。初始者就是一个设备响应一个广播者的连接请求。如果广播者接受连接,那么广播者和初始者就都处于

连接状态。当一台设备处于连接状态,他将处于两种角色当中的一种,主机或从机。初始化连接的设备就成了主机,而接受请求的就变成了从机。

主机控制接口(HCI)层,提供了一种控制器和主机之间的通讯手段的标准接口。该层也可以通过一个软件接口或者一个硬件接口如UART,SPI,或者USB来实现。标准的HCI命令和事件是在蓝牙内核中指定的。TI所使用的命令和事件在Vendor Specific Guide中说明。

链路逻辑控制和适配协议层(L2CAP)层为长层提供数据打包服务,允许端对端的数据交互。

安全管理层(SM)定义了配对和密匙分配的方法,也为其他协议层提供安全连接和数据交换的功能。5.4中有TI的SM层的实现的更多的细节。

通用通道协议层(GPA)层直接面向应用层(也可有)配置,来处理设备的发现和连接相关的服务。GAP处理安全因素的初始化,5.1中有更多关于TI GAP层实现的信息。

属性协议层(ATT)协议允许一个设备展现一个确定长度的数据给另一个设备,就是所谓的属性。

通用属性协议(GATT)层是个服务的框架,定义了辅助进程来使用ATT。所有发生在两个BLE连接设备之间的通讯都是通过GATT的副进程处理的,因此,应用(可以有)配置将直接使用GATT。5.3重点讲解ATT和GATT层。 2 Texas Instrucments 软件开发平台

TI的免费版的BLE-Stack?软件开发工具(SDK)是一个完成的软件平台,可以永爱开发单模式的BLE应用。它基于SimpleLink CC2640,完整的SOC Bluetooth? Smart解决方案。cc2640结合了一个2.4GHz的RF收发器,128kB的嵌入式可编程的内存。20看BDSRAM,和一个全尺寸的外设。设备基于ARM? Cortex-M3?串行处理器来处理应用层和BLE协议栈,同时自动的天线内核基于ARMCortex-M0?处理器来处理所有低级的天线控制和与物理层及部分链路层的进程。传感器控制块提供了一种额外的灵活的方法来自动完成独立于M3核的数据获取和控制,因此也加强了cc2640的低功耗的能力。结构框图在下面,更多的细节在cc2640技术说明指南中。

2.1 协议栈/应用配置

平台支持两种不同的协议栈/应用配置

1. 单个设备:控制器,主机,配置和应用都在cc2640上实现作为一个真正的芯片解决方案。

这是使用cc2640是最简单和最常见的配置。同时这也是我们大多数类程中使用的配置。是最佳性价比的技术和提供最低功耗的性能、

2. 网络处理器:控制器和主机一起在cc2640上实现,而配置和应用则是分开实现的。应用

和配置与cc2640的通讯是通过HCI命令或事件完成的,使用的是SPI或UART接口。这种配置对于运行在其他设备(如外部微处理器或电脑)上的应用来说是有用的。在这些案例中,应用可以独立开发,而BLE协议栈依旧运行在cc2640.网络工程不在该文档中展示。

2.2 解决方案

这部分将描述各种安装在BLE协议栈SDK中的组件,协议栈的目录结构和开发过程中所需的任何工具。

这个解决方案包含了下面的组件:

1. 实时操作系统(RTOS),TI-RTOS SYS/BIOS kernel支持最优化的电源管理,

和外设驱动(如SPI,UART等) 2. cc26xxware驱动库:提供一个寄存器抽象层并被软件或驱动用来控制cc2640

的Soc。

3. BLE 协议栈:以库的形式提供,和存放在cc2640 ROM中的协议栈的部分。 4. 应用和配置类程:使基于合适的、通用的方案开发更加简单。BLE SDK中提

供所有的应用和配置都是经过蓝牙技术联盟测试合格的。 当前支持的编译器有: IAR和CCS 2.3 目录结构

BLE SDK的安装包中包含了大量的工程从最基本的BLE功能到使用案例特定的应用诸如:心率传感器,血糖采集等。这些应该用于应用开发的起始点的基本工程会在下面做简单的描述。更多的谢姐和其他的工程请查看12章。

SimpleBLEPeripheral工程由简单的代码组成,展示了一个非常简单的但设备模

式下的BLE从机应用。可以作为开发从机/外设应用的指导。

SimpleBLECentral工程展示了连接的另一边。展示了一个简单的单设备配置模式下主机/中心应用,可以作为开发主机或中心的应用的指导。 SensorTag工程上一个外设应用,用来运行在cc2650 SensorTag指向的硬件平台,

与传感器目标通讯如温度传感器等。

HostTest工程用来给cc2640创建一个网络处理器的软件。包含了主机和从机的

角色配置,并可以被电脑端的应用Btool控制。参考供应商提供的HCI应用接口指南,在文档

文件夹中有提供网络处理器实现的APIs。

2.4 设置开发环境

在进一步编程之前, 有必要来设置综合开发环境(IDE),目的是为了浏览本文档中提到的工程和代码。所有的适合cc2640的软件都是基于IAR或者ccs开发的。这部分讲在哪里可以找到这些软件,并正确的配置这些IDE。 该文档中提到的所有的路径和文件都必须是BLE SDK安装的默认路径。强烈要求做个BLE SDK的备份来进行修改。BLE SDK使用的是相对路径,设计为模块化的,这样就允许顶层目录可以复制到任何合法的地址了。 注意:确保最大的文件系统命名路径长度没有改变。

2.5.1 安装SDK

运行安装包“ble_cc26xx_setupwin32_2_00_00_xxxxx.exe”来安装BLE协议栈的SDK。 1. xxxx是SDK的版本号;

2. 默认的SDK的安装路径是:C:\\ti\\simplelink\\ble_cc26xx_2_00_00_xxxx.exe

这个安装包同时也会安装TI-RTOS和XDC工具的附件,前提是以前没有安装过,也包括Btool电脑应用。下面的图列出了BLE-Stack SDK支持的软件、工具和测试。

2.5.2 IAR

这部分不予翻译。

2.5.3 Code Composer Studio(CCS)

ccs包含了许多因素都超出了本文档的范围,可以在ccs网站获取更多的信息和文档:

http://www.ti.com/tool/CCSTUDIO

确保检查过BLE SDK的释放说明,注意ccs的版本和其它的工作相关的要求。另外,有CCS编译生成的代码在大小上和表现上可能与IAR的生成的代码不同。

2.5.3.1 配置ccs

这部分秘书安装和配置当前办呢的CCS和必要的工具。 1. 下载6.0.1或更高级的版本的ccs,下载地址为:

http://processors.wiki.ti.com/index.php/Download_CCS


cc2640蓝牙芯片软件开发指导说明文件.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:小学党员教师个人自我剖析材料

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: