临沂职业学院 朱海涛
系统设计总框架如图1。
1.控制模块:通过应用单片机,对系统进行初始化,主要完成对数码管显示、按键的处理等功能,起到总体控制和协调各模块工作的作用。
2.盘输入模块:主要完成与时间相关的设置和温度、时间、日期的切换。
3.码管显示模块:主要对单片机送来的时间、日期、温度信息进行显示。
4.度采集模块:采用DS18B20温度传感器,向单片机提供实时温度信息。
5.子钟模块:采用时钟芯片DS1302,该芯片可以进行时、分、秒的计数,DS1302通过串行方式与单片机进行数据传送,向单片机提供包括秒、分、时、日、月、年等在内的实时时间信息。
1.主控制模块
在文章设计的温度显示系统设计中,控制核心是STC89C52单片机,该单片机51系列增强型8位单片机,它有32个I/O口,片内含4K FLASH工艺的程序存储器,便于用电的方式瞬间擦除和改写,而且价格便宜,其外部晶振为12MHz,一个指令周期为1 μS。使用该单片机完全可以完成设计任务,其最小系统主要包括:位电路、震荡电路以及存储器选择模(EA脚的高低电平选择),电路如图2。
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。
4.温度采集部分
文章采用一线制数字温度传感器DS18B20。传感器输出信号进4.7K的上拉电阻直接接到单片机的P1.0引脚上。该器件将半导体温敏器件、A/D转换器、存储器等做在一个很小的集成电路芯片上。在本设计中采用外部供电方式实现DS18B20传感器与单片机的连接,其接口电路下如图5所示。
工作原理:温度以16bit带符号位扩展的二进制补码形式读出,下表给出了温度值和输出数据的关系。程序中需将16进制温度值转化为十进制,再转化为数码管显示需要的段码表数据格式。
?
5.电子钟模块
图1 系统设计总框架
图2 主控制模块电路
图3 键盘输入模块
图4 数码显示模块
采用时钟芯片DS1302,该芯片可以进行时、分、秒的计数,DS1302通过串行方式与单片机进行数据传送,向单片机提供包括秒、分、时、日、月、年等在内的实时时间信息。DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,DS1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录,因此广泛应用于测量系统中。读写时序说明:
DS1302是SPI总线驱动方式。它不仅要向寄存器写入控制字,还需要读取相应寄存器的数据。要想与DS1302通信,首先要先了解DS1302的控制字。DS1302的控制字如图6。
图5 接口电路
图6 DS1302的控制字
图7
图8 软件设计总流程图
图9 时间显示
控制字的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入到DS1302中。
位6:如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;
图10 温度显示
图11 日期显示
位5至位1(A4~A0):指示操作单元的地址;
位0(最低有效位):如为0,表示要进行写操作,为1表示进行读操作。
寄存器读地址写地址秒81H80H分83H82H时85H84H日87H86H月89H88H年8DH8CH控制8FH8EH
重要位:
秒寄存器时钟停止位CH=0,振荡器工作允许;CH=1,振荡器停止。
控制寄存器写保护位WP=0,允许写入;WP=1,禁止写入外部引脚分配(如图7所示)。
软件设计总流程图(如图8所示)。
(1)时间显示如图9。
(2)按下“0”键时分设置,时分闪烁等待设置。
(3)按下“4”键时或分加一,按“0”确认。
(4)按下“A”键显示温度,如图10。
(5)按下“8”键显示日期,如图11。
[1]Liu peng process.Based on AT89S51 digital temperature measurement and display system design[D].2009:33.
[2]王一然.基于单片机的定时温控系统的设计与研究[J].科学与财富,2010(8):152.
[3]王一然.单片机开发语言特点研究[J].科技致富向导,2010(9):98.
[4]许瑾娜.基于89C51的干式变压器温控系统设计空[J].Modern Science,2012,12.
[5]李广弟,朱月秀,冷祖祁.单片机基础[M].北京航空航天大学出版社,2010.