PIC单片机温度测量领域应用及Protues仿真调试

最新更新时间:2014-02-20来源: 电源网关键字:PIC  单片机  温度测量 手机看文章 扫描二维码
随时随地手机看文章

在日常生活经常要用到温度的检测及控制,传统的测温元件有热电偶和热电阻,而热电偶和热电阻测出的一般是电压,在转换成对应的温度,需要比较多的硬件支持,硬件电路很复杂,软件调试也复杂,制作成本高。而且测出来的温度精度也没有技术成熟的温度传感器高。

本文基于PIC单片机来设计数字式测温计,直接采用数字式温度传感器DS18B20,用单片机对18B20进行控制,来进行测温。显示部分可用lcd1602,单片机可直接驱动lcd1602显示温度,硬件较简单,稳定。DS18B20采用单总线技术,容易扩展,并且具有转换速度快,转换精度高,可由片机直接读出温度并显示出来等优点。

一、设计目标和思路

本文采用PIC16F877的USART异步通信模式,可广泛应用于单片机与PC机,以及单片机与单片机之间的通信。USART接口由RC6、RC7这两只引脚构成。RC6用于数据的发送,RC7用于接收数据。

当单片机需要通过USART发送数据时,只需将所发送数据送入数据缓冲寄存器TXERG,然后系统会自动将TXREG寄存器内容送入发送移位寄存器TSR,接着系统会根据所设置的波特率脉冲信号,通过RC6引脚从高位到低位依次发送出去。当系统将TXERG寄存器内容加载到TSR中时,会自动将中断发送标志位TXIF置位,根据程序决定是否进入中断。而当单片机需要通过USART接受数据时,通过RC7引脚将数据依次送入接收移位寄存器RSR中,当收到一个停止位时,移位寄存器RSR就把收到的8位数据自动送入接收数据缓冲器RCREG中。在接收数据缓冲器RCREG收到一个稳定的数据后,接收中断标志位RCIF将自动置位,根据程序决定是否进入中断。

二、原理结构图

本文利用PIC16F877和DS18B20传感器设计了测温计,其包含主控器部分、温度显示部分、传感测试部分和按键设计部分。

基于PIC16F877的测温计原理电路图结构如图1所示。

其中,电源部分的S1为复位按钮它在被按得时候断开放开后自动闭合,在其断开又闭合的瞬间使整套电路中各芯片的供电电压实现从5V降到0V再升到5V的过程,从而达到复位的目的。输入电容C2一般情况不接,但当集成稳压器远离整流、滤波电路时应接入一个0.33μf的电容器,它的作用是改善纹波和抑制输入的瞬时过电压,保证78L05的输入与输出间的电压差不会超过允许值。输出电容C3一般不采用大容量的电解电容器,只要接入0.1μf的电容器便可以改善负载的瞬态响应。但是,为了减小输出的纹波电压,在输出端并联一只大容量的电解电容C4,会取得更好的效果。然而,这样将随之产生一种弊端:一旦78L05的输入端出现短路时,输出端上的大电容器上储存的电荷将通过集成稳压器内部电路调整管的发射极与基极泄放,因大容量电容器释放能量较大,会造成集成稳压器内部调整管的损坏,导致电路无法工作。为了防止这一点,在78L05的输入端与输出端之间跨接一个二极管,它为C4上电荷的泄放提供了一个分流通路,对集成稳压器起保护作用。

串口接收温度函数流程图如图2所示。

三、Protues仿真调试

为调试和检验上述的电路原理图的正确性和合理性,本文通过Protues软件仿真来进行波形调试。

在仿真调试的过程中,先后对DS18B20测温模块、lcd1602显示模块、PIC单片机的USART模块通信等,分别进行了仿真测试。待各部分均测试正确无误后,方才对整体电路进行测试。图3所示即为本文对温度测量部分进行仿真调试和测试。

从Protues的仿真结果来看,本文设计的数字温度测量电路,以PIC16F877单片机为工作处理器的核心,外接DS18B20和LCD1602,用单片机处理数字信号,再把其送入显示器显示。在经过反复的仿真调试和测试后,验证其使用起来比较方便且结果简单易读。

四、结语

本文采用PIC16F877单片机,结合DS18B20传感器,来设计数字式温度测量电路,主要包含其包含主控器、温度显示、传感测试和按键设计等几个部分部分。在理论设计的基础上,利用Protues软件对其进行仿真调试和测试。与此同时,如果在本文涉及的基础上在扩展其功能,如多点测温、温度报警等,则只需调整PIC单片机程序即可。这样的话,本文设计的测温系统,在具有电路简单、维护方便等优点的同时,还具有扩展兼容性好、读数准确易懂等特点,能够满足日常生活对测温计的一般基本要求。

关键字:PIC  单片机  温度测量 编辑:探路者 引用地址:PIC单片机温度测量领域应用及Protues仿真调试

上一篇:嵌入式设计必备ARM仿真器知识
下一篇:干涉型光纤扰动传感器输入信号调理电路的仿真

推荐阅读最新更新时间:2023-10-12 22:35

