《单片机原理及应用》课程设计任务书题目:LCD显示的音乐倒计时制作姓名:学号:学院:电气工程与自动化学院专业:电气工程与自动化学院年级:2012级指导教师:高伟设计任务一,技术要求利用PIC16F887单片机控制字符型LCD显示器制作一个简易的倒数计数器,可以用来煮方便面、煮开水或小睡片刻等。
先进行一小段时间倒计数,当倒计数到0时,则发出一段音乐声响,通知主人时间到,去做该做的事情。
该程序共有有5个功能键:K1——设置,LCD显示5:00;K2——时间增加倍数切换键,在1分钟和10分钟之间切换;K3——时间增;K4——时间减;K5——开始倒计数。
定时闹钟的基本功能如下。
●字符型LCD(16 2)显示器。
●显示格式为“TIME 分分:秒秒”。
用4个按键操作来设置当前想要倒计数的时间。
一旦按下键则开始倒计数,当计数为0时,发出一阵音乐声。
设计任务一、技术要求使用单总线的DS18B20测量温度,进行LCD液晶显示,当温度超过50℃时,通过指示灯报警。
请根据需求撰写任务书,写出详细的功能,以及设计步骤。
在课程设计之前提交给老师。
(可以对内容进行扩展,可适当加分)二、拟采用的方法(包括芯片的选型等)51芯片采用国产STC89C52作为主控.美国达拉斯公司生产的DS18B20温度传感器芯片进行温度采集。
和DALLAS公司的实时时钟芯片DS1302对年月日周日分秒进行计时。
采用LCD1602进行温度、实时时间等显示。
用蜂鸣器与LED灯进行报警。
基于ZigBee无线通信的开关柜发热点无线测温终端设计姓名:卢国仪指导老师:高伟专业:电气工程与自动化学号:010800321摘要:本论文主要从无线测温终端的设计入手,采用了新型ZigBee无线通信技术,从硬件电路设计与软件程序设计两方面展开了课题的研究。
考虑到封闭式开关柜内工作温度高,变电站运行过程中不能频繁停电两大因素。
因此选择了能够耐高温而且可以工作于低功耗模式下的元器件。
研发成功的无线测温终端以其安装方便、抗干扰性强、低功耗、可靠性高等优点,为封闭式开关柜内热点温度实时监测提供了一条有效途径。
关键词:开关柜,无线测温,ZigBee,无线网络1 绪论电力系统中高压开关柜是发电厂、变电所中的重要电气设备,目前采用的封闭式开关柜长期处于高电压、大电流、满负荷的运行环境下,散热效果差将直接导致柜内热量不断积聚。
尤其是在电力系统发生短路故障时,强大的电流使电气设备内部温升加剧,电气绝缘性能下降,电气设备寿命缩短,严重时还可能造成电气设备被烧毁。
因此开关柜温度在线监测问题已经成为电力系统中电气设备安全运行所急需解决的实际问题,是促使设备安全运行和可靠供电的迫切需要,对保障电力系统安全可靠运行具有十分重要的意义[1-2]。
长期以来在开关柜热点温度的监测方面,国内外比较常见的测温方案有红外测温仪、示温记录标签、光纤光栅测温传感器、无线测温等。
本课题将引用近几年比较流行的无线测温技术的想法,利用单片机与无线数据收发模块,采用低功耗技术,设计无线测温终端,从而解决传统测温技术所存在的技术缺陷。
2无线测温传感器的硬件设计无线测温传感器安装在开关柜内的发热点,定时进行温度信息的采集。
由于开关柜内正常工作温度为60~70℃,而且通信又采取无线的方式,因此测温传感器在硬件的选择上,就必须达到两个条件,即耐高温和低功耗。
无线测温传感器的系统框图如图2-1所示。
单片机无线收发模块温度传感器锂电池图2-1 无线测温传感器系统框图2.1主要元器件的选型TMP102是TI公司生产的具SMBus(双线串行接口)的业界最小低功耗数字温度传感器。
该器件采用SOT563封装,包含引线的高度仅为0.6毫米。
该传感器工作模式下的最大静态电流仅为10μA,关断模式下的最大电流仅为1μA。
由于尺寸极小,功耗要求又非常低,因此TMP102非常适合便携式消费类电子产品与其它电池供电的终端设备[3]。
由于每个无线测温终端都需具有一个唯一的地址编号,以便系统识别每个监测点。
因此,CPU除了具备USART接口、休眠功能、低功耗外,还必须带有一个小容量、具有掉电保持功能的EEPROM存储器。
综上考虑,采用纳瓦技术的低功耗单片机PIC16F690很适合作为本无线测温终端的CPU[4]。
XBee是美国MaxStream公司基于ZigBee技术的而设计出一种无线传输模块,满足了无线传感网络低功耗低成本的特殊要求。
设计外形小巧,有效的节约了PCB板的空间[5]。
以色列TADIRAN电池公司在锂亚电池的制造方面处于世界顶尖水平,该公司生产的电池具有超高低温特性,并且自然放电极其微弱。
以色列TADIRAN电池已经彻底解决了长寿命锂电池存在的技术难题,并能够提供电池使用寿命的科学评估服务,质量稳定可靠,有长期成功运行经验,非常适合作为无线测温传感器的电源进行使用。
2.2电路设计为了保证CPU低功耗运行,关键在于如何对电路进行低功耗设计。
注意事项有如下几点[6-8]:1)电路的总功耗为CPU以及外围电路功耗之和。
所以不仅要降低CPU本身的运行功耗,还应该降低外围电路的功耗。
因此应尽量选择低电压、低功耗的CMOS元件。
2)单片机的工作电流正比于自身的工作频率与工作电压。
因此应尽量采用低电压供电,并使单片机工作于最低频率(4 MHz晶振),因此在需要时可对晶振电路另行设计。
3)单片机外围电路应尽可能少的采用阻性元件。
如果使用上拉电阻,应尽可能加大电阻阻值并保证电平正常。
4)CMOS元件的输入管脚不能悬空。
悬空的输入管脚很容易积累电荷,产生较大的感应电动势,导致管脚电位不正常。
因此应将不使用的管脚全部接地并置为输入。
基于以上几方面内容,设计出的硬件电路图如图2-2,图2-3,图2-4所示。
图2-2 温度传感器电路图图2-3 RF电路图图2-4 CPU主电路图图2-5 PCB板电路图图2-6 无线测温传感器实物图3 无线测温传感器的软件设计软件部分设计主要采用的是PIC 单片机的PICC 语言进行编程,主要任务是从测温传感器TMP102上将温度信息通过IIC 总线采集回来,再按照通信规约的要求处理好数据,最后通过USART 串口通信将数据发送给无线数据收发模块XBee 。
因此在设计软件过程中就涉及到检测温度、发送温度数据和低功耗的管理等方面。
测温传感器主要在无线通信时功率消耗较大。
考虑到一般环境下发热点的温度变化并不明显,为降低测温传感器的功耗,设计软件时采用温度数据短周期采集,长周期主动发送数据以及轮循休眠等方法[9-10]。
图3-1为无线测温传感器主要工作流程图。
1)CPU 每隔15秒采集两次温度值,并将两次温度值进行校验,验证数据的有效性。
TMP102转换温度需耗时26ms ,因此为降低功耗,在其转换温度期间令CPU 进入休眠状态26ms 。
2)将终端地址保存在EEPROM 之中,并且只在CPU 初始化时读取,存入到数据区以供使用,避免频繁读取EEPROM 而增大功耗。
开始CPU 初始化配置TMP102开中断,读EEPROM第一次读取温度值第二次读取温度值判别温度信息的是否准确?否判别两次温度差是否超标?是是判别是否超过温度上限值?发送数据休眠休眠时间大于5min?是否是否否图3-1 无线测温传感器工作流程图3)将当前读取的有效温度值与上一次保存的温度值进行比较,若温差超过一定阀值,直接上传数据(阀值可根据实际工程需要设定),否则每隔5min发送一次数据。
采用得当的方法延长发送间隔,可提高电池的使用寿命。
4)当温度超过上限值75℃时,进入预警状态,直接上传温度数据,累计3次以后,转为每隔5min发送一次数据;当温度再次下降低于73℃时,解除预警状态。
5)正常工作时,无线数据收发模块处于休眠状态。
只当需要发送数据时,通过拉低引脚电平唤醒RF模块,数据发送完成后在拉高电平休眠RF模块。
6)在软件休眠之前,把所有空闲的I/O口配置为输入,还要保持使用中的I/O口的电平状态与相连接的器件相一致,避免引脚上出现电流流动,降低模块的功耗。
7)单片机运行程序器件,会难以避免的偶尔出现当程序运行到某一步骤时进入死循环等情况。
因此在主程序适当的位置均添加了看门狗指令,并且在看门狗WDT溢出之前进行清零操作,提高程序可靠性。
3.1初始化程序的设计初始化程序的主要任务是当PIC单片机上电后,对单片机的内部功能寄存器进行初始化设置。
初始化的主要流程如图3-2所示。
开始关闭闲置模块I/O口初始化数据初始化USART串口通信模块初始化结束图3-2 初始化流程图3.2温度数据读写程序的设计TMP102温度传感器主要靠IIC串行总线进行与单片机的沟通,因此可通过单片机对TMP102的配置从而优化整个测温终端功能。
由于单片机的配置的IIC模块引脚被其他模块所占用。
因此程序设计上采用了模拟IIC串行通信信号的方式实现与TMP102的交流。
因此本小节的主要工作是:1)设计IIC串口通信模拟信号的程序,利用宏定义将RC2口模拟成数据线,RA2口模拟成时钟线,主要对IIC启动信号,应答信号,停止信号,以及读写过程进行设计。
2)配置TMP102温度传感器,首先对指针寄存器赋值,使其指向配置寄存器,可将TMP102配置成关断模式下工作,只当其转换温度时醒来,温度转换完成以后自动进入休眠状态,从而有效地降低了模块的功耗。
主要流程见图3-3中的图(a);3)TMP102温度转换程序的设计,主要流程如图3-3中的图(b)所示; 4)从TMP102上采集温度信息程序的设计,主要流程见图3-3中的图(c)。
开始IIC 启动信号发送TMP102地址信号指针指向配置寄存器信号TMP102初始化配置IIC 停止信号结束开始IIC 启动信号发送TMP102地址信号指针指向配置寄存器信号启动温度转换IIC 停止信号结束开始IIC 启动信号发送TMP102地址信号指针指向温度寄存器信号读取温度IIC 停止信号结束a )配置TMP102流程图b )温度转换流程图c )采集温度信息流程图图3-3 温度数据读写流程图a) 配置TMP102流程图 b )温度转换流程图 c )采集温度信息流程图3.3串口通信程序的设计单片机USART 串行口中有两个缓存寄存器,一个是发送寄存器TXREG ,一个是接收寄存器RCREG 。
串行发送时,串行数据通过引脚TX 送出,CPU 向TXREG 缓存器写入数据;串行接收时,串行数据通过引脚RX 进入,CPU 从RXREG 读出数据。
通信流程图如图3-4所示。
开始唤醒Xbee 模块开启USART延时发送数据结束温度数据是否错误?帧计数位加1准备好发送的数据温度数据低字节置1是否Xbee 模块休眠关闭USART图3-4 USART串行通信流程图4 RF模块XBee的配置ZigBee技术是一种新兴的短距离、低速率、低成本、低功耗、低复杂度的无线网络通信技术。