教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 资格考试 >

用51单片机设计的时钟电路(毕业论文)

来源:网络收集 时间:2026-09-05
导读: 好东西哟,用吧 毕业论文 Shaoguan University 作者:kesion 目 录 任 务 书 摘 要 前 言 说 明 书 第 一章 电路原理分析 1-1 显示原理 1-2 数码管结构及代码显示 1-3 键盘及读数原理 1-4 连击功能的实现 第 二 章 程序设计思想和相关指令介绍 2-1 数据与代码

好东西哟,用吧

毕业论文

Shaoguan University

作者:kesion

目 录

任 务 书 摘 要 前 言 说 明 书

第 一章 电路原理分析

1-1 显示原理

1-2 数码管结构及代码显示 1-3 键盘及读数原理 1-4 连击功能的实现

第 二 章 程序设计思想和相关指令介绍

2-1 数据与代码转换

2-2 计时功能的实现与中断服务程序

2-3 时间控制功能与比较指令 2-4 时钟误差的分析

附录A 电路图

附录B 存储单元地址表

附录C 输入输出口功能分配表 附录D 定时中断程序流程图 附录F 调时功能流程图

附录G 程序清单

好东西哟,用吧

摘要

单片计算机即单片微型计算机。(Single-Chip Microcomputer ),是 集CPU ,RAM ,ROM ,定时,计数和多种接口于一体的微控制器。他体积小,成本低,功能强,广泛应用于智能产品和工业自动化上。而51单片机是各单片机中最为典型和最有代表性的一种。这次毕业设计通过对它的学习,应用,从而达到学习、设计、开发软、硬的能力。

前言

本文通过用对一个能实现定时,时钟,日历显示功能的时间系统的设计学习,详细介绍了 51单片机应用中的数据转换显示,数码管显示原理,动态扫描显示原理,单片机的定时中

断原理、从而达到学习,了解单片机相关指令在各方面的应用。系统由AT89C51、LED数码管、 按键、二极管等部分构成,能实现时钟日历的功能:能进行时、分、秒的显示。也具有日历计算、 显示和时钟,日历的校准、定时时间的设定,实现三路开关定时输出等功能。文章后附有电路图 ,程序清单,各数据存储单元的所在地址,输入输出口对应表。以供读者参考。因作者本人也是个 初学者,水平有限,难免有疏落不足之处,敬请老师和同学能给与批评正。

说明书

系统由AT89C51、LED数码管、按键、发光二极管等部分构成,能实现时间的调整、定时时间的设定,输出等功能。系统的功能选择由SB0、SB1、SB2、SB3、SB4完成。其中SB0为时间校对,定时器调整功能键,按SB 0进入调整状态。SB1为功能切换键。第一轮按动SB1依次进入一路、二路、三路定时时间设置提示程序,按SB3进入各路定时调整状态。定时时间到,二极管发亮。到了关断时间后灭掉。如果不进入继续按SB1键,依次进入时间¡年¡位校对、¡月¡位校对、 ¡日¡位校对、¡时¡位校对、¡分¡位校对、¡秒¡位校对状态。不管是进入那种状态,按动SB2皆可以使被调整位进行不进位增量加1变化。各预置量设置完成后,系统将所有的设置存入RAM中,按SB1退出调整状态。上电后,系统自动进入计时状态,起始于¡00¡时¡00¡分。SB4为年月日显示转换键,可使原来显示时分秒转换显示年月日。

二、电路原理分析

1. 显示原理

电原理图见附图1。由6个共阴极的数码管组成时、分、秒的显示。P0口的8条数据线P0.0 至P0.7 分别与两个CD4511译码的ABCD口相接,P2口的 P2.0至P2.2分别通过电阻R10至R13与VT1至VT3的基极相连接。这样通过P0 口送出一个存储单元的高位、低位BCD显示代码,通过P2口送出扫描选通代码轮流点亮LED1至LED6,就会将要显示的数据在数码管中显示出来。从P0口输出的代码是BCD码,从P2口输出的就是位选码。这是扫描显示原理。

2. 数码管结构及代码显示

好东西哟,用吧

共阴LED数码管结构、字段及引脚排列见图2 图2

