当前位置:文档之家› 单片机的数字温度计设计方案(附代码与仿真)

单片机的数字温度计设计方案(附代码与仿真)

基于STC89C52的数字温度计

目录

1、绪

论……………………………………………………………………

(3)

2、方案选择

2.1、主控芯片选择 (3)

2.2、显示模块 (3)

2.3、温度检测模块 (4)

3、系统硬件设计

3.1、51单片机最小系统设计 (4)

3.2、电源供电电路设计 (5)

3.3、LCD显示电路设计 (6)

3.4、温度检测电路设

计 (7)

4、系统软件设计

4.1、温度传感器数据读取流程图 (9)

4.2、系统程序设计 (10)

5、编程和仿真

5.1、Keil编程软件 (1)

1

5.2、proteus (11)

5.3、仿真界面 (11)

6、总结..................................................................................... .. (12)

7、附录

附录1、原理图………………………………………………………………………….

12

附录2、程序清单 (13)

1、绪论

在信息高速发展的21世纪,科学技术的发展日新月异,科技的进步带动了测量技术的发展,现代控制设备的性能和结构发生了翻天覆地的变化。我们已经进入了高速发展的信息时代,测量技术也成为当今科技的一个主流,广泛地深入到研究和应用工程的各个领域。温度和人们的生活息息相关,温度的测量也就变得很重要。

2、系统方案选择

2.1 主控芯片选择

方案一:STC89C52RC

STC89C52RC是采用8051核的ISP在线可编程芯片,最高工作时钟频率

80MHz,片含8KB的可反复擦写1000次的Flash只读存储器,器件兼容MCS-51指令系统及8051引脚结构,芯片集成了通用8位中央处理器和ISP Flash存储单元,具有在线可编程特定,配合PC端的控制程序即可将用户的程序代码下载进单片机部,省去了购买通用编程器,而且速度更快。STC89C52RC系列单片机是单时钟周期、高速、低功耗的新一代8051单片机。

方案二:ATmega8

ATmega8是ATMAL公司在2002年第一季度推出的一款新型AVR高档单片机。在AVR家族中,ATmega8是一种非常特殊的单片机,它的芯片部集成了较大容量的存储器和丰富强大的硬件接口电路,具备AVR高档单片机MEGA系列的全部性能和特点。但由于采用了小引脚封装<为DIP28和TQFP/MLF32),所以其价格仅与低档单片机相当,再加上AVR单片机的系统可编程特性,使得无需购买昂贵的仿真器和编程器也可进行单片机嵌入式系统的设计和开发,同时也为单片机的初学者提供了非常方便和简捷的开发环境。

由以上两种方案进行比较,我们选择STC89C52RC作为主控芯片,因为该芯片是入门级单片机,我们对该款单片机比较熟悉,而AVR单片机较为高端,这次的设计用STC89C52已经足够使用,引脚也够用,故用STC89C52作为主控芯片。STC89C52RC价格低廉,一般5元以可以买到,在通银买也很方便。

2.2 时钟及显示模块

方案一:数码管

数码管亮度高,显示大,特别是显示的时间很直观,价格比较便宜,但多位的数码管在动态扫描的时候会出现闪烁。而且数码管占用的位置较大,且比

较耗电。

方案二: 1602液晶屏

1602液晶屏显示清晰且不会闪烁,在需要时还可以输出字符等容,由于液晶屏是数字式的,因此和单片机系统的接口简单,操作方便。1602LCD液晶显示屏的功耗主要消耗在其部的电极和驱动IC 上,因而耗电量比其他显示器要少得多,功耗较低。由于其部集成有显示芯片,程序编写简单,适用于多方面的应用。

因此由以上两种方案进行比较,我们选择方案二来设计显示模块。1602液晶显示屏网上可购买的途径较多,价格一般在10元以,育森电子网店价格为8.5元。通银那也有,不过可能价格要15元左右。

2.3 温度检测模块

方案一:热敏电阻+AD模块

本方案使用热敏电阻之类的器件<如AD590等模拟温度传感器)利用其感温效应,在将随被测温度变化的电压或电流采集出来,进行A/D转换后,就可以利用单片机进行数据的处理,在显示电路上可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温电路比较麻烦。

方案二:DS18B20

DS18B20数字温度传感器是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。它在实际应用中不需要外部任何元器件即可实现测温,测量温度围在-55到+125摄氏度之间,

由以上两种方案进行比较,我们选择方案二来设计温度检测模块。其中DS18B20网上报价约为5元,其中,育森电子的网店较为便宜,为4.5元。通银也有卖,价格稍微高点。

3、系统硬件设计

3.1 51单片机最小系统设计

单片机最小系统如下图所示:

以STC89C52单片机为核心,选用12M的晶振,这是最常用的选择,外接电容没有特别的要求,但是外接电容的大小会影响振荡器的频率高低、振荡器的稳定性和起振的快速性,因此我们选用30pf的电容作为起振电容。复位电路为按键低电平复位,当按键按下,RET端为高电平,当高电平持续4us的时间就可以使单片机复位。这里尤其要注意的是晶振和电容的位置,它们距离单片机引脚越短越好,因为太长可能无法使单片机起振。另外是EA端一定要接上电源,使单片机能够工作。

3.2 电源供电电路设计

电源供电电路如下图所示:

我们采用4节1.5V的电池作为电源,LM2940为稳压芯片,稳压芯片两端分别接两个0.1uf和100uf的电容进行滤波,以获得更稳定的电压。D1为电源指示灯,当开关打开,显示灯亮,表示给电路供+5V电压。其中,LM2940作为常用的稳压芯片,比7805的转换效率要高,7805直接输入不接输出的情况下,其部会有3mA的静态电流消耗,而2940的静态电流比7805要小的多,故选择LM2940作为稳压芯片。

4节电池装在电池盒中,在电路板下方安装,使用两套螺丝。

3.3 LCD显示电路设计

1602LCD液晶屏显示电路如下图所示:

1602LCD液晶屏为5V电压驱动,带背光,可显示两行,每行16个字符,不能显示汉字。液晶1、2端为电源;15、16为背光电源;为防止直接加5V而烧坏背光灯,在15脚串联一个1K电阻晶3端为液晶对比度调节端,通过一个10K 的电位器来调节液晶显示对比度。用于限流。液液晶4端为向液晶控制器写数据/写命令选择端,接单片机P1.0端口。液晶5端为读/写选择端,因为我们不需要从液晶中读取数据,只向其写入命令和数据,因此此端始终选择为写状态,即低电平接地。液晶6端为使能信号,是操作必须的信号,接单片机的

P1.1口。

3.4 温度检测电路设计

温度检测电路如下图所示:

DS18B20是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。DS18B20的性能特点如下:

?独特的单线接口仅需一个端口引脚进行通讯

?简单的多点分布应用

?无需外部器件

?可通过数据线供电

?零待机功耗

?测温围-55~+125℃,以0.5℃递增。华氏器件-67~+2570F,以0.90F 递增?温度以9 位数字量读出

?温度数字量转换时间200ms<典型值)

?用户可定义的非易失性温度报警设置

?报警搜索命令识别并标志超过程序限定温度<温度报警条件)的器件。

相关主题
文本预览
相关文档 最新文档