找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2329|回复: 0
打印 上一主题 下一主题
收起左侧

单片机电子时钟课程设计论文

[复制链接]
跳转到指定楼层
楼主
ID:361925 发表于 2018-6-29 18:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
摘  要
近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,本设计中以单片机的发展过程和发展方向为背景,中断的工作原理和操作方法,以单片机(AT89C52)为核心,结合相关的元器件数码显示器,再配以相应的软件,使它具有时,分,秒显示的功能,并且时,分,秒还可以调整。此次设计电子数字钟是为了解电子数字钟的原理,通过Keil C51编译软件,再利用Proteus仿真软件仿真原理图使我们掌握用单片机制作数字钟.
关键词: AT89C52、Keil C51、Proteus
目    录
摘  要            
目    录            
一、设计目的与背景            
1.1 设计目的            
1.2 设计背景            
1.3 数字钟的意义            
二、设计内容及要求            
2.1 任务及要求            
2.2 系统功能说明            
三、整体设计方案            
3.1 单片机的基本介绍            
3.1.1 单片机的特点            
3.1.2 单片机的主要应用领域            
3.2 单片机的结构            
3.2.1 MCS-52单片机内部结构            
3.2.3 MCS-52的引脚说明            
3.3 硬件设计            
3.3.1 硬件设计的原则            
3.3.2 单片机的型号选择            
3.3.3 LED数码管            
3.3.4 按键控制电路            
3.4 软件设计            
3.4.1 软件程序设计            
3.4.2 定时中断程序设计            
四、电路设计和仿真实现            
4.1 电路设计原理:            
4.2 Proteus软件介绍            
4.3 Keil C调试环境介绍            
4.4电路连接图            
五、总结            
附录            
附录1 软件设计代码            
一、设计目的与背景
1.1 设计目的

(1)通过对课题设计方案的分析、选择、比较、熟悉单片机用系统开发、研制的过程,软硬件设计的方法、内容及步骤。

(2)培养针对课题需要,选择和查阅有关手册、图表及文献资料的自学能力,提高组成系统、编程、调试的动手能力;

(3)提高综合及灵活运用所学知识解决工业控制的能力,培养动手能力和实际应用能力。

1.2 设计背景

目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。下面是单片机的主要发展趋势。单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。

单片机模块中最常见的是数字钟,数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。

1.3 数字钟的意义

数字钟是采用数字电路实现对时、分、秒的数字显示计时装置,广泛用于个人家庭,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。

二、设计内容及要求
2.1 任务及要求

①通过单片机内定时器控制走时,准确持续走时,调时不影响走时。

②在八个数码管上显示时、分、秒及两个杠。

③含有闹钟功能,可以设定闹铃时间。

④到达闹钟时刻蜂鸣器警报。

2.2 系统功能说明

电子钟的格式为:XX-XX-XX ,由左向右分别为:时、分、秒。完成显示由秒01一直加1至59,再恢复为00;分加1,由00至01,一直加1至59,再恢复00;时加1,时由00加至23之后秒、分、时全部清零。

三、整体设计方案

本课题整体设计方案分为硬件设计和软件设计。

硬件电路设计主要是用单片机和LED显示屏连接组成,另外加入按键,开关,蜂鸣器等;软件编程设计室用C编程,Keil C51调试。

3.1 单片机的基本介绍

   单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。

通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件[1]:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。

3.1.1 单片机的特点

    单片机经过三代的发展,正朝着多功能、高性能、低电压、低功耗、低价格、大存储容量、强大的I/O功能及较好的结构兼容性方向发展。其发展趋势不外乎以下几个方面:

1、多功能   

    单片机中尽可能地把所需要的存储器和I/O口都集成在一块芯片上,使得单片机可以实现更多的功能。比如A/D、PWM、PCA(可编程计数器阵列)、WDT(监视定时器---看家狗)、高速I/O口及计数器的捕获/比较逻辑等。

    有的单片机针对某一个应用领域,集成了相关的控制设备,以减少应用系统的芯片数量。例如,有的芯片以51内核为核心,集成了USB控制器、SMART CARD接口、MP3解码器、CAN或者IC总线控制器等,LED、LCD或VFD显示驱动器也开始集成在8位单片机中。

