1、本科毕业设计(论文)(20 届)单片机日历时钟开发所在学院专业班级 电子信息科学与技术学生姓名指导教师完成日期目 录摘要 .1前言 .3第一章 概述 .41.1 简介 .41.2 单片机 的发展史 .41.3 时钟日历的特征 .4第二章 系统原理和硬件设计 .62.1 硬件的选择 .62.2 AT89C51 单片机介绍 .72.3 时钟芯片介绍 .132.4 LED 介绍 .182.5 74LS154 介绍 .202.6 ULN2003 介绍 .20第三章 软件设计 .223.1 主程序 .223.2 读取时间的所有子程序 .223.3 显示刷新的子程序 .23第四章 调试过程以及数据分析 .
2、244.1 调试硬件 .244.2 调试软件 .244.3 调试 KEIL .244.4 调试试验箱 .25第五章 结论 .26参考 文献 .27致谢 .28附图 .29程序清单 .30单片机日历时钟开发摘 要本次设计采用了时钟日历芯片 DS12887,这芯片具备年、月、日、时、分、秒计时功能及多点定的时功能,计时数据的更新在于计算机汇编语言的驱动下每一秒自动进行一次,但是不需程序干预他的输出状态。此外,这芯片带有锂电池做备用电源,具备永久的计时功能和可编程方波输出功能,可用作实时测控系统的采样信号等。这种时钟芯片中还带有非易失性 RAM,可存放需长期保存但有可能需变更的数据。本次设计的 LE
3、D 数码管电子时钟电路采用 24 小时制记时方式,日期及时间用 16 位数码管显示。设计采用 AT98C51 单片机,使用5V 电源供电,并且在按键的作用下可以进入省电及正常显示两种状态。本次设计采用AT89C51单片机的扩展芯片和UNL2003芯片做为驱动,由多块LED数码管组成的显示系统,和传统8/16位普通单片机的LED显示系统相比较,本系统在不显著地增加成本的情况下,可带动更多的LED数码管稳定的显示。关键词:芯片;计时;驱动SCM Calendar Clock DevelopmentAbstractThis design uses a clock, this chip DS12887
4、 calendar chips with date and time, minutes and seconds timing function and much of DianDing when the update data, timer function of the computer assembly language is driven by automatically once every second, but does not need to program intervention his output state. In addition, the chip with lit
5、hium batteries do standby power, and have permanent timer function and programmable square wave output function, can be used for real-time sampling signal measurement and control system etc. This clock chip still contain non-volatile RAM, can deposit sex to long-term preservation but may need to cha
6、nge of data. This design LED digital tube electronic clock circuit uses 24-hour system date and time time-stamped way, with16digital tube display.Design uses AT98C51 microcontroller, use 5V power supply, and the role of the buttons can enter save electricity and normal showed the two state. This des
7、ign uses AT89C51 extension chip and UNL2003 chip as drive by chunks, LED digital display system, composed of tube and traditional 8/16 ordinary MCU LED display system, this system in compared to increase cost is not apparent, can bring more stable LED digital display of tube. Keywords: chip,timing,d
8、river 前 言单片机的芯片就像是一台计算机,由于单片机的集成度较高、体积微小、可靠性强、控制功能良好、低电压、功耗低等特点使其广泛应用于各种智能仪器仪表、机电一体化、实时程控、人们的生活中。除此之外还也广泛应用办公自动化、商业营销、汽车和通信系统、计算机外部设备等等,且单片机已经成为计算机发展及其应用很重要的一面。可见良好掌握单片机的使用方法及利用单片机来解决实际问题具有重要意义。本设计是用 AT89C51 单片机系统扩展的基本原理及方法再结合本设计的题目进行系统开发,通过单片机来驱动芯片 DS12887 进行年、月、日、时、分、秒显示,最后使用 74LS154 译码和 ULN2003 驱
9、动 LED 动态显示的方式来完成设计目标,文中带有电路图、程序清单以及数据储蓄单元的所处地址和输入输出口对应表格。第一章 概述1.1 简介随着电子技术飞速的发展,尤其是随着大规模的集成电路产生而出现的微型计算机,给人们的生活带来了极大的方便。走入家庭,从电视机、洗衣机到微波炉、汽车,到处都可以见到单片机的踪影。如果说微型计算机的出现促使现代科学研究得到了质的飞跃,那么就可以毫不夸张的说:“单片机的出现则是给现代工业测控领域带来了一次新工业革命”。现在的单片机以其可靠性高和智能性强等特点被广泛使用到工业控制、数据采集、智能化仪器仪表、办公自动化等领域中,并且已进入家庭,所以,单片机的开发和应用水
10、平逐步成为一个国家自动化发展水平重要的标志之一。1.2 单片机的发展史单片机是微型计算机的一个重要分支,也是一种非常活跃和颇具生命力的机种,特别适用于工业控制领域。1971 年微处理器研制成功不久,就出现了单片机,但最早的单片机是 1 位的,处理能力有限。单片机的发展共分四个阶段:第一阶段是初级阶段,功能非常简单;第二阶段是低性能阶段,以 INTEL 公司制造的 MSC-48 系列单片机为代表。第三阶段为高性能单片机阶段,这个阶段推出的单片机普遍带有穿行接口,多级中断系统,16 位定时器/计数器,片内 ROM、RAM 容量加大,直到现在仍被广泛应用,是目前应用数量较多的单片机。第四阶段是 8
11、位单片机巩固发展以及 16 位单片机、32 位单片机推出阶段,以满足不同的用户需要。纵观单片机几十年的发展历程,单片机的今后发展方向将向多功能、高性能、高速度、低功耗、低价格、外围电路内装化以及内存储器容量增加和 FLASH 存储器化方向发展。 1.3 时钟日历的特征DS12887 时钟芯片(RTC)可提供一个实时时钟、日历、三个可屏蔽中断 (共用一个中断输出) 、可编程方波输出和 114 字节的电池备份静态RAM。DS12887 在 24 引脚模块 DIP 封装内集成了晶体和锂电池。DS12887在地址 32h 内增加了世纪字节。对于少于 31 天的月份,所有器件的日期能够在月末自动调整,带
12、有闰年补偿。该器件可配置为 24 小时或 12 小时格式,带AM/PM 指示。精确的温度补偿电路用于监视的 VCC 状态。一旦检测到主电源失效,器件可自动切换到备用电源,在主电源掉电时还可以保持有效的时间和日期。该器件通过一个复用的字节宽度接口访问,支持 Intel 和 Motorola 模式,具有以下特点: 直接替代 IBM AT 计算机时钟/日历; RTC 可显示秒、分、时、日、月、年信息,具有润年补偿,有效期2099 年; 清除 RAM 功能; 具有 AM、PM 标示的 12 小时模式或 24 小时模式; 周期可设置在 122s 至 500ms; 可选择 Motorola 或 Intel
13、 总线时序; 接口配合软件可寻址 128 RAM; 14 字节时钟与控制寄存器; 114 字节通用、电池备份 RAM (DS12C887 和 DS12C887A 为 113 字节); 用二进制或 BCD 表示时间; 总线兼容的中断请求; 三路中断可分别通过软件屏蔽与检测; 可选择 28 引脚 PLCC 表面贴装封装; 时钟终止刷新周期标志; 夏时制选择; 可编程的方波输出信号;第二章 系统原理和硬件设计本次的设计题目是电子万年历设计,要求实现年、月、日、时、分、秒的正常显示,需要硬件和软件的结合来实现。本次设计利用时钟日历芯片DS12887的特性和AT89C51单片机的功能利用实现的。时钟芯片
14、在电源的作用下向通过P2口向 AT89C51单片机输入时间信号,AT89C51单片机在接受到时间信号后通过P0 将信号送到单片机另一扩展芯片 ULN2003,驱动LED数码管显示,同时将信号通过P1 口送往单片机的扩展芯片 74LS154,当送出第一个段码时,单片机输出的位码是0001,而经过416译码器74LS154后就是1111 1111 1111 1110,这时就选中了第一个数码管显示;当送出第十六个段码时,单片机输出的位码是1111,416译码器输出0111 1111 1111 1111,这时就选中了第十六个数码管显示,从而74LS154将接收到的地址信号译码后动态驱动相应的LED,由
15、于LED数码管的公共端由 74LS154分时选通,这样,这样任何一个时刻,都只有一位LED 在点亮,也即动态扫描显示方式。根据设计的要求万年历要显示年、月、日、时、分、秒的显示就需要16个显示数码管。根据设计要求,用按键来实现省电和正常显示的切换,当按键按下时进入省电模式,否则正常显示。在明确本次设计思路之后,画出设计框图,总体框图如图2.1所示。图 2.1 设计总体框图2.1 硬件的选择 时钟芯片选择 选用 DS12887 时钟芯片; 单片机的选择 选用 AT89C51 单片机,并配备 11.0592MHz 晶振,复位电路采用上电复位; 显示电路选择 采用软件译码动态显示,P3.0-P3.3
16、 作数码管的位选口。P1.0-P1.6 作数码管的段选口。考虑直接用单片机 I/O 口作位选时驱动功率不够,因此采用 UNL2003 作驱动,共阴极数码管显示; 电源选择 采用直流 5V 电源供电; 选择器的选择 采用 4 线16 线译码器 74LS154;2.2 AT89C51 单片机介绍(FPEROM Flash Programmable and Erasable Read Only Memory)的 8 位COMS 微控制器。使用高密度,非易失存储技术制造,并且与 AT89C51 引脚和指令系统完全兼容。芯片上的 FPEROM 允许在线编程或采用通用的非易失存储编程器对存储器重复编程。A
17、T89C51 单片机带有 2K 字节闪烁可编程可擦除只读存储器的单片机,其内部的可擦除只读存储器可以反复擦除 100 次。该器件采用 ATMEL 高密度非易失存储器制造技术制造,与工业标准的 MCS-51 指令集和输出管脚相兼容。由于将多功能 8 位 CPU 和闪烁存储器组合在单个芯片中,ATMEL 的 AT89C51单片机是一种高效微控制器,也为嵌入式控制系统提供了一种灵活性高且价廉的方案,这就显示出了 AT89C51 单片机的优越性。单片机的构成 AT89C51 单片机是在一块芯片中集成了CPU、 RAM、ROM、定时器/计数器和多种功能的 I/O 线等一台计算机所需要的基本功能部件,AT
18、89C51 单片机单片机内包含下列几个部件: 一个 8 位 CPU; 一个片内振荡器及时钟电路; 4K 字节 ROM 程序存储器; 128 字节 RAM 数据存储器; 两个 16 位定时器/计数器; 可寻址 64K 外部数据存储器和 64K 外部程序存储器空间的控制电路; 32 条可编程的 I/O 线(四个 8 位并行 I/O 端口) ; 一个可编程全双工串行口; 具有五个中断源、两个优先级嵌套中断结构;其内部机构框图如图 2.2 所示: 2.2 MCS-51 单片机内部机构框图AT89C51 单片机性能及特点: 与 MCS-51 微控制器产品系列兼容; 片内有 4KB 可在线重复编程的快闪擦写存储器( Flash Memory) ; 存储器可循环写入/擦除 1000 次; 全静态工作:可从 0HZ 到 16MHZ; 工作电压范围:VCC 可为 2.7V6V; 存储数据保存时间为 10 年; 程序存储器具有 3 级加密保护; 1288 位内部 RAM; 可编程全双工串行通道; 两个 16 位定时器/计数器; 中断结构具有 5 个中断源和 2 个优先级; 32 条可编程 I/O 线; 空闲状态维持低功耗和掉电状态保存存储内容;振荡器特性 XTAL1 和 XTAL2 分别为反向放大器的输入和输出,该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用,如采用外部时钟