当前位置:首页 > 通信技术 > 通信技术
[导读]摘要:基于NXP公司LPC1100系列处理器设计了一种温度检测网络节点。介绍了网络系统的整个设计方案和温度检测网络节点的硬件设计,并给出功耗管理、温度传感器和ZigBee三个软件模块的具体软件设计方法。 关键词:LPC1

摘要:基于NXP公司LPC1100系列处理器设计了一种温度检测网络节点。介绍了网络系统的整个设计方案和温度检测网络节点的硬件设计,并给出功耗管理、温度传感器和ZigBee三个软件模块的具体软件设计方法。
关键词:LPC1100;功耗;温度传感器;LCD;CC2500;ZigBee

引言
    Cortex-MO是32位ARM处理器中一款低功耗、小体积的处理器。它完美地融合了超低功耗、较高效率和低门数等优势,这些特性决定了它适合作为无线传感器网络节点的处理器。本文介绍一种基于LPC1114设计一个温度检测网络节点的方案。

1 温度检测系统简介
    一个温度检测无线网络由若干个温度检测节点组成,各个温度检测节点之间使用无线传感器通信。所有的温度检测节点使用ZigBee技术组成一个无线网络。各个节点的功能包括采集温度,并通过ZigBee网络发送出去。本系统采用TI公司提供的精简版本的ZigBee协议中的Simp-liciTI协议来组建一个星型网络。网络由一个访问接入节点(AP)和若干个终端节点(ED)组成。其中,AP相当于全功能设备,负责建立整个网络,并接收ED端采集的温度信息。所有温度检测节点都使用电池设备供电。

2 温度检测节点的硬件设计
    温度检测节点主要由LPC1100系列处理器(这里使用的是LPC1114)、温度传感器、ZigBee模块、LCD显示屏等组成,如图1所示。温度传感器使用National Semiconductor公司的I2C接口的LM75,ZigBee模块使用TI公司的SPI接口的CC2500芯片,LCD显示屏使用LCD1602字符显示屏幕。整个节点使用电池设备供电,考虑到功耗的因素,LCD屏采用插槽设计,不需要显示的部分节点可以不连接LCD。除以上各主要部分外,还有一些可选的单元,例如UART串口、通用I/0接口的LED、按键、蜂鸣器BEEP等。

 

3 温度检测节点的软件设计
    温度检测节点的功能如下:
    ◆通过设置定时器来定期地检测温度,并在LCD上显示当前的温度值;
    ◆将检测到的温度值通过ZigBee模块发送出去;
    ◆当温度过高时,蜂鸣器长鸣一定时间报警;
    ◆温度检测和发送之外时间,节点处于睡眠模式;
    ◆定时器每隔1 s将处理器唤醒一次,进行温度检测和传送。
    根据这些功能,将整个温度节点的软件划分为如下几个模块:功耗管理模块、LCD模块、温度传感器模块、ZigBee模块。
    本节将重点介绍功耗管理模块、温度传感器模块和ZigBee模块。
3.1 功耗管理模块
    LPC1100系列芯片的功耗管理有3种模式,即睡眠模式、深度睡眠模式、深度掉电模式。
3.1.1 3种模式的进入和退出
    3种模式的进入和退出方式如表1所列。


3.1.2 三种模式的区别
    在睡眠模式下,如果软件中提供外设时钟,则外设功能在睡眠模式下仍然可以执行,而且可以产生中断来引起处理器恢复运行。在深度睡眠模式下,用户可以配置深度睡眠时的掉电模块以及唤醒后的上电模块。在这两种睡眠模式下,处理器状态、寄存器、外设寄存器、内部SRAM值被保持,引脚的逻辑电平也不变。深度睡眠使用13个唤醒中断来唤醒,其优势在于用户可以关闭时钟发生模块,从而比睡眠模式降低更多的动态功耗。
    在深度掉电模式下,除了WAKEUP引脚外,整个芯片上的电源和时钟都关闭,SRAM中的内容也不能保持,但是可以使用4个通用的寄存器保存数据。若想在深度掉电模式下把芯片唤醒,必须通过外部连接部件给WAKEUP引脚接上一个低电平。
