指导教师评定成绩:审定成绩:重庆邮电学院自动化学院计算机控制技术课程设计报告设计题目:多功能数字时钟设计单位(二级学院):自动化学院学生姓名:****专业:自动化班级:08*****学号:2009********指导教师:*****设计时间:2012 年 6 月重庆邮电学院自动化学院制摘要数字时钟在日常生活中最常见,应用也最广泛。
本次数字时钟电路根据设计要求采用AT89C51单片机作为控制核心,采用单片机内部计时器来实现时、分、24小时计时,采用DS18B20来实现温度的测量,采用LED实现时间、温度显示,采用蜂鸣器实现闹铃功能。
文章的核心主要是硬件设计和软件编程两个大的方面。
硬件电路设计主要包括中央处理单元电路、时钟电路、温度测量电路、键盘扫描电路、闹铃电路。
软件用C语言来实现,主要包括主程序、时间设置子程序、温度测量子程序、键盘扫描子程序、闹铃电路子程序等软件模块。
最终电路实现了显示时间、调整时间、测量并显示温度、闹钟定时及响动等功能,达到了设计的要求和目的。
在Protuse软件上进行了仿真和调试通过,并最后焊接出实物实现其所有功能。
关键词:数字时钟;AT89C51;DS18B20;LED;蜂鸣器目录摘要............................................... 错误!未定义书签。
目录. (3)一设计题目 (4)1.1 多功能数字时钟设计 (4)1.2 设计目的 (4)1.3 设计要求 (4)二设计报告正文 (5)2.1 设计方案总体方向的选择 (5)2.2 温测芯片及显示部分的选择 (5)2.2.1 温测芯片的选择 (5)2.2.2 显示部分的选择 (5)2.3 核心芯片选择 (5)2.3.1 AT89C51简介 (5)2.3.2 DB18B20简介 (6)2.3.3 DB18B20特性 (6)2.4 系统硬件设计 (8)2.4.1 硬件主要设计电路 (8)2.4.2 温度测量电路设计 (9)2.4.3 键盘扫描.............................. 错误!未定义书签。
2.4.4 LED显示.............................. 错误!未定义书签。
2.4.5 闹铃电路设计 (11)2.4.6 复位电路、时钟电路设计 (12)2.5 系统软件设计 (13)三系统模拟仿真及实现 (14)3.1 Proteus仿真............................... 错误!未定义书签。
3.2 实物实现.................................. 错误!未定义书签。
四设计总结. (15)五参考文献 (16)六附录 (17)一、设计题目1.1多功能数字钟设计设计制作一个24小时制多功能数字钟。
通过该数字钟可以显示小时、分钟、有AM、PM指示器,具有时间设置(小时和分钟)、闹钟时间设置、闹钟开、闹钟关功能。
通过温度传感器检测环境温度,并显示当前环境温度信息。
1.2设计目的:1.掌握LED显示设计方法;2.掌握数据采集电路设计方法;3.掌握测控系统设计方法。
1.3设计要求:1.画出系统结构功能结构框图;2.选择合适元器件进行电路设计,画出电路原理图;3.画出系统功能实现程序流程图;4.编写程序。
二、设计报告正文2.1设计方案总体方向的选择针对要实现的功能,采用AT89C51单片机进行设计,AT89C51 单片机是一款低功耗,高性能CMOS8位单片机,片内含4KB在线可编程(ISP)的可反复擦写1000次的Flash只读程序存储器,器件采用高密度、非易失性存储技术制造,兼容标准MCS- 51指令系统及80C51引脚结构。
这样,既能做到经济合理又能实现预期的功能。
在总体方面,采用分块设计的方法,这样既减小了编程难度、使程序易于理解,又能便于添加各项功能。
程序可分为延时程序,闹钟定时程序,时间、日期调整程序,显示程序,温测显示程序,中断程序等。
通过各模块之间的兼容和配合,完成整个系统的设计。
2.2温测芯片及显示部分的选择2.2.1温测芯片的选择DS18B20是美国DALLAS公司生产的单线数字温度传感器芯片,具有结构简单、体积小、功耗低、抗干扰能力强、使用简单等优点。
它的ROM中存有其芯片的唯一标识码,即任意两个DS18B20的标识码是不同的,特别适合于微处理芯片构成多点温度测控系统。
它支持“一线总线”接口,使用户可以轻松地组建传感器网络。
其内部采用在板温度测量专利技术,测量范围为-55~+125℃,精度为0.5℃。
DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的稳定报警触发器TH和TL、配置寄存器。
该芯片非常适合本设计,予以采用。
2.2.2显示部分的选择用单片机驱动LED数码管显示有很多方法,按显示方式分有静态显示和动态显示。
静态显示方式虽然显示的数据稳定,无闪烁,占用CPU时间少。
但是由于数码管始终发光,功耗比较大,所以不予采用。
而动态扫描用分时的方法轮流控制每个显示器的COM端,使每个显示器轮流电亮。
在轮流点亮过程中,每位显示器的点亮时间极为短暂,给人的印象就是一组稳定的显示数据。
动态驱动一般用于多位LED数码管显示,主要是节省驱动管脚,减少器件。
故选择动态显示。
2.3核心芯片介绍2.3.1 AT89C51简介AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。
AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
AT89C51外形及引脚排列如图2.1所示:图2.1 AT89C51其具有与MCS-51 兼容、4K字节可编程闪烁存储器、寿命:1000写/擦循环、数据保留时间:10年、全静态工作:0Hz-24MHz、三级程序存储器锁定、128×8位内部RAM、32可编程I/O线、两个16位定时器/计数器、5个中断源、可编程串行通道、低功耗的闲置和掉电模式、片内振荡器和时钟电路等多种特性。
2.3.2 DS18B20简介DS18B20 数字温度计提供 9 —12位分辨率,指示器件的温度。
信息经过单线接口送入 DS18B20或从DS18B20送出,因此从中央处理器到DS18B20仅需连接一条线(和地)。
读、写和完成温度变换所需的电源可以由数据线本身提供,而不需要外部电源。
因为每一个DS18B20 有唯一的系列号(silicon serial number),因此多个DS18B20可以存在于同一条单线总线上。
这允许在许多不同的地方放置温度灵敏器件,此特性的应用范围包括 HVAC环境控制,建筑物、设备或机械内的温度检测,以及过程监视和控制中的温度检测。
2.3.3 DS18B20特性独特的单线接口,只需1个接口引脚即可通信;多点(multidrop)能力使分布式温度检测应用得以简化;不需要外部元件;可用数据线供电;不需备份电源;测量范围从-55 至+125,以12位数字值方式读出温度;在750ms典型值内把温度变换为数字;用户可定义的9-12位分辨率。
非易失性的温度告警设置;告警搜索命令识别和寻址温度在编定的极限之外的器件(温度告警情况); 应用范围包括恒温控制,工业系统,温度计或任何热敏系统等。
1、DS18B20引脚排列引脚排列如图2.2所示: 引脚说明: GND 地DQ 数字输入输出 VDD 可选的VDD NC 空引脚 DNC 不连接引脚详细说明见表2.1 图2.2 DB18B20引脚排列表2.12、测量温度DS18B20 通过门开通期间内低温度系数振荡器经历的时钟周期个数计数来测量温度,而门开通期由高温度系数振荡器决定计数器予置对应于-55的基数,如果在门开通期结束前计数器达到零,那么温度寄存器它也被予置到-55的数值将增量指示温度高于-55;同时计数器用钭率累加器电路所决定的值进行予置,为了对遵循抛物线规律的振荡器温度特性进行补偿,这种电路是必需的。
时钟再次使计数器计值至它达到零,如果门开通时间仍未结束那么此过程再次重复。
钭率累加器用于补偿振荡器温度特性的非线性,以产生高分辩率的温度测量。
通过改变温度每升高一度,计数器必须经历的计数个数来实行补偿。
因此为了获得所需的分辩率,计数器的数值以及在给定温度处每一摄氏度的计数个数(钭率累加器的值)二者都必须知道。
此计算在DS18B20内部完成以提供0./625的分辩率温度读数,以16位符号扩展的二进制补码读数形式提供。
表2.2说明输出数据对测量温度的关系数据在单线接口上串行发送DS18B20,可以以0.0625的增量值在-55至+125的范围内测量温度。
对于应用华氏温度的场合必须使用查找表或变换系数。
引脚8脚SOIC 引脚FR35 符号 说明5 1 GND 地42DQ 单线运用的数据输入/输出引脚 3 3 VDD可选VDD 的引脚。
注意,在DS18B20中温度是以1/2 LSB (最低有效位)形式表示时产生以下12位格式:MSB (最高有效位) (最低有效位) LSB其中s 为符号位这种符号扩展产生了如表2.2所示的16位温度读数。
以下的过程可以获得较高的分辩率。
首先,读温度并从读得的值截去0.5位(最低有效位),这个值便是(TEMP_READ ),然后可以读留在计数器内的值。
此值是门开通期停止之后计数剩余,所需的最后一个数值是在该温度处每一摄氏度的计数个数(COUNT_PER_C) ,于是用户可以使用下式计算实际温度:(___)_0.25__COUNT PER C COUNT REMAIN TEMPERATURE TEMP READ COUNT PER C -=--表2.2 温度/数据关系2.4系统硬件设计2.4.1 硬件主要设计电路本系统设计的硬件电路由主控部分(AT89C51)、测温部分(DS18B20)、显示部分(八段数码管)、按键部分(开关按钮)、闹铃部分(蜂鸣器)5个部分组成。
各部分之间相互协作,构成一个统一的有机整体,实现多功能数字时钟的功能。
各部分硬件电路设计如图2.3所示。
流程图如图2.4所示。
设计总电路图及其PCB 图见附录。
ss s s s 1 1 0 11111温度 数字输出(二进制) 安息字输出(十六进制)+125 00000111 11010000 07D0H +85 00000101 00101000 0550H +10.125 00000000 10100010 00A2H +0 00000000 00000000 0000H -0.5 11111111 11111000 FFF8H -25.0625 11111110 01101111 FE6FH -5511111100 10010000FC90H图2.3总体电路设计图图2.4 总体流程图2.4.2 温度测量电路的设计DS18B20是美国DALLAS 公司生产的单线数字温度传感器芯片,具有结构简单、体积小、功耗低、抗干扰能力强、使用简单等优点。