温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
2023
永城
职业技术学院
单片机
电子
时钟
设计
单片机技术课程设计报告
基于单片机AT89C5电子时钟的设计
专业:计算机应用技术101班
学生姓名:杜欣欣 霍慧雲 熊海涛 杨希彪
指导教师:郑艳
完成时间:2023年4月18日
19
永城职业学院单片机课程设计
目录
3
第一章绪论 4
1.1 WAVE的简单介绍 5
1.2 Protues简介 5
第二章 元器件介绍 6
2.1 AT89C51单片机的介绍 6
2.1.1主要特性 6
2.1.2管脚说明 7
第三章 电子时钟硬件设计 11
3.1 电子钟系统硬件组成 11
3.2电子钟硬件电路工作说明 11
3.3 Proteus进行电子钟系统仿真 12
第四章 电子时钟软件设计 13
4.1 软件程序 14
第五章 实验心得 18
第六章 致谢 18
近年来随着计算机在社会领域的渗透和大规模集成电路的开展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格廉价,工作可靠,使用方便等特点,因此特别适合于与控制有关的系统,越来越广泛地应用于自动控制,智能化仪器,仪表,数据采集,军工产品以及家用电器等各个领域,单片机往往是作为一个核心部件来使用,在根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。
单片机,是集CPU ,RAM ,ROM ,计数和多种接口于一体的微控制器。自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注。它体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易,广泛应用于智能生产和工业自动化上。
本课题通过AT89C51单片机来设计电子时钟,采用汇编语言进行编程,可以实现以下一些功能:小时,分,秒和年,月,日的显示、定时报警功能。本次设计的电子时钟系统由时钟电路,LCD显示电路,定时报警电路,按键调整电路四局部组成。51单片机通过软件编程,在LCD1602液晶屏上实现小时,分,秒和年,月,日的显示;利用时钟芯片DS1302来实现计时,定时功能;通过两个按键开关,一个用于时钟的调节,一个用于闹钟的调节,来实现参数设置和调节功能;到达设置的闹钟时间时,由蜂鸣器发声,起报警作用。本次设计的电子时钟,经过比照测试,发现实际计时的走时精度较高,可满足多种场合的应用需求。
本文详细介绍了AT89C51单片机的根本原理,分析了AT89C51各个管脚的功能及它在设计电路中的作用。本文论述了LCD1602液晶屏和时钟芯片DS1302的工作原理及其软件设计过程。还介绍了基于单片机的电子时钟的设计,详细讨论了它从软件上实现的过程,重点在时钟调整的方式:查询和中断的比拟,然后,对电子时钟的稳定性和精确性作了相关的讨论。在文章的最后,给出了采用中断方式实现的电子时钟的源程序。
关键词:单片机,电子时钟,时钟芯片
第一章绪论
数字电子时钟具有走时准确,一钟多用等特点,在生活中已经得到广泛的应用。虽然现在市场上已有现成的电子钟集成电路芯片,价格廉价、使用也方便,但是人们对电子产品的应用要求越来越高,数字钟不但可以显示当前的时间,而且可以显示期、农历、以及星期等,给人们的生活带来了方便。另外数字钟还具备秒表和闹钟的功能,且闹钟铃声可自选,使一款电子时钟具备了多媒体的色彩。单片机具有体积小、功能强可靠性高、价格低廉等一系列优点,不仅已成为工业测控领域普遍采用的智能化控制工具,而且已渗入到人们工作和生活的各个角落,有力地推动了各行业的技术改造和产品的更新换代,应用前景广阔。
时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的根底。在一个单片机应用系统中,时钟有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,即定时时钟,它通常有两种实现方法:一是用软件实现,即用单片机内部的可编程定时/计数器来实现,但误差很大,主要用在对时间精度要求不高的场合;二是用专门的时钟芯片实现,在对时间精度要求很高的情况下,通常采用这种方法,典型的时钟芯片有:DSI302,DSI2887,XI203等都可以满足高精度的要求。
AT89C51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。
AT89C51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128
bytes的随机存取数据存储器〔RAM〕,32个外部双向输入/输出〔I/O〕口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗〔WDT〕电路,片内时钟振荡器。此外,AT89C51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。
本文主要介绍用单片机内部的定时/计数器来实现电子时钟的方法,本设计由单片机AT89C51芯片和LED数码管为核心,辅以必要的电路,构成了一个单片机电子时钟。
1.1 WAVE的简单介绍
编辑、编译、下载、调试全部集中在一个环境下。
多钟仿真器,多类CPU仿真全部集成在一个环境下。可仿真51系列,196系列,PIC系列,飞利浦公司的552、LPC764、DALLAS320,华邦438等51增强型CPU。为了跟上形势,现在很多工程师需要面对和掌握不同和项目管理器、编辑器、编译器。他们由不同的厂家开发,相互不兼容,使用不同的界面。学习使用都很吃力。伟福WINDOWS调试软件为您提供了一个全集成环境,统一的界面,包含一个项目管理器,一个功能强大的编辑器,汇编Make、Build和调试工具并提供一个与第三方编译器的接口。
1.2 Protues简介
Protues ISIS是英国Labcenter公司开发,是目前世界上最先进、最完整的嵌入式系统设计与仿真平台,可以实现数字电路、模拟电路及微控制器系统与外设的混合电路系统的电路仿真、软件仿真、系统协同仿真和PCB设计等功能,是目前唯一能够对各种处理器进行实时仿真、调试与测试的EDA工具。微控制器系统相关的仿真需建立编译和调试环境,可选择Keil C51uVision2 软件。该软件支持众多不同公司的芯片,集编辑、编译和程序仿真等于一体,同
时还支持PLM、汇编和C语言的程序设计。它的界面友好易学,在调试程序、软件仿真方面有很强大的功能。 其革命性的功能是:将电路仿真和微处理器仿真进行协同,直接在基于原理图的虚拟原型上进行处理器编程调试,并进行功能验证,通过动态器件如电机、LED、LCD、开关等,实时看到运行后的输入、输出的效果,配合系统配置的虚拟仪器如示波器、逻辑分析仪等,Proteus为我们建立了完备的电子设计开发环境。
第二章 元器件介绍
2.1 AT89C51单片机的介绍
单片微型计算机简称单片机,是典型的嵌入式微控制器常用英文字母的缩写MCU表示单片机,它最早是被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器开展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的开展便分道扬镳。
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器〔FPEROM—Falsh Programmable and Erasable Read Only Memory〕的低电压,高性能CMOS8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除100次。由于将多功能8位CPU和闪烁存储器组合在单个芯片中, AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
2.1.1主要特性
l 4K字节可编程闪烁存储器
l 寿命;1000写/擦循环
l 数据保存时间:10年
l 全静态工作:0Hz-24MHz
l 三级程序存储器锁定
l 128x8位内部RAM
l 32可编程I/O线
l 两个16位定时器/计数器
l 5个中断源
l 可编程串行通道
l 低功耗的闲置和掉电模式
l 片内振荡器和时钟电路
2.1.2管脚说明
VCC:供电电压
GND:接地
RST:复位输入。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FLASH编程时,P0口作为原码输入口,当FLASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能存放器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制号。
P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输入电流〔ILL〕这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口:
P3.0 RXD(串行输入口)
P3.1 TXD(串行输出口)
P3.2 /INT0(外部中断0)
P3.3 /INT1(外部中断1)
P3.4 TO(计时器0外部输入)
P3.5 T1(计时器1外部输入)
P3.6 /WR(外部数据存储器写选通)
P3.7 /RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:地址锁存允许的输出电平用于锁存地址的地位字节。
/PSEN:外部程序存储器的选通信号。
/EA/VPP:当/EA保持低电平时,那么在此期间外部程序存储器〔0000H-FFFFH〕,不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:来自反向振荡器的输出。