2、高效率和高性能

    为了提高执行速度和执行效率,单片机开始使用RISC、流水线和DSP的设计技术,使单片机的性能有了明显的提高,表现为:单片机的时钟频率得到提高;同样频率的单片机运行效率也有了很大的提升;由于集成度的提高,单片机的寻址能力、片内ROM(FLASH)和RAM的容量都突破了以往的数量和限制。

    由于系统资源和系统复杂程度的增加,开始使用高级语言(如C语言)来开发单片机的程序。使用高级语言可以降低开发 难度,缩短开发周期,增强软件的可读性和可移植性,便于改进和扩充功能。

3、低电压和低功耗

    单片机的嵌入式应用决定了低电压和低功耗的特性。由于CMOS等工艺的大量采用,很多单片机可以在更低的电压下工作(1.2V或0.9V),功耗已经降低到uA级。这些特性使得单片机系统可以在更小电源的支持下工作更长的时间。

4、低价格

单片机应用面广,使用数量大,带来的直接好处就是成本的降低。目前世界各大公司为了提高竞争力,在提高单片机性能的同时,十分注意降低产品的价格。

3.1.2 单片机的主要应用领域
(1)家用电器领域

     用单片机控制系统取代传统的模拟和数字控制电路,使家用电器(如洗衣机、空调、冰箱、微波炉、和电视机等)功能更完善,更加智能化和易于使用。

(2)办公自动化领域

     单片机作为嵌入式系统广泛应用于现代办公设备,如计算机的键盘、磁盘驱动、打印机、复印机、电话机和传真机等。

(3)商业应用领域

     商业应用系统部分与家用和办公应用系统相似,但更加注重设备的稳定性、可靠性和安全性。商用系统中广泛使用的电子计量仪器、收款机、条形码阅读器、安全监测系统、空气调节系统和冷冻保鲜系统等,都采用了单片机构成的专用系统。与通用计算机相比,这些系统由于比较封闭,可以更有效地防止病毒和电磁干扰等,可靠性更高。

(4)工业自动化

     在工业控制和机电一体化控制系统中,除了采用工控计算机外,很多都是以单片机为核心的单片机和多机系统。

(5)智能仪表与集成智能传感器

     目前在各种电气测量仪表中普遍采用了单片机应用系统来代替传统的测量系统,使得测量系统具有存储、数据处理、查询及联网等智能功能。将单片机和传感器相结合,可以构成新一代的智能传感器。它将传感器变换后的物理量作进一步的变化和处理,使其成为数字信号,可以远距离传输并与计算机接口。

(6)现代交通与航空航天领域

  通常应用于电子综合显示系统、动力监控系统、自动驾驶系统、通信系统以及运行监视系统等。这些领域对体积、功耗、稳定性和实时性的要求往往比商用系统还要高,因此采用单片机系统更加重要。

3.2 单片机的结构
3.2.1 MCS-52单片机内部结构

  8052单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线。

1. 中央处理器[3]:

中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。

2.数据存储器(RAM)

8052内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。如图1

图1 单片机8052的内部结构

3.程序存储器(ROM):

8052共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。

4.定时/计数器:

8052有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。

5.并行输入输出(I/O)口:

8052共有4组8位I/O口(P0、 P1、P2或P3),用于对外部数据的传输。

6.全双工串行口:

8052内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。

7.中断系统:

8052具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。

8.时钟电路:

8052内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但8052单片机需外置振荡电容。

单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的结构,即普林斯顿(Princeton)结构。

Intel的MCS-52系列单片机采用的是哈佛结构的形式,而后续产品16位的MCS-96系列单片机则采用普林斯顿结构。

