AT8989C51单片机电子课程设计报告(更新中)

电子课程设计报告(3)实现秒表的三个控制键;开启计时键,暂停键和复位键用单片机设计一个计时范围在00.00致99.99的秒表,秒表精确在0.01秒秒表有三个控制键分别是;秒表计时开启键,计时暂停键和秒表复位键。这次课程设计中,我们做的是设计秒表计数器。

1.1 设计任务

(1)实现计时范围00.00-99.99秒表

(2)实现秒表精确到0.01秒

(3)实现秒表的三个控制键; 打开定时键、暂停键、复位键

1.2 设计要求

使用微控制器设计一个计时范围为 00.00 到 99.99 的秒表。 秒表精确到 0.01 秒。 秒表有三个控制键:秒表计时开始按钮、计时暂停按钮和秒表复位按钮。

2设计思路

2.1 硬件设计思路

建立一个最小单片机系统,在AT89C51单片机的P0口接一个74LS47(BCD-7段数码管译码器),在译码器的数字输出端接一个4位七段共阳极数码管,将P2.0引脚连接到第一个数码管选择器端子,P2.1引脚连接到第二个数码管选择器端子,P2.2引脚连接到第三个数码管选择器端子,P2.3引脚连接到第四个数码管选择器端子。 四位数字分别显示第二次的十位、个位、一位小数、两位小数。 片选控制端显示两位小数。 引脚P2.4 连接至小数点控制端子。

秒表控制键盘。 将P3.0连接到键盘的计时开始按钮,P3.1连接到键盘的计时暂停按钮,P3.2连接到键盘的计时重置按钮。

2.2 软件设计思路

该程序用汇编语言编写,有四个部分;

第一部分为主程序,用于初始化程序中断控制、数据等,以及控制秒表键盘的扫描。

时间生成程序的第二部分使用定时器/计数器0中断程序来生成时间。 使用该中断程序每隔10m进入一次。 使用四个寄存器R0、R1、R2和R3来存储时间中断的次数。 R3至R0分别是时间显示的高位和低位。 当这四个寄存器相加大于10时,该寄存器复位为零,存放显示时间高位的寄存器加一,以此类推,实现时间生成。

第三部分是4位七段共阳极数码管动态显示程序。 定时器/计数1中断程序用于每50ms扫描一次数码管。 它利用人类视觉暂留的特性来实现数码管的显示。

第四部分是动态扫描延时程序,用于动态扫描数码管时每个数码管扫描完毕后的延时程序。 达到同时显示四位数字时间的效果。

3电路原理及电路图

3.1 电路原理

采用AT89C51单片机作为控制电路,采用P1口作为数据输出口,P2口作为4位七段共阴极数码管的片选控制输出口,P3.0、P3.1、 P3.2为键盘接口。 。 时间显示由4位七段共阴极数码管组成。 采用74LS47作为数码管译码器。

3.2 电路原理图

AT8989C51单片机电子课程设计报告(更新中)

4 流程图及算法说明

4.1 流程图

AT8989C51单片机电子课程设计报告(更新中)

主程序流程图

AT8989C51单片机电子课程设计报告(更新中)

4.2 算法描述

6 仿真图

AT8989C51单片机电子课程设计报告(更新中)

7 设计总结

7.1 设计经验

课程设计最终顺利完成。 在这次课程设计中,我深刻地体会到了单片机在实践中的作用。 通过单片机的学习,在本次课程设计中,我明白了一件事情的完成必须夹杂着汗水,虽然有汗水,但更多的是完成后的喜悦。 总的来说,我在大学里做过一些课程设计。 这次的团队合作是最好的。 我们互相讨论问题,做出原本复杂的设计,在我们三个人的共同努力下,慢慢攻克了

在本次课程设计中,我们正在做的是设计一个秒表计数器。 这次课程设计的顺利进行有我的努力,但也离不开付莉老师答疑解惑的指导。通过本次课程设计工作的制作,我对单片机的理论有了更深入的了解。

7.2 问题与建议

通过这次课程设计,我发现了自己的不足,编程能力和耐力还有待提高,希望以后课程设计的题目能够更加贴近生活中的实际应用。

参考:

[1] 侯秉辉,沉林兴,彭鹏。 计算机信息管理专业(本科)毕业设计案例摘录[M]. 北京:清华大学出版社,2002.1:24-35,37。

[2] 吴俊良. PowerBuilder课程设计与系统开发案例[M]. 北京:清华大学出版社,2003.1:56-78。

[3]何红. 单片机原理与接口技术[M]. 北京:国防工业出版社,2006

[4]楼然淼,李光飞。 微控制器课程设计指导。 [M]. 北京:北京航空航天大学出版社。 2007年

[5]唐硕飞. 计算机组成原理。 [M]. 北京:高等教育出版社。 2007年

[6] 李光地. 单片机基础[M]. 北京:北京航空航天大学出版社,1994

[7] 严石. 数字电子技术基础(第三版)。 北京:高等教育出版社,1989

组织0000H

LJMP之星

组织000BH

LJMPINT0

组织001BH

激光扫描仪

;————————————————

起始位 P3.0

停止位 P3.1

剩余位 P3.2

;————————————————

奥格0100H

明星:塞贝亚

设定投注0

设定投注1

设置BTR1

MOVTMOD,#11H

MOVTH0,#216

MOVTL0,#239

MOVTH1,#60

MOVTL1,#176

MOVR0,#00H

MOVR1,#00H

MOVR2,#00H

MOVR3,#00H

MOVP3,#00H

MAIN:CLRSTART ;扫描键盘

JNBSTART,MA0; 判断是否开始计时

设置BTR0; 使能中断时序

MA0:清除停止

JNBSTOP,MA1; 判断是否暂停计时

CLTR0; 关闭-中断计时

MA1:CLREST

主布雷斯特; 判断是否重置

清除寄存器0

LJMP星

…………限于本文篇幅,剩余代码请到51black下载附件…………

复制代码

本设计的微控制器源代码可以从以下地址下载:

下载完整论文(可编辑word格式):

电子、课程

单片机

51单片机基础知识点总结,超实用!

2024-2-8 22:02:08

单片机

两款单片机STM3232FF103103ZETZET6407IG为主

2024-2-8 23:00:55

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索