3.1.3 选择睡眠模式
    本系统中,温度检测节点的主要功能是每间隔一定时间检测一次温度,故在采集温度的间隔期内使芯片进入睡眠模式。当需要采集温度时,通过一个定时器中断将其唤醒。例如,每间隔1 s采集一次温度,采集温度并发送后设置一个定时器中断,然后调用WFI指令使芯片处于睡眠模式。为了便于观察,设置一个LED灯闪烁以指示采集温度的频率。同时,如果检测到温度过高,则使用蜂鸣器报警。如果连接了液晶屏幕,也可在液晶屏幕上显示温度值。
    main函数中的主要代码如下:

    调用WFI指令后程序就停止运行,等到定时器中断发生后就可以将处理器唤醒,程序接着运行WFI指令后的代码。定时器中断的代码如下:

3.2 温度传感器模块
    温度传感器LM75使用标准的I2C接口。本节点中,LPC1114与LM75的硬件接口如图2所示。


    LM75的地址线A0~A2都接地,0S引脚悬空,故本节点仅仅使用其基本的温度测量功能。LM75内部有5个寄存器:指针寄存器、配置寄存器、温度寄存器、温度设定寄存器和温度滞后寄存器。通过指针寄存器来选择其余4个寄存器进行操作。本节点主要是读取温度寄存器中的温度值,温度寄存器中高9位值为有效的温度值。该寄存器读出的值是以二进制补码的格式给出的,其LSB(最低有效位)每一个单位表示0.5℃,例如+0.5℃对应001H。其可表示的范围为-55~+125℃。
    在使用该温度传感器时,需要调用以下两个API函数:

3.3 ZigBee模块
    本节点的ZigBee模块使用T1公司的CC2500芯片,使用SimpliciTI协议来组建网络。其硬件连接如图3所示。


    在使用CC2500时,首先需要配置LPC1114的SPI各个引脚。另外,还需要将引脚GD00与GDO1配置为MCU中断,用来控制收发网络数据包。再按照CC2500的初始化时序来初始化CC2500芯片,然后交给上层的组网函数去调用。CC2500的初始化步骤如下:
    ①与MCU相连的SPI接口初始化;
    ②SCLK=1,SI=O;
    ③CSn=0;
    ④CSn-1,延时40μs;
    ⑤CSn=0;
    ⑥等待S0引脚变低;
    ⑦在SI引脚上发命令SRES;
    ⑧等待SO引脚再次变低。
    此时如果能正常地读写相应寄存器,则表示CC2500初始化成功。
    CC2500初始化成功后,需要配置CC2500的寄存器,以及设置数据包的收发中断。由于CC2500寄存器较多,请参考CC2500官方网站的参考代码。数据包的收发中断是根据配置寄存器的值来控制的。通过设置这些寄存器的值,可将GDO0、GDO1配置为收发数据。这里,配置IOCFG0寄存器的值为0x6,即在开始接收或者发送一个数据包时,在GDO0引脚产生一个高电平跳变;接收或者发送完后,再变回低电平。因此,将GDO0引脚即PIO2_5配置为输入引脚,上升沿中断。代码如下所示:


    此时,如果发送或者接收到数据,就可以产生中断。如果是接收数据,则在中断处理函数PIOINT2-IRQHan-dler中就必须调用一个接收函数。
    还有一些涉及到底层通信的地方需要修改,例如:

    将底层与硬件相关的函数都修改好后,就可以使用上层的组网函数了。CC2500组网API函数主要包括如下几个函数:

    进行组网时需要先调用SMPL_Init进行初始化,然后根据节点的功能来调用SMPL_Link或者SMPL_LinkListen函数组成一个无线网络。最后调用SMPL_Receive以及SMPL_Send函数就可以收发数据了。

