单片机课程设计秒表计时器.docx

上传人:b****9 文档编号:26083599 上传时间:2023-06-17 格式:DOCX 页数:18 大小:228.94KB
下载 相关 举报
单片机课程设计秒表计时器.docx_第1页
第1页 / 共18页
单片机课程设计秒表计时器.docx_第2页
第2页 / 共18页
单片机课程设计秒表计时器.docx_第3页
第3页 / 共18页
单片机课程设计秒表计时器.docx_第4页
第4页 / 共18页
单片机课程设计秒表计时器.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

单片机课程设计秒表计时器.docx

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

单片机课程设计秒表计时器.docx

单片机课程设计秒表计时器

课程设计名称:

单片机原理与接口技术

题目:

基于单片机的秒表计时器设计

 

学期:

2014-2015学年第一学期

专业:

电气技术

班级:

姓名:

学号:

指导教师:

 

辽宁工程技术大学

课程设计成绩评定表

学期

2014-2015

(一)

姓名

专业

电气技术

班级

课程名称

单片机原理与接口技术

论文题目

基于单片机的秒表计时器设计

评定指标

评定指标

分值

得分

知识创新性

20

理论正确性

20

内容难易性

15

结合实际性

10

知识掌握程度

15

书写规范性

10

工作量

10

总成绩

100

评语:

任课教师

时间

2014年1月10日

备注

课程设计任务书

一、设计题目

秒表计时器

二、设计任务

本课题以单片机为核心,设计和制作一个秒表计时器。

三、设计计划

课程设计一周

第1天:

查找资料,方案论证。

第2天:

各部分方案设计。

第3天:

各部分方案设计。

第4天:

撰写设计说明书。

第5天:

校订修改,上交说明书。

四、设计要求

1、绘制软件流程图并利用汇编语言编写软件程序;

2、绘制系统硬件原理图;

3、形成设计报告。

指导教师:

教研室主任:

2014年5月26日

摘要

本设计利用89C51单片机设计秒表计时器,通过LED显示秒十位和个位,在设计过程中用一个存储单元作为秒计数单元,当一秒到来时,就让秒计数单元加一,通过控制使单片机秒表计时,暂停,归零。

设计任务包括控制系统硬件设计和应用程序设计。

关键词:

51单片机;74HC573;LED数码管

综述………………………………………………………………………1

1程序方案………………………………………………………………2

1.1方案论证……………………………………………………………2

1.2总体方案……………………………………………………………2

2部分设计……………………………………………………………3

2.189C51单片机……………………………………………………3

2.2晶体振荡电路………………………………………………………4

2.3硬件复位电路………………………………………………………5

2.4显示电路……………………………………………………………6

2.5整体电路图…………………………………………………………7

3程序设计………………………………………………………………8

3.1程序流程框图………………………………………………………8

3.2显示程序流程图……………………………………………………9

3.3汇编源程序…………………………………………………………10

4调试说明……………………………………………………………13

4.1概述…………………………………………………………………13

4.2电路原理图…………………………………………………………13

心得体会………………………………………………………………15

参考文献………………………………………………………………16

综述

单片机是集CPU,RAM,ROM,定时,计数和多种接口于一体的微控制器。

他体积小,成本低,功能强,广泛应用于智能产品和工业自动化上。

而51单片机是各单片机中最位典型和最有代表性的一种。

中国使用单片机的历史只有短短的30年,在初始的短短五年时间里发展极为迅速。

纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以与我们生活中广泛使用的各种智能IC卡、电子宠物等,这些都离不开单片机。

本课题以单片机为核心,设计和制作一个秒表,开始时,显示“00”,第1次按下按钮后就开始计时;第2次按按钮后,计时停止;第3次按按钮后,计时归零。

根据设计要求设计出了符合要求的秒表计时器。

 

1程序方案

1.1方案论证

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

按钮电路中的“复位”按钮是按键手动复位,它有电平和脉冲两种方式,比较电路的复杂程度,本设计选择了按钮电平复位电路。

但根据显示方式的不同选择,我们可以有几种方案:

方案一:

使用静态显示方式。

静态显示方式下的数码管的显示字符一经确定,相应锁存器锁存的断码输出將维持不变,直到送入另一个字符的断码为止。

因而此设计中使用的显示位数使用了三个8位并行I/O口。

如果另外想扩展单片机功能,则能使用的输出管脚很是有限。

方案二:

使用动态显示方式。

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

这种显示方式,简化了硬件电路,特别在多位数码管显示时尤为突出。

1.2总体方案

由课程设计的要求和任务,采用的汇编语言编程,设计秒表要求一秒定时,采用了定时器T0和(存储单元NTA)扩展来定时,即用单片机内部的定时器T0。

先将时钟初始化,赋入初值25ms定时,循环40次来进行1秒定时。

然后由R3来进行加一运算,然后将其值通过P1(段显示),P2口(位显示)在数码管上进行显示时,在程序中首先定义一个关于数码管显示的字形码定义,以便在显示时调用即可。

编写秒表程序,使其通过I/O的输出在数码管上显示秒表的计时情况,通过I/O口的输入与中断程序级按键程序实现INT中断功能和控制秒表的“停”与“走”。

图1-1

2部分设计

2.189C51单片机

MCS—51系列单片机是8位单片机产品,89C51是其中的代表,基本模块包括以下几个部分:

(1)CPU:

89C51的CPU是8位的,另外的89C51内部有1个处理器

(2)ROM:

4KB的片内程序存储器,存放开发调试完成的应用程序

(3)I/O口:

P0—P3,共4个口32条内部中断,2个外部中断

(4)RAM:

256B的片内数据存储器,容量小,但作用大

(5)中断系统:

共5个中断源,3个内部中断,2个外部中断

(6)定时器/计数器:

2个16位的可编程计数器/定时器

(7)通用串口:

全双工通用异步接收器/发送器

(8)振荡器:

89C51的外接晶振与内部时钟振荡器位CPU提供时钟信号

(9)总线控制:

89C51对外提供若干控制总线,便于系统扩展。

 

AT89C51管脚图如下:

图2-1

2.2晶体振荡电路

89C51单片机内部的振荡电路是一个高增益反相放大器,引线XTAL1和XTAL2分别为反相振荡放大器的输入与内部时钟工作电路的输入和来自反相振荡器的输出,该反相放大器可以配置为片内振荡器。

这里选用51单片机的内部振荡方式,电路图如下:

C2,C3起稳定振荡频率,快速起振的作用。

其中晶振采用12兆赫兹的,一个机器周期是1微秒。

方便计算初值等。

图2-2

2.3硬件复位电路

图中P1.6接了控制按键,实现对秒表电路的控制。

图2-3

2.4显示电路

采用一个两位的LED数码管,LED是八段显示器,内部有7个条形发光二极管和1个小圆点发光二极管,根据各管的亮暗组成字符。

在用数码管显示时,有静态和动态两种选择,这里选用LED动态显示,用P0,P2,P2口位驱动显示,由于P0口没有上拉电阻,因此P0口需要外接上拉电阻才能输出高电平,这里使用8个240欧的电阻作为上拉电阻。

电路图如下:

位控端用74HC573来驱动

图2-4

 

2.5整体电路图

图2-5

 

3程序设计

3.1程序流程框图

图3-1

 

3.2显示程序流程图

图3-2

 

3.3汇编源程序

NTAEQU30H

NTBEQU31H

KEYEQU32H

BUTBITP1.6

FLAGBITP3.0

ORG00H

LJMPSTART

ORG0BH

LJMPINTT0

START:

MOVKEY,#00H

MOVR3,#00H

MOVP2,#10H

MOVA,R3

MOVB,#10

DIVAB

MOVDPTR,#TABLE

MOVCA,@A+DPTR

MOVP0,A

ACALLDELAY10MS

MOVA,B

MOVP2,#20H

MOVDPTR,#TABLE

MOVCA,@A+DPTR

MOVP0,A

MOVTMOD,#01H

SETBET0

SETBEA

WT:

JBBUT,DKN