下图2是MCS-52系列单片机的内部结构示意图。

图2 MCS-52系列单片机的内部结构

3.2.3 MCS-52的引脚说明

MCS-52系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。现在我们对这些引脚的功能加以说明。如图3

     图3  单片机的引脚图

P0端口[P0.0-P0.7]:P0是一个8位漏极开路型双向I/O端口,端口置1(对端口写1)时作高阻抗输入端。作为输出口时能驱动8个TTL。

对内部Flash程序存储器编程时,接收指令字节;校验程序时输出指令字节,要求外接上拉电阻。

在访问外部程序和外部数据存储器时,P0口是分时转换的地址(低8位)/数据总线,访问期间内部的上拉电阻起作用。

P1端口[P1.0-P1.7]:P1是一个带有内部上拉电阻的8位双向I/0端口。输出时可驱动4个TTL。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。对内部Flash程序存储器编程时,接收低8位地址信息。

P2端口[P2.0-P2.7]:P2是一个带有内部上拉电阻的8位双向I/0端口。输出时可驱动4个TTL。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。对内部Flash程序存储器编程时,接收高8位地址和控制信息。

在访问外部程序和16位外部数据存储器时,P2口送出高8位地址。而在访问8位地址的外部数据存储器时其引脚上的内容在此期间不会改变。

P3端口[P3.0—P3.7]:是一个带有内部上拉电阻的8位双向I/0端口。输出时可驱动4个TTL。端口置1时,内部上拉电阻将端口拉到高电平,作输入用。

对内部Flash程序存储器编程时,接控制信息。除此之外P3端口还用于一些专门功能,见表1。

P3引脚

兼用功能

P3.0

串行通讯输入(RXD)

P3.1

串行通讯输出(TXD)

P3.2

外部中断0( INT0)

P3.3

外部中断1(INT1)

P3.4

定时器0输入(T0)

P3.5

定时器1输入(T1)

P3.6

外部数据存储器写选通WR

P3.7

外部数据存储器写选通RD


表1 P3端口引脚兼用功能表

Pin 9: RESET复位信号复用脚,当8052通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位。初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,堆栈指针写入07H,其它专用寄存器被清“0”。RESET由高电平下降为低电平后,系统即从0000H地址开始执行程序。然而,初始复位不改变RAM(包括工作寄存器R0-R7)的状态,8052的初始态。

Pin30: ALE/当访问外部程序器时,ALE(地址锁存)的输出用于锁存地址的低位字节。而访问内部程序存储器时,ALE端将有一个1/6时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出。更有一个特点,当访问外部程序存储器,ALE会跳过一个脉冲。  

对Flash 存储器编程期间,该引脚还用于输入编程脉冲 (PROG)。

如有必要,可通过对特殊功能寄存器(SFR)区中的8EH 单元的D0 位置位,可禁止ALE 操作。该位置位后,只有一 条MOVX 和MOVC 指令才能将ALE 激活。此外,该引脚会被微 拉高,单片机执行外部程序时,应设置ALE 禁止位无效。

Pin29: 当访问外部程序存储器时,此脚输出负脉冲选通信号,PC的16位地址数据将出现在P0和P2口上,外部程序存储器则把指令数据放到P0口上,由CPU读入并执行。

Pin31: EA/Vpp程序存储器的内外部选通线,8051和8751单片机,内置有4kB的程序存储器,当EA为高电平并且程序地址小于4kB时,读取内部程序存储器指令数据,而超过4kB地址则读取外部指令数据。如EA为低电平,则不管地址大小,一律读取外部程序存储器指令。显然,对内部无程序存储器的8031,EA端必须接地。

3.3 硬件设计3.3.1 硬件设计的原则

在性价比满足应用系统要求的情况下,选择更可靠,更熟悉的单片机缩短研制周期。尽可能选择自己较为熟悉的应用电路,以提高系统的可靠性。

