新闻中心

EEPW首页 > 手机与无线通信 > 设计应用 > 基于LPC1100的温度检测网络节点设计

基于LPC1100的温度检测网络节点设计

作者:时间:2010-09-28来源:网络收藏

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

本文引用地址:http://www.eepw.com.cn/article/157054.htm

14b.JPG

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

14d.JPG

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

14e.JPG


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



关键词: 传感器 LCD

评论


相关推荐

技术专区

关闭