JBFLAG,DKN

LCALLDELAY10MS

JBBUT,DKN

INCKEY

SETBFLAG

MOVA,KEY

CJNEA,#01,KN1

SETBTR0

MOVTH0,#9EH

MOVTL0,#58H

MOVNTA,#00H

MOVNTB,#00H

LJMPDKN

KN1:

CJNEA,#02H,KN2

CLRTR0

LJMPDKN

KN2:

CJNEA,#03H,DKN

MOVR3,#00H

MOVP2,#10H

MOVA,R3

MOVB,#10

DIVAB

DAA

MOVDPTR,#TABLE

MOVCA,@A+DPTR

MOVP0,A

ACALLDELAY10MS

MOVA,B

DAA

MOVP2,#20H

MOVDPTR,#TABLE

MOVCA,@A+DPTR

MOVP0,A

MOVKEY,#00H

DKN:

JBBUT,WT2

LJMPDONE

WT2:

CLRFLAG

LJMPDONE

DONE:

MOVP2,#10H

MOVA,R3

MOVB,#10

DIVAB

MOVDPTR,#TABLE

MOVCA,@A+DPTR

MOVP0,A

ACALLDELAY10MS

MOVA,B

MOVP2,#20H

MOVDPTR,#TABLE

MOVCA,@A+DPTR

MOVP0,A

ACALLDELAY10MS

LJMPWT

DELAY10MS:

MOVR6,#20

D1:

MOVR7,#20

DJNZR7,$

DJNZR6,D1

RET

INTT0:

MOVTH0,#9EH

MOVTL0,#58H

INCNTA

MOVA,NTA

CJNEA,#40,NEXT

MOVNTA,#00H

INCR3

MOVA,R3

CJNEA,#100,NEXT

MOVR3,#00H

NEXT:

RETI

TABLE:

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

END

 

4调试说明

4.1概述

上电开始时,显示“00”,第1次按下BUT(按键)后单片机秒表就开始计时。

第2次按BUT后,计时停止。

第3次按BUT后,计时归零。

4.2电路原理图

1)显示清零

图4-1

 

2)计数停止

图4-2

 

心得体会

在这次单片机课程设计中,我收获不少。

此次课程设计巩固了我的基础知识,提高了我的实际应用水平,锻炼了我的实际操作和动手能力,了解了51单片机的工作原理,学会使用有关仿真和汇编的软件;学会用软件调试与找出问题和解决问题;培养用多思维来思考解决问题。

合理运用所学知识培养动手实践能力。

然而,在这次设计中,我也发现了我许多的不足。

特别是在编程,仿真方面走了不少弯路。

功能扩展方面有阻碍。

但是,正因为这样让我更加勤奋的探索和专研,从而很多方面都已经有所提高,知识也掌握的更加全面。

在这次的课程设计中,我在数码管动态显示方面出现了一些阻碍,用汇编语言编程思维有点乱,导致写出来的程序仿真有些问题,后来通过查找资料和同学的帮助、老师的精心指导,我顺利完成了课程设计。

通过这次课程设计,我们获得了丰富的理论知识,极大地提高了实践能力,这将对我们以后的进一步学习这方面的知识有极大的帮助。

在以后的学习实践中,我将继续努力,完善自己,提高自己,更加严格要求自己,争取在学术上获得更大的进步。

同时我懂得在日常生活中增加知识储备的重要性,冰冻三次非一日之寒,好好积累知识,学以致用。

 

参考文献

[1]王迎旭.单片机原理与应用.机械工业出版社,2009

[2]张毅刚,彭喜元,彭宇.单片机原理与应用.高等教育出版社,2010

[3]楼然苗.51系列单片机设计实例.北京航空航天大学出版社,2009

[4]黄勤.计算机硬件技术基础实验教程.重庆大学出版社,2006

[5]刘乐善.微型计算机接口技术与应用.华中科技大学出版社,2001

[6]陈光东.单片微型计算机原理与接口技术.华中科技大学出版社,2011

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

当前位置:首页 > 表格模板 > 书信模板

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

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