不可不知的小贴士:单片机与PLC编程的区别
单片机 与PLC的程序设计有很大的区别,单片机的全部程序都是用户设计的,PLC的程序包括系统程序(西门子称为操作系统)和用户程序。操作系统用来组织与具体的控制任务无关的所有的CPU功能。操作系统的任务包括处理启动过程,刷新输入/输出过程映像,调用用户程序,检测中断事件和调用中断组织块,检测和处理错误,管理存储器,以及处理通信任务等。 PLC 的很多功能,例如扫描工作方式、定时器功能和中断处理,是操作系统完成的。在画流程图时,应考虑这个问题。 PLC的开关量控制系统的程序用顺序功能图来描述比较简洁。用流程图来描述PLC的用户程序原则上也是可以的,但是应区分哪些功能是操作系统完成的,哪些是用户程序实现的。 例如有人问是否需要用跳转指令
[电源管理]
24课:动态扫描显示接口电路及程序
在单片机系统中动态扫描显示接口是单片机中应用最为广泛的一种显示方式之一。其接口电路是把所有显示器的8个笔划段a-h同名端连在一起,而每一个显示器的公共极COM是各自独立地受I/O线控制。CPU向字段输出口送出字形码时,所有显示器接收到相同的字形码,但究竟是那个显示器亮,则取决于COM端,而这一端是由I/O控制的,所以我们就能自行决定何时显示哪一位了。而所谓动态扫描就是指我们采用分时的办法,轮流控制各个显示器的COM端,使各个显示器轮流点亮。在 http://www.51hei.com 还有很多关于单片机显示接口的文章,大家可以参考一下 在轮流点亮扫描过程中,每位显示器的点亮时间是极为短暂的(约1ms),但由于人的视觉暂留现象及
[单片机]
24课:动态扫描显示接口电路及程序
51单片机红外解码过程时序图
红外解码过程: Ray_Read_bit_timer 103us自增变量 Ray_Read_bit_count 保存位置编号 Ray_bit_timer_Buffer 33字节数组 Ray_Flag 保存标志 Ray_Read_ok 允许分析长短 (1)、按下遥控器,单片机就会有下降沿中断。启动定时器TR0=1; (2)、定时器从0开始增加到255溢出,需要时间103us。 (3)、产生定时器中断。中断里面变量Ray_Read_bit_timer增加1。 (4)、在下降沿的中断服务,判断这个时候Ray_Read_bit_timer * 103us,是不是大于11.5ms 。 (5)、如果大于11.5,肯定大于9
[单片机]
51<font color='red'>单片机</font>红外解码过程时序图
基于AVR单片机的核磁共振仪床体检测系统
  1 引言   近年来随着医学技术的快速发展,核磁共振仪已经在大中型医院中被广泛的应用。目前,在核磁共振仪的生产过程中,床体部分要与磁体一起搬入电磁屏蔽室组装后才能进行检测,这对人员和物资都是很大的浪费。针对这种状况,本文设计出了一套核磁共振仪床体部分的运动控制与检测系统,它能够对床体部分独立进行检测,而不必将全部系统在屏蔽室安装后检测,从而降低了核磁共振仪床体部分的生产和检测成本,缩短了生产周期。   本设计以通用医疗集团的Ovation5型核磁共振仪的床体为对象,对驱动床体做横向运动的直流步进电机和驱动床体做纵向运动的直流伺服电机的精确控制问题进行较为深入的分析和研究。系统主要采用了ATMEL公司的A
[单片机]
基于AVR<font color='red'>单片机</font>的核磁共振仪床体检测系统
AVR单片机做的电子时钟
#include avr/signal.h #include avr/interrupt.h #include avr/delay.h #include avr/wdt.h #include avr/eeprom.h #include math.h #include stdlib.h #include string.h #define uchar unsigned char #define uint unsigned int #define xtal 8 #define CS PA5 #define SID PA6 #define SCLK PA7 #define Set_CS() DDRA |= (
[单片机]
基于单片机的电子时钟设计
上图是Proteus仿真图,其中反相器用74lHC14,排阻用10K的,晶振用12MHZ的,电阻R1-R8用200欧的即可。但在实际制作时数码管可以用两个四位一体共阳极的,这样连接电路会更加方便。可以用三极管代替反相器,这样可以节约成本,但代替后无法用Proteus仿真出来,下图为代替后的图片,三极管用常用的9012或者9015即可,经本人实际验证效果非常好。 下图为原理图: 下图为实物图 以下为源程序 #include reg52.h #define uint unsigned int #define uchar unsigned cha
[单片机]
单片机多字节数相乘的实现方法(转贴)
****************************************************************** 1. 操作数在寄存器中,R0--R7 2. 操作数在内RAM中 3. 操作数在外RAM中 不过都大同小异,以2例,是个乘法子程序。 入口:乘数R0,被乘数R1,字节数R7,结果在R0 MULN: LCALL N2N ;多字节十六进制乘法 RLC A RLC A MOV R3,A MULN1: MOV A,R5 MOV R0,A CLR C LCALL RLCN JNC MULN2
[单片机]
AT89C52单片机对电风扇红外遥控发射电路的设计
传统电风扇多采用机械方式进行控制,功能少,噪音大,各档的风速变化大。随着科技的发展和人们生活水平的提高,家用电器产品趋向于自动化、智能化、环保化和人性化,使得由微机控制的智能电风扇得以出现。随着电子制造业的不断发展,社会对生产率的要求越来越高,各行业都需要精良高效、高可靠性的设备来满足要求。作为一种老式家电,电风扇具有价格便宜、摆放方便、体积轻巧等特点。由于大部分家庭消费水平的限制,电风扇作为一个成熟的家电行业的一员,在中小城市以及乡村将来一段时间内仍然会占有市场的大部分份额,但电风扇功能简单,不能满足智能化的要求。本文利用了单片机的红外控制功能,对电扇的控制结构进行了重新的设计,使得人在距离电扇10 m范围内就可以短程控制电扇,
[单片机]
AT89C52<font color='red'>单片机</font>对电风扇红外遥控发射电路的设计
小广播
最新电源管理文章
换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved