简易秒表的制作完结.docx

上传人:b****3 文档编号:605312 上传时间:2022-10-11 格式:DOCX 页数:11 大小:202.29KB
下载 相关 举报
简易秒表的制作完结.docx_第1页
第1页 / 共11页
简易秒表的制作完结.docx_第2页
第2页 / 共11页
简易秒表的制作完结.docx_第3页
第3页 / 共11页
简易秒表的制作完结.docx_第4页
第4页 / 共11页
简易秒表的制作完结.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

简易秒表的制作完结.docx

《简易秒表的制作完结.docx》由会员分享,可在线阅读,更多相关《简易秒表的制作完结.docx(11页珍藏版)》请在冰豆网上搜索。

简易秒表的制作完结.docx

简易秒表的制作完结

课题设计论文

 

课题名称:

简易秒表的制作

 

班级:

P14电气2班

娟康盼红

学号:

10

指导教师:

红艳

 

2021年12月28日

 

一、设计任务与设计要求

1、设计任务

用8051单片机设计4位LED数码管显示“分值〞和“秒值〞。

2、设计要求

用8051单片机,采用动态扫描的方式,用4位LED数码管显示秒值,晶振采用6赫兹。

具体要求如下:

a.从右向左显示秒值的个位、十位,分值的各位和十位,个位能向十位进位。

b.上电后首先显示00.00,表示从00.00秒开场计时,当时间显示到59.59时,

4位显示都清零从头开场。

c.以三个独立式按键实现复位、启动、停顿。

二、设计方案

本设计分为时钟电路、复位电路、显示电路和单片机四大局部,这些模块中单片机占主控地位。

时钟电路常用的有部时钟方式和外部时钟方式,但因为本设计中只需要一片单片机,所以采用部时钟方式。

复位电路中的“复位〞按钮是按键手动复位,它有电平和脉冲两,种方式,本设计选择了按键电平复位电路,显示电路所用的数码管有共阴和共阳之分,不管使用何种数码管,P0口作为I/O使用时都是需要上拉电阻才能驱动数码管。

另外,因为单片机的4个并行I/O口的输出电流一般是1mA,短路电流为4mA左右,而数码管的最少驱动电流也需要10mA,因而不管在使用共阴数码管时,单片机输出口也必须使用上拉电阻提高输出电流,才能驱动数码管。

为了使电路简单化,本设计选用共阳数码管。

使用动态显示方式是将所有显示位的段码线的相应段并联在一起,由一个8位I/O口控制,而各位的共阴或共阴极分别由相应的I/O线控制,形成各位的分时选通。

根据硬件设计,由单片机的p2口控制位码输出,p0口控制段码输出。

动态显示程序中,在单片机部RAM中设置待显示数据缓冲区,由查表程序完成显示译码,将缓冲区待显示数据转换成相应的段码,再将段码通过8051的p0口输出:

位码数据由累加器循环左移指令产生,再通过p2口输出。

整体程序主要分为3局部:

主程序、显示子程序、和定时器中断程序。

主程序主要是初始化局部和不断调用动态显示子程序局部。

动态显示子程序完成4位LED的轮流位扫描,它被主程序不断调用,以保证稳定可靠的显示。

显示时间的刷新由定时器中断产生,定时器每秒50ms中断一次,当中断20次后〔即1s后〕,对时间单元〔秒计数单元、分计数单元〕进展更新,然后通过拆字子程序将时间单元里面的十六进制数拆开为两个BCD码,并送到显示缓冲区。

返回主程序后显示缓冲区的待显示数据被刷新一次,数码管相应的显示数值也就随之发生变化。

通过键盘扫描方式取得KE0、KE1、KE2的键值,用键盘的中断处理程序实现秒表的启动、停顿、复位。

三、主要硬件电路设计

1、单元电路设计

〔1〕时钟电路

注:

//单元电路设计中的网络标号的数字即为单片机的管脚//

