基于单片机的秒表课程设计.docx

上传人:b****5 文档编号:3981333 上传时间:2022-11-26 格式:DOCX 页数:9 大小:54.48KB
下载 相关 举报
基于单片机的秒表课程设计.docx_第1页
第1页 / 共9页
基于单片机的秒表课程设计.docx_第2页
第2页 / 共9页
基于单片机的秒表课程设计.docx_第3页
第3页 / 共9页
基于单片机的秒表课程设计.docx_第4页
第4页 / 共9页
基于单片机的秒表课程设计.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

基于单片机的秒表课程设计.docx

《基于单片机的秒表课程设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的秒表课程设计.docx(9页珍藏版)》请在冰豆网上搜索。

基于单片机的秒表课程设计.docx

基于单片机的秒表课程设计

基于单片机的秒表课程设计

 

姓名:

班级:

学号:

专业:

指导老师:

 

年月日

 

目录

1、总体设计方案简介

1.1设计课程任务

1.2系统分析

1.3系统方案

1.4方案论证

2、硬件设计

2.1控制芯片的介绍

2.2硬件接线

2.2.1硬件接线接口

2.2.2硬件接线图

3、软件设计

3.1程序设计思路

3.2流程图

3.3源程序

3.4仿真结果

4、元件清单

5、心得体会

 

基于单片机的秒表课程设计

摘要

本设计的成品是在单片机最小系统的基础上增加显示电路和控制电路来完成数字式秒表的硬件电路的。

电子秒表电路主要由AT89S51单片机最小系统电路、七段数码管动态显示电路和控制电路组成,它能实现八段数码显示和计时,能通过控制电路控制时间的暂停和开始。

关键字:

AT89S51数码管最小系统

1总体设计方案简介

1.1设计课题任务

设计一个具有特定功能的数字式秒表。

用AT89C52设计一个2位LED数码显示“秒表”,显示时间为00-59,另设计一个“开始”按钮和一个“复位”按钮。

按键说明:

按“开始”按键,开始计数,数码管从00开始每秒自动加一;按“复位”按键,系统清零,数码管显示00。

1.2系统分析

设计的电路主要是能多次计时,计时的多少通过显示电路出来,设计框图如图所示;

1.3系统方案

利用AT89C52单片机设计数显定时器。

此方案采用AT89C52单片机系统来实现。

AT89C52芯片内含8KB的EEPROM,不需要外扩展存储器,可是系统整体结构更为简单。

设计框图如图所示;

1.4方案论证

此方案是以AT89C52芯片为中心控制系统,可实现计时、清零等功能,大大提高了系统的智能化,也是的系统所测结果精度大大提高。

所以此方案可行。

2硬件设计

2.1控制芯片的介绍

AT89S52是一种低功耗、高性能的片内含有4KB快闪可编程/擦除只读存储器,的8位CMOS微控制器,使用高密度、非易失存储技术制造,并与80S52引脚和指令系统完全兼容。

主要性能:

与MCS-51微控制器产品系列兼容。

片内有4KB可在线重复编程的快闪擦写存储器

存储数据保存时间为10年

宽工作电压范围:

VCC可为2.7V到6V

全静态工作:

可从0Hz至16MHz

程序存储器具有3级加密保护

128*8位内部RAB

32条可编程I/O线

两个16位定时器/计数器

中断结构具有5个中断源和2个优先级

可编程全双串行通道

空闲状态维持低功耗和掉电状态保存存储内容

2.2硬件接线

2.2.1硬件接线端口

时钟引脚:

XTAL1和XTAL2与内部的反相放大器构成一个振荡器,它提供单片机的时钟控制信号。

RST:

复位输入。

当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

P2口:

P2.6和P2.7端口分别控制数码管的十位和个位供电,当相应的端口变成低电平时,驱动相应的三极管会导通,+5V通过三极管给数码管相应的位供电,这是只要PO口送出数字的显示代码,数码管就能正常显示数字。

PO口:

PO.O-PO.6端口用排线连接到数码管显示模块区域中的A-G端口上;PO.O对应着A,......,PO.6对应着G。

P0.7接高电平。

P1.0接“开始”按键

2.2.2硬件接线图(见附录图)

3软件设计

3.1程序设计思路

在硬件的基础上,可以通过软件完成数字式秒表的设计。

我先用了矩阵键盘上的任意两个独立按键作为控制键。

用一个键去控制计时的开始;用一个键做计时的清零按键。

用按键扫描的方式判断按键是否按下。

用动态显示的方法扫描秒表的计数,显示所记下的数。

用中断的方法来进行计时加1,每10ms中断一次进行重新赋值并加1,当10ms单元达到10,就令该单元赋0,并让100ms单元加1,以此类推。