结语
    本文介绍了一种基于LPC1114的温度检测网络节点设计方法。LPC1114芯片具有低功耗和高性能的特色,加上标准的I2C、SSP等接口,为很多标准接口部件的移植提供了方便。I2C接口的温度传感器,也可以替换成I2C接口的湿度传感器、气敏传感器等,以建立一个基于ZigBee的无线传感器网络。该设计方案对无线环境监控网络、无线抄表网络等无线传感器网络中的节点设计具有一定参考价值。
 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

摘要:温度是一个非常重要的物理量,现代生活中所用到的电器、家具设备,以及工业产品等对温度的要求日益提高,灵敏的温度控制预警系统已成为日常生活中必不可少的产品。鉴于此,设计了基于AT89S52单片机的温度语音播报系统,其温...

关键字: 温度检测 语音播报 温度阈值

摘 要 :环境质量监测的重点是实现对空气质量的温湿度检测。目前,温湿度检测有许多专用设备,其侧重点是实现检测过程,文中基于 MSP430F6638 微控制器通过段式液晶实现对检测温度的实时显示,并辅以高精度的时钟显示。...

关键字: 环境质量 MSP430F6638 温度检测 显示电路 高精度 低功耗

摘 要:文中针对高寒这一特殊环境,探讨了寒冷天气对民机航电系统的影响,并提出相应的地面试验和飞行试验方法,研究分析结果可为民用飞机航电系统高寒适应性的设计与试验提供参考。

关键字: 高寒 民用飞机 温度检测 航电系统

摘要:针对无线传感网的小体积和低功耗要求,分别对整个无线传感器网络的物理层、MAC层以及网络层进行了分析和研究,总结了一套低功耗的设计理念,最后给出了未来无线传感器网络中大量数据传输节点的低能耗设计方法。

关键字: 无线传感网 网络节点 低功耗设计 能耗分析

摘 要:利用核心控制单片机AT89S51结合GPRS短信收发模块GSM900C、重力检测模块、超声波测距模块、温度检测 模块以及外围辅助电路,设计了一个集多种检测报警功能为一体的、对垃圾桶进行智能化管理的多功能管理系统。...

关键字: 智能垃圾桶 单片机 温度检测 超声波检测

摘要:针对以往冰箱性能检测系统存在的问题,利用ZigBee无线传感网技术,并选用无线単片机CC2530和数字式温度传感器DS18B20,给出了一个用无线温度传感网络来对冰箱性能进行检测和监控的系统设计方法。

关键字: Zigbee 无线传感网络 温度检测

摘要:给出了以计算机、数据采集卡、信号调理及温度传感器等器件为硬件平台,用LabVIEW虚拟软件来开发设计温度检测系统的硬件组成原理,以及利用LabVIEW技术开发前面板和程序模块的方法。测试结果表明,该系统能较好地解决...

关键字: LabVIEW 计算机 信号调理 数据采集卡 温度检测

本文检验最新一代硅芯片温度传感器的准确性。这些传感器提供数字输出,无需线性化,支持小封装尺寸和低功耗。

关键字: 硅芯片 温度检测 温度传感器

    无线传感器网络是由大量传感器节点通过无线通信自组织构成的网络,被认为是将对21世纪产生巨大影响力的技术之一。在分布式测试中使用无线传感器网络,不受通信电缆的限制、组态灵

关键字: 接口电路 无线传感器 网络节点

1  引言   射频收发器CC2420应用Chipcon公司的SmartRF03技术,采用0.18μmCMOS工艺,只需极少的外部元件,性能稳定且功耗极低,同时集成所有Z

关键字: 传感器网络 cc2420 网络节点

通信技术

120595 篇文章

关注

发布文章

编辑精选

技术子站

关闭