时钟电路如下图,时钟电路的晶振频率越高,系统的时钟频率越高,单片机的运行速度也就越快。

晶振频率根据设计需要设为6MHz,又根据谐振性质,电路中的电容C1、C2选择为30pF左右。

该电容的的大小会影响振荡器频率的上下、振荡器的稳定性和起振的快速性。

〔2〕复位电路

复位电路如下图,单片机复位条件是,必须使RST\VPD或RST引脚9加上持续2个机器周期的高电平。

在本次设计中时钟频率为6MHz,每个机器周期为2us,那么需要4us以上时间的高电平,在RST引脚出现高电平后的第二个机器周期执行复位。

〔a〕为上电复位电路,它是利用电容充电来实现的。

在接电瞬间,RST端的电位与VCC一样,随着充电电流的减少,RST的电位逐渐下降。

只要保证RST为高电平的时间大于两个机器周期,便能正常复位。

〔b〕为按键复位电路,该电路除了具有上电复位功能外,假设要复位只需按图中的RESET键,此时电源VCC经电阻R1、R2分压,在RST端产生一个复位高电平。

〔3〕显示电路

4位LED显示的位码由单片机的P2口输出,段码由P0口输出,P2口线与LED之间接有500欧母限流电阻;LED为共阳极数码管,显示方式为动态显示方式;3个按键可以采用独立式键盘,其中两个按键分别连接到外部中断INT0、INT1,第3个按键连接到定时器1的T1端口,以中断方式实现键盘的扫描。

动态显示程序中,在单片机部RAM中设置待显示数据缓冲区,由查表程序完成显示译码,将缓冲区待显示数据转换成相应的段码,再将段码痛过8051的P0口输出;位码数据由累加器循环左移指令产生,再通过P2口输出。

 

2、电路元件介绍

51单片机的引脚图

8051微控制器属于MCS-51系列,自1980年开场由inter公司设计以来,由于其完善的指令集,在嵌入系统中占有很大的市场。

其资源包括8K的程序存储器,1K的数据存储器,两个16bit的计数控制器和四组八位的通用I\O口。

CPU构造:

8051部CPU是一个字长为二进制8位的中央处理单元,也就是他对数据的处理是按字节为单位进展的。

8051部CPU也是由运算器、控制器和专用存放器组三局部电路组成。

存储器:

标准8501单片机在物理上有4个存储空间:

片程序存储器和片外程序存储器、片数据存储器、片外数据存储器。

I\O输入、输出端口:

1、P0.0~P0.7P0口位双向口线〔在引脚的39—32号端子〕。

2、P1.0~P1.7P1口8位双向口线〔在引脚的1—8号端子〕。

3、P2.0~P2.7P2口8位双向口线〔在引脚的21—28号端子〕。

4、P3.0~P3.7P3口8位双向口线〔在引脚的10—17号端子〕

其中单片机的P3口有第二功能:

8051单片机P0、P1、P2、P3口介绍:

P0口:

P0口是一个8位漏极开路的双向I/O口。

作为输出口,每位能驱动8个TTL逻辑电平。

对P0端口写“1〞时,引脚用作高阻抗输入端用。

在访问外部数据存储器或程序存储器时,P0口被分时转换地址〔低8位〕和数据总线复用,在访问期间激活部上拉电阻。

P1口:

P1口是一个具有部上拉电阻的8位双向I/O口,P1输出缓冲器能驱动4个TTL逻辑电平。

对P1端口写“1〞时,部上拉电阻把端口拉高,此时可以作为输入口使用。

作为输入使用时,因为部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。

P2口:

P2是一个带有部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动〔吸收或输出电流〕4个TTL逻辑门电路。

对端口P2写“1〞,通过部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。

P3口:

P3口是一组带有部上拉电阻的8位双向I/O口。

P3口输出缓冲级可驱动〔吸收或输出电流〕4个TTL逻辑门电路。

