资源描述
温 度 监 测 系 统 1 设 计 任 务测温范围为-5 5 +1 2 5 数码管显示所测温度值可用按键设置最高/低温度值若所测温度超过设置的温度,蜂鸣器报警 2 设计分析在工业生产过程和科研工作中很多时候需要对温度进行测量和控制,数字式温度测量是采用数码管直接显示出被测温度值,这种数字显示不仅直观而且便于控制。本课题的设计是基于DS1 8 B2 0的温度显示系统。该系统设计分为5个模块:主控模块、温度获取模块、温度显示模块、按键控制模块和超限报警模块。单片机从温度传感器获取数据并进行处理,之后送入显示模块,按键用于设置上下限温度,蜂鸣器用于超限报警。显示模块采用四个数码管进行显示当前环境温度。 硬件电路框图 STC1 2 C5 A0 8 S2主控模块显示模块DS1 8 B2 0温度获取报警模块 键盘控制系统工作流程:系统上电后,若一切工作正常,实时采集温度数据,并对数据处理,既转换成温度值并通过数码管显示,转换的温度与所设置的最高温度值与最低温度值进行比较,如 果测得当前温度超限,蜂鸣器就一直蜂鸣。通过按键可以设置最高温度和最低温度。此系统可以测温范围-5 5 -1 2 5 。 3 主要器件简介 DS1 8 B2 0简介 温度传感器DS1 8 B2 0是单总线数字温度传感器,无需外加A/D 即可输出数字量, 把温度信号直接转换成串行数字信号供微机处理,并且它只有三个管脚,与单片机连接电路非常简单。该系统的DS1 8 B2 0分辨率采用默认值1 2位,精度为0 .0 6 2 5,温度量值乘以精度就所测的温度值。 DS1 8 B2 0特点数据传输采用单总线(1 - Wire Bus)结构 ,无需外围其它元件;测温范围为-5 5 +1 2 5 ,在-1 0 8 5 时精度为0 .5 ;以91 2位数字值方式读出温度;两种供电方式:寄生电源供电方式,外部电源供电方式;具有可编程的温度报警功能;电源电压范围为35 . 5 V;低功耗 ,无外部供电电源也能可靠工作。 Ds1 8 b2 0引脚图及内部结构图 DS1 8 B2 0内部结构图 DS1 8 B2 0引脚图 单片机简介单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。本系统使用单片机STC1 2 C5 A0 8 S2。 单片机STC1 2 C5 A0 8 S2引脚图 STC1 2 C5 A0 8 S2引脚简介 vcc(4 0脚):电源正极电源引脚 gnd(2 0脚):接地 XTAL1(1 9脚):输入引脚时钟引脚接时钟电路 XTAL2(2 0脚):输出引脚复位引脚:接复位电路RST/VPD(9脚) PSEN(2 9脚)控制引脚-辅助控制作用 ALE/PROG(3 0脚):地址锁存允许端 EA/VPP(3 1脚) I/O端口引脚:连接单片机和外部设备,实现数据的输 入/ 输出 P0 .0 P0 .7 (3 9脚3 2脚):P0端口 P1 .0 P1 .7 (1脚8脚):P1端口 P2 .0 P2 .7 (2 1脚2 8脚):P2端口 P3 .0 P3 .7 (1 0脚1 7脚):P3端口 单电机最小电路复位与时钟电路复位电路 470R R1 470R R2 SW-SPST VCC 10uF RST RST复位输入。确定单片机工作的起始状态,完成其自启动过程。当振荡器工作时RST引脚出现两个机器周期以上高电平将使单片机复位。 时钟电路 12 Y? XTAL 30pF C1 30pF C2 XTAL2 XTAL1 时钟电路向单片机提供一个正弦波信号作为单片机工作的时间基准,决定单片机的工作速度。晶振提供的时钟频率越高,单片机速度就越快。STC1 2 C5 A0 8 S2单片机的时钟产生方法有两种,内部时钟方式和外部时钟方式。本设计采用内部时钟方式,利用芯片内部的振荡电路,在XTAL1、XTAL2引脚上外接定时元件,内部的振荡电路便产生自激振荡。振荡晶体可在1 .2 MHZ到1 2 MHZ之间选择。电容值无严格要求,但其取值对振荡频率输出的稳定性、大小、振荡电路起振速度有少许影响,CX1、CX2可在2 0 pF到1 0 0 pF之间取值本设计中,振荡晶体选择1 2 MHZ,电容选择3 0 pF。 总电路图 单片机STC1 2 C5 A0 8 S2主控其他模块,通过单片机控制来采集温度信息,将采集到的温度信息进行处理并用数码管显示所采集的当前温度。如果所测当前温度超过设置的最高或最低报警温度,单片机控制蜂鸣器使蜂鸣器蜂鸣,否则不蜂鸣。通过单片机控制按键来设置最高或最低报警温度。4硬件电路简介主控模块 温度传感器DS1 8 B2 0的第一个管脚接地,第三个管脚接VCC,第二个管脚(DS1 8 B2 0的数据线DQ)与单片机STC1 2 C5 A0 8 S2的P1 .5口连接,实现传感器与微控制器之间的数据传输。温度传感器DS1 8 B2 0是单总线数字温度传感器,无需外加A/D 即可输出数字量, 把温度信号直接转换成串行数字信号供微机处理. 4.7K VCC GND 1 DQ 2 VCC 3 DS18B20 DQ 温度获取模块 本系统所需显示的温度范围- 5 5 + 1 2 5 ,所以只需四个数码管就可以,选用四个连在一块的数码管,共有1 2个管脚,连接方便。单片机P0口作为要显示的数据口,与数码管8个片选管脚对应连接。其余四个管脚接与位选电路对应连接。采用四个PNP三级管来进行位选。三极管的发射极接VCC,集电极对应连接四位数码管的标注为SMX(X代表1、2、3、4)(SM1为数码管显示最低位,SM4为数码管显示最高位)的管脚。每个三极管的基极先接一个4 .7 K的电阻,再对应连接单片机的P2 .0P2 .3口。温度显示模块 四个按键的下端都接地,上端都与单片机接。标注为inter的按键接单片机P3 .2口(外部中断0),inter按下,就进入中断,此时显示已设置的最高或最低温度值,不再变化,为后面调整超限温度值做准备。标注为shi的按键接单片机P1 .0口,此按键按一下,数码管所显示的十位温度数字加1,十位温度数字可在09之间变化。一样,标注为ge的按键接单片机P1 .1口,此按键按一下,数码管所显示的个位温度数字加1,个位温度数字可在09之间变化。标注为stop的按键接单片机P1 .2口,如果最高或最低温度设置完毕,就按下此键,退出中断。按键模块 报警电路采用三极管驱动蜂鸣器发声报警,此电路连接方便,简单耐用。电阻的上端与单片机的P1 .3口连接。将采集的温度值与所设置的最高温度和最低温度值进行比较,如果所采集的温度超限,就报警。 超限报警模块 5 调试硬件调试:显示模块,按键模块,报警模 块,温度获取模块软件调试:在KEIL软件中对.C文件进行调试。软硬联调:将KEIL 软件中生成的.hex 文件烧写到单片机中,进行软硬联调,用手捏住DS1 8 B2 0 管,会看到显示屏的温度不断上升, 当上升的温度超过设定的上限报警值时,蜂鸣器会响起;用冰放在DS1 8 B2 0 管处,会看到显示屏上的温度迅速下降。 6 结论本论文设计了基于单片机的温度检测控制系统及仿真,系统采用DS1 8 B2 0传感器检测实时温度,通过对硬件电路的调试,各模块均正常工作,实现了预期设计的功能,达到了对温度的实时检测与控制的目的。但也有很多可以改进的地方,如显示部分可以用液晶显示;本系统所需显示的温度范围- 5 5 + 1 2 5 ,但温度可调整范围是0 +9 9 ,还需要后续的改进。
展开阅读全文