单片机内部的资源与外部的扩展资源应在满足系统设计的基础上留有余地,为进一步的升级和扩展提供方便。

应充分的结合软件方案考虑硬件的结构,通常硬件功能较完善,其相应的软件程序就简单,但硬件的成本较高,而功能较低,其相应的软件就复杂,其实际常用软件代替硬件来降低成本。

整个系统相关的器件尽可能的做到性能相匹配。

3.3.2 单片机的型号选择

目前,我国生产很多型号的单片机,在此,我们采用型号为AT89C52的单片机。因为AT89C52是一个低电压,高性能CMOS 8位单片机,片内含4k bytes的可反复擦写的Flash只读程序存储器和128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-52指令系统,片内置通用8位中央处理器和Flash存储单元,内置功能强大的微型计算机的AT89C52提供了高性价比的解决方案。

AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,但不可以在线编程(S系列的才支持在线编程)。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。

AT89C52主要功能特性:

· 兼容MCS51指令系统             · 8k可反复擦写(>1000次)Flash ROM

· 32个双向I/O口                 · 256x8bit内部RAM

· 3个16位可编程定时/计数器中断 · 时钟频率0-24MHz

· 2个串行中断                    · 可编程UART串行通道

· 2个外部中断源                  · 共8个中断源

· 2个读写中断口线                · 3级加密位

· 低功耗空闲和掉电模式            · 软件设置睡眠和唤醒功能

3.3.3 LED数码管

LED数码管是显示常用电子元器件,它是由发光二极管构成的,亦称半导体数码管。将条状发光二极管按照共阴极(负极)或共阳极(正极)的方法连接,组成“8”字,再把发光二极管另一电极作笔段电极,就构成了LED数码管。

下面将介绍它的性能特点:

(1)能在低电压、小电流条件下驱动发光,能与CMOS、ITL电路兼容。

(2)发光响应时间极短(<0.1μs),高频特性好,单色性好,亮度高。

(3)体积小,重量轻,抗冲击性能好。

(4)成本低,寿命长,使用寿命在10万小时以上,甚至可达100万小时。

首先介绍一下七段数码管的引脚图,如图4。
图4 七段数码管引脚图

数码管使用条件:

A、段及小数点上加限流电阻。

B、使用电压:段:根据发光颜色决定; 小数点:根据发光颜色决定。

C、使用电流:静态:总电流 80mA(每段 10mA);

动态:平均电流 4-5mA 峰值电流100mA。

LED数码管根据LED的接法不同分为共阴和共阳两类,了解LED的这些特性,对编程是很重要的,因为不同类型的数码管,除了它们的硬件电路有差异外,编程方法也是不同的。如图5

         

A、共阴极七段数码管              B、共阳极七段数码管

图5

将多只LED的阴极连在一起即为共阴式,而将多只LED的阳极连在一起即为共阳式。以共阴式为例,如把阴极接地,在相应段的阳极接上正电源,该段即会发光。当然,LED的电流通常较小,一般均需在回路中接上限流电阻。假如我们将"b"和"c"段接上正电源,其它端接地或悬空,那么"b"和"c"段发光,此时,数码管显示将显示数字“1”。而将"a"、"b"、"d"、"e"和"g"段都接上正电源,其它引脚悬空,此时数码管将显示“2”。其它字符的显示原理类同。

对于多位LED显示器,通常都是采用动态扫描的方法进行显示。

3.3.4 按键控制电路

当用手按下一个键时,如图6所示,往往按键在闭合位置和断开位置之间跳几下才稳定到闭合状态的情况;在释放一个键时,也回会出现类似的情况,这就是抖动。这是使用按键控制不可避免的问题。

抖动的持续时间随键盘材料和操作员而异,不过通常总是不大于10ms。很容易想到,抖动问题不解决就会引起对闭合键的识别。用软件方法可以解决抖动问题,这就是通过延迟10ms来等待抖动消失,这之后,在读入按键码。

图 6