对P3口写入“1〞时,它们被部上拉电阻拉高并可作为输入端口。

此时,被外部拉低的P3口将用上拉电阻输出电流。

RST——复位端:

当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。

数码管

数码管由8个发光二极管构成数码管又分为共阴极和共阳极二种构造。

共阳极数码管的8个发光二极管的阴极连接在一起,通常接高电平,其他管脚接段驱动电源输出端。

当某段驱动电源的输出端为低电平时,该端所连接的字段导通并点亮。

共阴极数码管的8个发光二极管的阴极连在一起,通常接低电平,其他管脚接段驱动电源输出端当某段驱动电路的输出端为高电平时,该端所连接的字段导通并点亮。

元件清单

元件名称

数量

备注

元件名称

数量

备注

数码管

4块

80c51

1块

按钮

3个

电容

2个

33pF

电阻

2个

电容

1个

100uF

晶振

1个

6MHz

四、主要软件电路设计

1、资源分配表

名称

地址分配

用途

初始化值

MSEC

20H

定时器50ms计数单元

14H

SECOND

21H

秒计数单元

00H

MIN

22H

分计数单元

00H

30H~35H

显示缓冲区

30H:

秒的个位31H秒的十位

32H:

分的个位33H分的十位

00H

40H以上

堆栈区

2、程序流程图

显示子程序流程图

主程序流程图

定时器中断子程序

源程序设计如下:

MSECEQU20H

SECONDEQU21H

MINEQU22H

ORG0000H

AJMPMAIN

ORG0003H

AJMPKE1

ORG000BH

AJMPCONT

ORG0013H

AJMPKE0

ORG001BH

AJMPKE2

MAIN:

MOVTMOD,#61H

MOVTH0,#9EH

MOVTL0,#58H

MOVTH1,#0FFH

MOVTL1,#0FFH

MOVSECOND,#00H

MOVMIN,#00H

MOVMSEC,#14H

MOVSP,#3FH

MOV30H,#00H

MOV31H,#00H

MOV32H,#00H

MOV33H,#00H

MOVIE,#8FH

SETBTR1

START:

LCALLDISP

SJMPSTART

 

DISP:

MOVR0,#30H

MOVR7,#00H

MOVR2,#04H

MOVR3,#08H

MOVA,R0

MOVP2,#0FFH

DISP1:

MOVDPTR,#TAB

MOVCA,A+DPTR

MOVP0,A

MOVA,R3

MOVP2,A

DJNZR7,$

DJNZR7,$

RRA

MOVR3,A

INCR0

MOVA,R0

DJNZR2,DISP1

RET

TAB:

DB0C0H,0F9H,0A4H,0B0H,99H

DB92H,82H,0F8H,80H,90H

CONT:

PUSHACC

MOVTH0,#9EH

MOVTL0,#58H

DJNZMSEC,RN

MOVMSEC,#14H

INCSECOND

MOVA,SECOND

MOVR1,#31H

LCALLBINBCD

MOVA,SECOND

CJNEA,#60,RN

MOVA,#00H

MOVSECOND,A

MOVR1,#31H

LCALLBINBCD

MOVA,MIN

CJNEA,#60,RN

MOVA,#00H

MOVMIN,A

MOVR1,#33H

LCALLBINBCD

RN:

POPACC

RETI

BINBCD:

MOVB,#10H

DIVAB

MOVR1,A

DECR1

MOVA,B

MOVR1,A

KE0:

SETBTR0

RETI

KE1:

CLRTR0

RETI

KE2:

MOVSEC,#00H

MOV30H,#00H

MOV31H,#00H

MOV32H,#00H

MOV33H#00H

RETI

END

五¡设计总结

首先,通过这次应用系统设计,在很大程度上提高了自己的独立思考能力和单片机的专业知识,也深刻了解写一篇应用系统的步骤和格式,有过这样的一次训练,相信在接下来的日子我们都会了,而且会做得更好。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 交通运输

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1