二、各模块实现
1.主控制模块
在文章设计的温度显示系统设计中,控制核心是STC89C52单片机,该单片机51系列增强型8位单片机,它有32个I/O口,片内含4KFLASH工艺的程序存储器,便于用电的方式瞬间擦除和改写,而且价格便宜,其外部晶振为12MHz,一个指令周期为1μS.使用该单片机完全可以完成设计任务,其最小系统主要包括:
位电路、震荡电路以及存储器选择模(EA脚的高低电平选择),电路如图2.
基于STC89C52单片机为控制中心的高精度温度计显示系统设计2.键盘输入模块
键盘输入模块(见图3)上“0”、“4”、“8”、“C”可以配置成独立按键,通过跳帽J11切换,在独立按键中,应该把跳帽接到左端。
功能介绍:本文中,P3.0-P3.3四个独立按键分别时间调整按键、功能加减、日历切换按键、温度切换按键。当P3.0(set)按下系统进入时调整状态:分单元闪烁,再按下P3.1(up)时,对显示的数码管的时段进行加一功能,达到对时调整,再次按下P3.0(set)时进入分钟调整状态,分单元闪烁,通过按键P3.1(up)加一调整分的显示,秒不进行调整,时间调整结束后,再次按下P3.0(set)进入正常时钟显示;当按下P3.2(switchriqi)时,切换到日历的显示;当按下P3.3(setwendu)时,切换到温度的显示。
3.数码管显示模块
显示原理:因为所有位数码管的段选线被并联在一起,位选线控制哪一位数码管有效的有效,所以就需要为每一位数码管配一个锁存器,进而简化了硬件电路。点亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉残留作用,使人感觉到各位数码管似乎同时在显示。由于动态显示的亮度比静态显示要差一些,所以在选择限流电阻时应略小于静态显示电路中的限流电阻。数码显示模块电路见图4.
基于STC89C52单片机为控制中心的高精度温度计显示系统设计4.温度采集部分
文章采用一线制数字温度传感器DS18B20.
传感器输出信号进4.7K的上拉电阻直接接到单片机的P1.0引脚上。该器件将半导体温敏器件、A/D转换器、存储器等做在一个很小的集成电路芯片上。在本设计中采用外部供电方式实现DS18B20传感器与单片机的连接,其接口电路下如图5所示。