3.4 软件设计3.4.1 软件程序设计

   本设计的软件程序包括主程序、定时中断子程序、时钟显示子程序和延时子程序等等。

主程序是先开始执行的,然后启动定时器,定时器启动后在进行按键检测,检测完后,就可以显示时间。

按键处理是先检测秒按键是否按下,分按键如果按下,分就加1,如果没有按下,就检测时按键是否按下;时按键如果按下,时就加1,如果没有按下,就把时间显示出来。

定时器中断是先检测1秒是否到,1秒如果到,秒单元就加1;如果没到,就检测1分钟是否到,1分钟如果到,分单元就加1;如果没到,就检测1小时是否到,1小时如果到,时单元就加1,如果没到,就显示时间。

时间显示是先秒个位计算显示,然后是秒十位计算显示,再是分个位计算显示,再然后是分十位显示,再就是时个位计算显示,最后是时十位显示。

主程序流程图,如图6

图6   源程序流程图

3.4.2 定时中断程序设计

单片机的定时功能也是通过计数器的计数来实现的,此时的计数脉冲来自单片机的内部,即每个机器周期产生一个计数脉冲,也就是每经过1个机器周期的时间,计数器加1。

如果89C52采用的12MHz晶体,则计数频率为1MHz,即每过1us的时间计数器加1。这样可以根据计数值计算出定时时间,也可以根据定时时间的要求计算出计数器的初值。89C52单片机的定时器/计数器具有4种工作方式,其控制字均在相应的特殊功能寄存器中,通过对特殊功能寄存器的编程,可以方便的选择定时器/计数器两种工作模式和4种工作方式。

定时器/计数器工作在方式0时,为13位的计数器,由TLX(X=0、1)的低5位和THX的高8位所构成。TLX低5位溢出则向THX进位,THX计数溢出则置位TCON中的溢出标志位TFX.

当定时器/计数器工作于方式1,为16位的计数器。本设计师单片机多功能定时器,所以MCS-51内部的定时器/计数器被选定为定时器工作模式,计数输入信号是内部时钟脉冲,每个机器周期产生一个脉冲使计数器增1。

四、电路设计和仿真实现4.1 电路设计原理:

1. 将整个硬件系统划分为若干功能单元电路,绘出整个系统逻辑电路图,注明各交单元电路间接口信号 ;

2. 完成各单元电路设计,包括选择合适的各类元器件和电路板设计(元件布局和走线)。

3.整个硬件图由七段数码管、89C52单片机、按键、电容、电解电容、石英晶振、电阻、排阻、和蜂鸣器组成。

4.2 Proteus软件介绍

Proteus软件是Labcenter Electronics公司的一款电路设计与仿真软件,它包括ISIS、ARES等软件模块,ARES模块主要用来完成PCB的设计,而ISIS模块用来完成电路原理图的布图与仿真。Proteus的软件仿真基于VSM技术,它与其他软件最大的不同也是最大的优势就在于它能仿真大量的单片机芯片,比如MCS-51系列、PIC系列等等,以及单片机外围电路,比如键盘、LED、LCD等等。通过Proteus软件的使用我们能够轻易地获得一个功能齐全、实用方便的单片机实验室。

4.3 Keil C调试环境介绍

Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻

4.4电路连接图
Proteus仿真和Keil C联调
用PROTUES软件,根据数字电子钟的原理图,画出仿真图,得到的图如下所示。

图7 电路连接图
五、总结

从任务要求出发,分析如何实现功能,通过这次课程设计使我对单片机有了深入的认识,特别是对定时中断方式有了直观的认识,设计数字钟我们用单片机内部定时\计数器,通过设置定时器产生精确的定时中断,达到计时的目的。

这个数字钟还可以进一步的加入功能,在以后的设计中,逐渐增加其他的功能,比如说加温度检测,加秒表和显示日期和星期等来进一步完善这个电子钟。



附录2 Proteus仿真图

完整的Word格式文档51黑下载地址:



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表