共阴LED数码管由8只发光二极管VD1至VD8共阴连接并按¡8¡字形结构排列而成。这样,我们将这些二极管的正极接高低不同的电位,把所有的负极接地,当正极为高电位时相应的二极管就会导通而发光,从而使数码管呈现不同的字符。而只有P2相应呈现高电位,VT个管导通,LED1的GND与地相接,LED位被选中才具备发光的使能条件;可见,在利用P2口送出位选码,使各位轮流得到发光使能条件的同时,通过P0口分别送出不同的段选码,就会在LED1至LED4中显示出不同的数字来。

3 键盘及读数原理

键盘是人与微机打交道的主要设备,按键的读取容易引起误动作。可采用软件去抖动的方法处理,软件的触点在闭合和断开的时候会产生抖动,这时触点的逻辑电平是不稳定的,如不采取妥善处理的话,将引起按键命令错误或重复执行,在这里采用软件延时的方法来避开抖动,延时时间20ms.

4 连击功能的实现

按下某键时,对应的功能键解释程序得到执行,如操作者没有释放按键,则对应的功能会反复执行,好象连续执行,在这里我们采用软件延时250ms,当按键没释放则执行下一条对应程序。利用连击功能,能实现快速调时操作。

三、程序设计思想和相关指令介绍

本系统的主程序主要完成时间显示和定时输出判断功能。而年月日显示和各时间单元进位,时间设定时,调定时间设定时等功能全部在中断服务程序中完成。 1.数据与代码转换。

由前述可知,从P2口输出位选码,从P0口输出段选码,LED就会显示出数字来。但P0口的输出的数据是要BCD码,各存储单元存储的是二进制数,也就是和要显示出的字符表达的含义是不一致的。可见,将要显示的存储单元的数据直接送到P0口去驱动LED数码管显示是不能正确表达的,必须在系统内部将要显示的数据经过BCD码行转换后,将各个单元数据的段选代码送入P0口,给CD4511译码后去驱动数码管显示。

具体转换过程如下:

好东西哟,用吧

我们先将要显示的数据装入累加器A中,再将A中的数据转换成高低两位的BCD码,再放回A中,然后将A中的值输出。如:有一个单元存储了45这样一位数,则需转换成四位的BCD码:(0100)(0101)然后放入A中。 A中BCD码,高位四位代表¡4¡低四位代表¡5¡同时送给两个译码器中,译码后¡45¡字就在两个LED中显示出来。 2.计时功能的实现与中断服务程序

时间的运行依靠定时中断子程序对时钟单元数值进位调整来实现的。计数器T0打开后,进入计时,满100毫秒后,重装定时。中断一次,满一秒后秒进位,满60秒后即为1分钟,分钟单元进位,60分到了后,时单元进位,24小时满后,天单元进位。这样然后根据进率,得到年、月、日、时、分、秒存储单元的值,并经译码后,通过扫描程序送LED中显示出来,实现时钟计时功能。累加是用指令INC来实现的。

进入中断服务程序以后,执行PUSH PSW和PUSH A将程序状态寄存器PSW的内容和累加器A中的数据保存起来,这便是所谓的¡保护现场¡. 以保护现场和恢复现场时存取关键数据的存储区叫做堆栈。在软件的控制之下,堆栈可在片内RAM中的任一区间设定,而堆栈的数据存取与一般的RAM存取又有区别,对它的操作,要遵循¡后进先出¡的原则。 3 时钟误差分析

开启定时器/计数器0,使之开始计时,中断后进入中断程序。自停止计数到、计数又开始,中间执行了7条指令,也就是延迟了13个单周期共用时间26us,这样,每个中断的总时间应为为100.026sm,而原来定时是100ms,,所以,也就是说每次中断定时多了26um.这样,可改变计数重装值,使每次中断定时时间为99.974sm,加上原来的7条指令所用的时间,正好100sm.计数10次得1s.这样就可得到较精确的计时秒数,然后根据进率,得到时、分的值。

4 时间控制功能与比较指令

系统的另一功能就是实现对 …… 此处隐藏:3004字,全部文档内容请下载后查看。喜欢就下载吧 ……

用51单片机设计的时钟电路(毕业论文).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/91169.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)