1、摘 要CC2540 模块是 TI(Texas Instruments)公司开发的一款用于蓝牙 4.0 开发的系统单晶片解决方案。利用它可以作为无线数据采集和收发的无线终端,蓝牙 4.0 技术构建的无线数据采集传输模块,具有功耗低,可靠性高和高安全性的优点,可以用作无线数据传输系统的数据采集端。因此,研究蓝牙 4.0 技术构建的与 PC 机进行无线数据传输通信的系统具有重大的现实意义和应用前景。设计的主要内容:设计并制作基于 CC2540 模块的数据采集终端。系统主要完成利用蓝牙 4.0 协议栈的编写,实现数据采集终端与 PC 之间的无线数据通信。数据采集端由 TI 官方的 CC2040EM 核
2、心板和外围电路,如按键、 LCD、DS18B20 组成,PC 端由TI 官方的 CC25640 USBDongle 和串口调试软件组成。本设计主要论述了蓝牙 4.0 协议栈的编写及应用,CC2540 模块与 PC 的数据传输过程及原理。其中,对蓝牙 4.0 协议栈的编写及应用进行重点论述。从机端(数据采集模块)的工作主要是对硬件电路的设计和蓝牙 4.0 协议栈 SimpleBLEPeriphral 工程的编写;主机端(PC 和 USBDongle)的工作主要是对 USBDongle 中 HostTestRelease 工程的编写和 BTool 软件的调试。最终实现数据采集模块采集到的数据能通过
3、蓝牙 4.0 协议无线传输到 PC 端,并且 PC 端能控制数据采集端或向其发送数据。AbstractCC2540 module is a system used for the development of Bluetooth 4.0 single chip solutions provided by TI (Texas Instruments) company to develop. Because the Bluetooth 4.0 technology has the advantages of low power consumption, high reliability and l
4、ong distance, it can be used as the wireless terminals of wireless data acquisition.The main elements of design : Designing and fabricating the wireless data acquisition terminal based on CC2540 module, implementing the wireless communication between the wireless data acquisition terminal and PC. Th
5、e data acquisition terminal is composed of the TI official CC2540EM and peripheral circuit, such as key, LCD, DS18B20. PC comprised TI official CC2540 USBDongle and the serial debugging software. This paper made a briefly introduction of the overview, prospects of application and the basic structure
6、 of the data acquisition and transmission of Bluetooth technology. The main elements of the article discusses the compiling and application of the Bluetooth 4.0 protocol stack and the procedure and principle of data transmission between CC2540 module and PC.目 录摘 要 .IAbstract.II目 录 .III引 言 .11 绪论 .21
7、.1 蓝牙应用现状 .21.2 研究目的和意义 .32 开发环境 .42.1 硬件环境 .42.1.1 蓝牙芯片 CC2540 .42.1.2 CC2540EM 核心板。 .52.1.3 USBDongle.62.1.4 SmartRF04EB.72.2 软件环境 .82.2.1 IAR.82.2.2 蓝牙 4.0 BLE 协议栈 .82.2.3 BTool .92.2.4 Flash Programmer.103 系统硬件设计 .113.1 设计方法和工具 .113.2 系统框图 .113.3 硬件电路图 .113.3.1 CC2540 核心板硬件资源 .113.3.2 天线及巴伦匹配电路设
8、计 .123.3.3 晶振电路设计 .133.3.4 电源电路设计 .133.3.5 LED 电路设计 .143.3.6 五向按键电路设计 .143.3.7 LCD12864 电路设计 .153.3.8 复位电路设计 .153.3.9 下载调试电路设计 .154 系统软件设计 .174.1 BLE 蓝牙协议栈介绍 .174.2 操作系统抽象层 OSAL.194.3 硬件抽象层 HAL.204.4 配置文件层 .214.5 BLE 协议栈开发平台配置 .234.6 SimpleBLEPeripheral 从机编程 .234.7 HostTestRelease 主机编程 .285 系统安装 与测试
9、 .32结 论 .33致 谢 .34参考文献 .351引 言随着物联网技术的迅速发展,企业对于数据准确性和实时性的要求又有了进一步的提高,用户希望将数据的实时性扩展到更广阔的领域,由此,蓝牙 4.0 技术的出现显得尤为重要。在一些需要被实时监控的环境中,比如粮食仓库、图书仓库、医院病房中,目前数据的传输基本是基于有线的网络,但是,在生产现场环境比较恶劣或现场没有条件进行人工测量统计数据,有线传输由于设备的驱动能力达不到或成本较高时,为了保证数据能够及时、准确地送回到控制中心,无线传输就成为首选的途径。由于现在大多数的 PC 机还没有内置蓝牙 4.0 功能,因此,研究蓝牙 4.0 技术实现 PC
10、 机的无线数据处理设计问题对现实生产生活中的应用有很大的意义。蓝牙 4.0 作为 2010 年新推出的新一代蓝牙技术规范,目前各大公司和厂家都纷纷推出自己的硬件开发平台和软件支持,因此在硬件平台和软件支持的选择上不仅要满足系统的需求,还要符合蓝牙未来发展的潮流; 在保证系统可实现的基础上,做出常用的 I/O 口模块,拓展蓝牙应用的领域; 蓝牙 4.0 的软件编程是基于一定的协议栈的基础之上的,类比于以前的编程来说难度不太好确定,但至少是要在熟悉协议栈的基础上进行开发,因此协议栈的学习成了一个重点;本次设计采用的是以 TI 公司的 CC2540 芯片为核心的 EM 开发板,并在外围拓展所需的按键
11、、温度传感器和 LCD 等外设构成数据的采集端,PC 端由 TI 公司提供的CC2540 USBDongle 和上位机串口调试软件构成。需要通过对蓝牙 4.0 的协议栈进行编写和应用才能实现 CC2540 数据采集模块与 PC 机的有效通信。21 绪论 1.1 蓝牙应用现状本节对蓝牙 4.0 无线传输的国内外研究现状进行了总结并进行了对比分析。重点对未来的应用前景进行分析。蓝牙技术的研究与开发在国外起步早,经验和资源积累较为丰富,从蓝牙的发展历史来看,蓝牙技术由爱立信公司于 1994 年创立,后来由 Nokia、苹果公司和三星所创立的蓝牙兴趣小组旨在全世界范围内建立小范围的无线通信技术。伴随着
12、后来的蓝牙特别兴趣小组的成立,使得蓝牙技术成为未来的一种全新的通信标准成为可能。后来,业内所共同发起的蓝牙技术推广组织,将蓝牙技术的发展推向了时代的浪潮。2010 年 4 月 20 日,蓝牙 4.0 协议发布,这是目前最新的蓝牙版本,为第三代蓝牙的升级版。它包括三个子规范,为大家所熟知的是,就是传统意义上的蓝术、高速度蓝牙,还有蓝牙低功耗技术。在新一代的蓝牙中,蓝牙 4.0 BLE 在继承了以前的蓝牙技术的固有优点的基础上,同时它还使得传输速度得到大幅度的增加。更为重要的是,它所固有的功耗很低,与第三代蓝牙版本版本相比,尤以低耗能技术为核心。这一次的技术改进中它主要体现在如下方面,包括电池续航
13、时间的加长、功耗低等方面,拥有着成本低,可操作性强,延迟时间短、通信距离长,AES-128 加密等诸多特色。此外,在新一代的蓝牙协议中,蓝牙 BLE4.0 的有效传输距离得到大幅的提升。相比于之前版本的 10 米的传输距离,而新一代蓝牙 4.0 BLE 的有效传输距离可达 100 米。目前,针对新一代蓝牙 4.0 的技术规范,各大厂家和公司纷纷推出自己的硬件平台和软件协议栈,在这一点上,德州仪器 (TI) 的蓝牙技术的发展站在世界的前列,其公司所开发的的 CC2540 系列产品为蓝牙技术的实现和应用提供了一个真正意义上的解决方案,这将使得蓝牙 4.0 BLE 不再仅仅停留在规范文档之中,这将作
14、为一项新的技术得到广泛的实践和发展。国内对蓝牙技术的研发起步较国外要晚,但正所谓东方蓝牙风光无限,这一项短距离无线通信技术,必将在世界的东方这一人口密集,商业繁荣的大陆得到前所未有的巨大发展。这项技术只有在人与人之间以及人与机器之间相互交往的时候才会更大程度的体现出它的价值。更值得一提的是,目前,蓝牙 4.0 BLE 规范文档已经推出,但是各大国际公司和厂商所推出的硬件平台和软件开发系统不尽相同,这使得新一代3蓝牙技术的开发与研究更加具有开放性,不会在短时间之内出现被少数大公司技术垄断的局面,这也有利于我国在这一次的技术浪潮中占据主动的优势,特别是借助于蓝牙技术,使我国的信息产业能够更快更广泛
15、地渗透到国民经济的其他领域中去,从而可以加快实现用信息化带动工业化,带动现代化的进程。1.2 研究目的和意义物联网是当今科技和技术发展的重要产物,物联网为我们的生活和工作带来了巨大的改变。蓝牙 4.0 技术就是物联网发展的重要产物之一,它作为一种低功耗、高可靠性和较远距离的数据传输标准,为各行各业提供了更多发展空间和工作效率。比如粮食仓库中,粮食的保存和温度有十分密切的关系,适宜的温度能使粮食保存的时间更长而且不会变质。但是传统的测温系统都是通过有线的方式连接传感器,而且传感器的位置一旦被固定后,今后需要更换位置不是很方便。不仅如此,传统的测温系统的功耗都比较大,需要定期的人工维护,这样下来,
16、传统的有线测温系统的成本和效果都不尽人意。而利用本设计提供的 CC2540 数据采集模块,可以实现在粮食仓库的任意需要测量温度的位置放置 CC2540 数据采集模块,实时地将采集的温度通过蓝牙 4.0 协议无线传输给 PC 端,以便 PC 端根据采集的温度对温控系统进行适当的操作或做出其他相应的操作,使需要改变温度的位置得到改善。而且由于蓝牙 4.0 技术的超低功耗的特点,非常适合粮食仓库这种需要长时间实时采集数据的环境。同样地,在图书仓库和中药仓库中,对温度也有类似的要求,所以本设计的应用对于这种需要十分有效的温度调节的环境有广阔的市场前景。又如在医院的病房中,病人的心率、血压、输液剩余量等
17、信息都是需要被医生或护士在第一时间得知的信息。而传统的传感器模块加有线传输的方式在医院病房这种人员较多,且人员流动频繁的场所来说,显得很不方便也很不实用,消耗也十分大。而本设计所提出的,基于 CC2540 的蓝牙 4.0 模块恰好能解决上面所述的问题。医生和护士只需在办公室,就能从 PC 上实时地看到各个病人的情况,并且能准确地去了解病人的情况,做出相应的医疗方案和应急措施,这对医生和病人来说都是极大的好处。综上所述,蓝牙 4.0 技术将把物联网又向前带了一大步,在未来的生产和生活当中,蓝牙 4.0 必将发挥其不可忽视的作用,为我们带来极大的便利与快乐。42 开发环境2.1 硬件环境2.1.1
18、 蓝牙芯片 CC2540CC2540 集成了 2.4GHz 射频收发器,是一款完全兼容 8051 内核的无线射频单片机,它完美的兼容了蓝牙低功耗协议栈,非常适合蓝牙低功耗的开发和应用,它有 3 个不同的存储器访问总线:特殊功能寄存器(SFR) ;数据(DATA) ;代码/外部数据(CODE/XDATA) 。CC2540 单片机使用单周期访问 SFR、DATA 和住 SRAM。当 CC2540 处于空闲模式时,任何的中断可以把 CC2540 恢复到主动模式。某些中断还可以将 CC2540 从睡眠模式唤醒。位于系统核心存储器交叉开关使用 SFR 总线将 CPU、DMA 控制器与物理存储器和所有的外
19、接设备连接起来。CC2540 的 Flash 容量可以选择,有 128KB、256KB,这就是 CC2540 单片机的在线可编程非易失性存储器,并且映射到代码和外部数据存储器空间。除了保存程序代码和常亮之外,非易失性存储器允许应用程序保存必要的数据,以保证这些数据在设备重启后可用。图 2-1 是 CC2540 的内部结构图5图 2-1 CC2540 内部结构图如图 2-1 所示,CC2540 的这些模块大致可以分为三类:CPU 和内存相关的模块;外设、时钟和电源管理相关的模块,以及无线电相关的模块。2.1.2 CC2540EM 核心板。CC2540 EM 是 TI 公司官方推出的,蓝牙 4.0 开发套件之一。CC2540EM 核心板主要包括 CC2540 单片机、全尺寸倒 F 天线,晶振以及扩展接口,CC2540EM 核心板如图 2-2 所示:6图 2-2 CC2540EM 开发板实物图2.1.3 USBDongle如图 2-3 所示,是 CC2540 USBDongle 的实物图。它是作用是可以配合 TI PacketSniffer 软件实现 BLE 的无线抓包,另外可以配合 PC 端的 BTool 软件实现 PC 端的 BTool 主机。USBDongle 通过 USB 接口与 PC 连接,安装 TI 的驱动程序,将USBDongle 模拟成串口,然后运行 BTool。