3.2流程图

1主程序流程图

 

3.3源程序

FIRSTEQUP2.7;第一位数码管的位控制

SECONDEQUP2.6;第二位数码管的位控制

SECEQU00H;1S到的标记

UALUEEQU21H;秒计数器

COUNTEQU22H;软件计数器

DISPBUF1EQU5EH;5EH是显示缓冲区

DISPBUF2EQU5FH;5EF是显示缓冲区

HIDDENEQU10;消隐码在字型码表的第10位

ORG0000H

LJMPSTART1

ORG000BH

LJMPINT_T0

ORG0100H

START1:

JBP1.0,START1

LJMPSTART

START:

MOVSP,#5FH;设置堆栈指针初值

MOVVALUE,#0;秒计数器

MOVCOUNT,#0;软件计数器

MOVDISPBUF1,#0;显示缓冲区填充0

MOVDISPBUF2,#0;显示缓冲区填充0

MOVTMOD,#01H

MOVTH0,#0ECH;取60536的高8位,60536=65536-10000*6/12定时器初值,定时时间10ms

MOVTL0,#98H;取60536的高8位,60536=65536-10000*6/12定时器初值,定时时间10ms

SETBET0;开T0中断

SETBTR0;定时器T0开始运行

CLRSEC

SETBEA;开总中断

LOOP:

JBCSEC,NEXT;1s到,消除1s到的标记

LCALLDISP;1s未到,调用显示程序

SJMPLOOP;继续循环

NEXT:

MOVA,VALVE;获得秒的数值

MOVB,#10

DIVAB;二进制转化为十进制,十位和个位分别送显示缓冲区

JZNEXT1;如果A中值是0,高位0消隐

SJMPNEXT2;否则直接送去显示

NEXT1:

MOVA,#HIDDEN

NEXT2:

MOVDISPBUF1,A

MOVDISPBUF2,B;个位送显示缓冲区

LCALLDISP

LJMPLOOP;主程序到此结束

DISP:

:

显示子程序

PUSHACC;ACC入栈

PUSHPSW;PSW入栈

MOVA,DISPBUF1;取第一个带显示数

MOVDPTR,#DISPTAB;字型表首地址

MOVCA,@A+DPTR;取字形码

MOVP0,A;将字型码送P0位

CLRFIRST;开第一位显示器口

LCALLDELAY;延时5MS

SETBFIRST;关闭第一位显示器(开始准备第二位的数字)

MOVA,DISPBUF2;去显示缓冲区的第二位

MOVDPTR,#DISPTAB

MOVCA,@A+DPTR

MOVP0,A;将第二个字型码送P0口

CLRSECOND;开第二位显示器

LCALLDELAY;延时

SETBSECOND;关第二位显示器

POPPSW

POPACC

RET;显示程序结束

DELAY:

;以下是延时程序

PUSHPSW;5ms延时程序

SETBRSO

MOVR7,#50

D1:

MOVR6,#50

D2:

DJNZR6,$

DJNZR7,D1

POPPSW

RET

DISPTAB:

DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH

;显示字型表,最后一个OFFH是消隐码,它是表中的第11位元素

INT_T0:

;定时中断处理

PUSHACC

PUSHPSW;中断保护

MOVTH0,#OECH

MOVTLH,#98H;定时计数器重置初值

INCCOUNT;软件计数器加一

MOVA,COUNT

CJNEA,#100,INT_RET

MOVCOUNT,#0;计到100,软件计数器清零

SETBSEC;将秒标志置位一

INCVALVE;秒的值加一

MOVA,VALVE

CJNEA,#60,INT_RET

MOVVALVE,#0

INT_RET:

POPPSW

POPACC

RETI

END

4元件清单

元件名

数量

AT89C52

1

八段数码管

2

NPN三极管

2

12M晶振

1

按键

2

330Ω电阻

9

200Ω电阻

1

无极性电容(30pf)

2

电解电容(10U/25V)

1

5心得体会

本文主要从硬件方面说明设计的总体思路和设计的实现过程,预期的设计目的是:

能够实现秒表的基本功能,正常显示计数。

在设计中有好多问题都是因为理论知识不扎实,在有些管脚的置零和置一上概念模糊,这让我知道自己的理论知识学习的不够扎实,同时我明白要把所学的理论转化为实践需要一段努力学习的过程。

最近几年,科学发展很快,通过本次课程设计让我有了更深的认识,只有在设计制作的过程中不断的学习才能有更新的进步,不论我们在什么地方、什么岗位上都要以学为主、学以致用,才能把我们的工作做得更好。

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

当前位置:首页 > 小学教育 > 数学

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

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