基于CC2430的无线温度检测终端的设计

出处:cby981541 发布于:2007-11-21 16:11:42

0 引言

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

1 CC2430芯片概述

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

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

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

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

  DS1822的主要操作指令如下:

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

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

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

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

3 终端硬件设计

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

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

4 终端软件设计

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

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

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

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

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

5 终端工作原理

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

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

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

6 结束语

  本文设计的温度检测终端,其外围 设备简单、功耗低,传输无线化,可以用在诸如温室、仓库等场合。


 



  

参考文献:

[1]. CC2430 datasheet https://www.dzsc.com/datasheet/CC2430_1055132.html.
[2]. DS1822 datasheet https://www.dzsc.com/datasheet/DS1822_1056058.html.


关键词:基于CC2430的无线温度检测终端的设计DS1822CC2430CC2430ZDK

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:
技术客服:

0571-85317607

网站技术支持

13606545031

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!