基于CC2430的无线温度检测终端的设计-设计应用_第1页
基于CC2430的无线温度检测终端的设计-设计应用_第2页
基于CC2430的无线温度检测终端的设计-设计应用_第3页
基于CC2430的无线温度检测终端的设计-设计应用_第4页
基于CC2430的无线温度检测终端的设计-设计应用_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

精品文档-下载后可编辑基于CC2430的无线温度检测终端的设计-设计应用0引言

在现代工农业生产中,常常需要对环境温度进行检测。传统的方法往往费时、费力,效率低下,不便应用在对较大环境的温度检测中。本文设计了一种基于无线射频技术的温度检测终端,它以RF(射频)芯片CC2430为,在温度传感器DS1822的配合下,能够高效地完成对环境温度的无线检测。

1CC2430芯片概述

CC2430芯片为Chipcon公司生产的2.4GHz射频系统单芯片。

该单芯片上整合了ZigBeeRF前端,内存,微控制器。其主要特点如下:高性能和低功耗的8051微控制器核;集成符合IEEE802.15.4标准的2.4GHz的RF无线电收发机;优良的无线接收灵敏度和强大的抗干扰性;在休眠模式时仅0.9μA的流耗,外部的中断或RTC(实时时钟)唤醒系统,在待机模式时少于0.6μA的流耗,外部的中断能唤醒系统;硬件支持CSMA/CA(具有检测冲击的载波侦听多路接人)功能;较宽的电压范围(2.OV~3.6V);数字化的RSSI(接收信号强度指示)/LQI(链路质量指示)支持和强大的DMA(直接存储器存取)功能;具有电池监测和温度感测功能;集成了14位ADC(A/D转换器);集成AES(加密标准)安全协处理器;带有2个强大的支持几组协议的USART(通用异步同步收发器),以及1个符合IEEE802.15.4规范的MAC(媒体访问控制)层计时器,1个常规的16位计时器和2个8位计时器;21个可编程的I/O引脚,P0、P1口是完全8位口,P2口只有5个可使用位,可以由软件设定一组SFR(专用寄存器)的位和字节,使这些引脚作为通常的I/O口或作为连接ADC、计时器、USART等部件的外围设备口使用。

2DS1822结构特点与基本操作指令

DS1822是一种一线数字温度计,它用一根信号线来实现互连通信,其内部电路的是一个直接数字输出的温度传感器。它可以将-55℃~125℃范围内的温度值按9位、10位、11位、12位的分辨率进行量化,其分辨率为0.625℃,工作电压范围为3.0V~5.5V。每一片DS1822都有一个的且不可改写的ROMID(标识码,即电子序列号),在实际应用中可以通过指令方便地进行查询。

DS1822的主要操作指令如下:

a)SearchROM指令(代码为FOh):用以读取在线的DS1822的序列号。

b)writeScratchpad指令(代码为4Eh):将温度报警上、下限值分别写入DS1822便笺式存储器的TH与TL字节中。

c)ConvertT指令(代码为44h):启动DS1822进行温度A/D转换。

d):ReadScratchpad指令(代码为BEh):读取便笺式寄存器中的温度值。

3终端硬件设计

CC2430芯片只需少量外围部件配合就能实现信号的收发功能。图2为该温度检测终端的硬件结构。

电路使用一个非平衡天线,连接非平衡变压器可使天线性能更好。电路中的非平衡变压器由电容C1和电感L1、L2、L3以及一个PCB(印制板)微波传输线组成,整个结构满足RF输入/输出匹配电阻(50Ω)的要求。内部T/R交换电路完成LNA和PA之间的交换。R1和R2为偏置电阻,R1主要用来为32MHz的晶振提供一个合适的工作电流。用1个32MHz的石英谐振器(XTAL1)和2个电容(C2和C3)构成一个32MHz的晶振电路。用1个32.768kHz的石英谐振器(XTA12)和2个电容(C4和C5)构成一个32.768kHz的晶振电路。电压调节器为所有要求1.8V电压的引脚和内部电源供电,电容C6和C7是去耦电容,用来为电源滤波,以提高芯片工作的稳定性。温度传感器DS1822的数据输入/输出端DQ接P0_0引脚,该引脚具有4mA的输出驱动能力。

4终端软件设计

软件部分需要解决的问题包括:温度及报警信号采集、ZigBee协议栈(z-Stack)、ZigBee通信等。

温度及报警信号的采集可由CC2430芯片内部的MCU完成。

ZigBee协议栈运行在一个OSAL(操作系统抽象层)操作系统上。该操作系统基于任务调度机制,通过对任务的事件触发来实现任务调度。每个任务都包含若干个事件,每个事件都对应一个事件号。当一个事件产生时,对应任务的事件就被设置为相应的事件号,这样,事件调度就会调用相应的任务处理程序。OSAL中的任务可以通过任务API将其添加到系统中,这样就可以实现多任务机制。OSAL任务调度流程如图3所示。

NextActiveTask()是一个任务事件查询函数,返回任务的事件状态ActiveTask。软件设计时,可通过ActiveTask的值来决定是否需执行对应的任务函数ActiveTask()。

ZigBee的通信或数据传输涉及到两种通信帧格式:KVP(关键值偶)帧格式、消息(Message)帧格式。在发送数据量较大时选择Message方式;当只需要发送1个字节或几个字节的命令或数据时,可以使用KVP格式,该格式是ZigBee协议定义好的一种通信方式,操作比较简单,调用相应的信息发送函数即可实现两点问的通信。该终端设计中采用后一种通信帧格式,在充分利用开发工具CC2430ZDKPro内部现有的协议栈的情况下,可以方便地完成通信部分的软件开发工作。

5终端工作原理

该终端系统设计中采用DMA向存储器内部写终端控制程序。正式使用时,终端控制程序被启动,终端首先完成其内部系统的初始化,即通信协议的初始化,各端口使能与初始化,确认温度传感器连接完好,向DS1822中TH/TL位写入/温度门限,读取该温度传感器的身份标志码(该标志码亦代表该终端设备的身份),并将该终端标志码传回管理中心,以示该终端处于就绪状态,并准备随时接受管理中心的启动指令。启动后,终端由自己内部的MCU(即CC2430内部的MCU)控制,定期向温度传感器DS1822发送温度转换指令,DS1822在完成温度转换后会自动将温度值和TH/TL寄存器中的触发门限相比较,如比较结果表明测量温度高于TH或低于TL中的门限值,则设置报警标志位。随后,MCU在读取温度值的同时也读取报警标志位,并将这些数据信号传回管理中心。这样,终端就完成了温度的检测与报警功能。

该终端也可随时接收来自管理中心的查询指令。

由于该类终端每一片都有自己的身份标志码,所以,一个管理中心可以管理多个这样的终端,并能准确区分它们。利用多个此类终端可对较大环境的温度实现实时、无线、多点的检测。

6结束语

本文设计的温度检测终端,其外

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论