多功能秒表系统设计文档格式.docx
- 文档编号:13655561
- 上传时间:2022-10-12
- 格式:DOCX
- 页数:19
- 大小:177.35KB
多功能秒表系统设计文档格式.docx
《多功能秒表系统设计文档格式.docx》由会员分享,可在线阅读,更多相关《多功能秒表系统设计文档格式.docx(19页珍藏版)》请在冰豆网上搜索。
任务完成
情况
(20分)
课程设计
报告质量
(40分)
表达情况
(10分)
回答问题
工作态度与纪律
独立工作
能力
得分
课程设计成绩评定
目录
1概述3
1.1单片机简介……………………………………………………………………3
1.2设计任务………………………………………………………………………3
1.3设计要求………………………………………………………………………3
2系统总体方案及硬件设计4
2.1、复位电路5
2.2、晶体振荡电路6
2.3、键盘电路6
2.4、显示电路7
3软件设计7
3.1、设计思想7
3.2、系统流程图8
3.3源程序代码及注解……………………………………………………10
4Proteus软件仿真15
5课程设计体会…………………………………………………………………………16
6参考文献………………………………………………………………………….17
附录1:
源程清单18
附录2:
系统原理图24
1概述
1.1单片机简介
单片机是性能价格比高、体积小、对国民经济渗透力大、最有前途的微控制器。
单片机自20世纪70年代初研制成功并发展至今,已进入第四代。
它主要是在一块芯片上集成了CPU、存储器以及输入输出电路,在工业过程中被广泛应用在控制电路中。
从单片机的系列来看,国内外已超过50个系列、近500个品种,当前正处于更新换代、百花齐放的时期。
新的系列和专用系列正在不断涌现。
按位数分类有4位、8位、16位以及32位单片机等,4位单片机由于价格低和出现的早得到了广泛的应用,特别是在家电应用领域中其还有很大的优势,为了抵御8位机的竞争,4位机在结构和功能上都有很大的改进。
8位机的生产厂家以及品种都很多,在实际的生产中应用也最为广泛,其中Intel公司的8051系列单片机在我国应用最为广泛,另外8位单片机也在其功能和内部结构上不断的进行改进,目前功能是越来越强大。
16位单片机在数据处理以及单片机的性能上有了很大的改进。
32位单片机是随着高科技产业的发展而产生的。
1.2设计任务:
设计一个单片机控制的多功能秒表系统,利用单片机的定时器/计数器定时和记数的原理,结合显示电路、用两位共阴极LED数码管以及按键来设计00~99秒计时器。
将软、硬件有机地结合起来,使得系统能够正确地进行加计时,同时数码管能够正确地显示时间。
1.3设计要求:
1、能同时记录四个相对独立的时间并分别显示。
2、两位LED动态显示,显示时间为00~99秒。
3、每秒自动加1。
4、一个开始按键、一个复位按键、一个暂停按钮和一个计录按钮(附加功能)。
5、翻页按钮查看四个不同的计时值。
2系统总体方案
本设计的最主要的元器件就是MCS-51单片机。
MCS-51单片机在一块芯片上集成了CPU,存储器RAM,ROM以及输入与输出接口电路,这种芯片习惯上被称为单片微型计算机,简称单片机。
MCS-51单片机是INTEL公司在1980年推出的高档8位单片机。
它的典型产品有:
8051,8031,8751,80C51,80C31,87C51。
AT89C51(图1)单片机由CPU,振荡器与时序电路,4个8位的I/O端口(P0,P1,P2,P3),串行口等组成。
P0口有三个功能:
1、外部扩展存储器时,当做数据总线(如图中的D0~D7为数据总线接口)。
2、外部扩展存储器时,当作地址总线(如图中的A0~A7为地址总线接口)。
3、不扩展时,可做一般的I/O使用,但内部无上拉电阻,作为输入或输出时应在外部接上拉电阻。
P1口只做I/O口使用:
其内部有上拉电阻。
P2口有两个功能:
1、扩展外部存储器时,当作地址总线使用;
2、做一般I/O口使用,其内部有上拉电阻;
P3口有两个功能:
除了作为I/O使用外(其内部有上拉电阻),还有一些特殊功能,由寄存器来设置。
ALE:
地址锁存控制信号
PSEN:
外部程序存储器读选通信号
EA/VPP:
访问和序存储器控制信号
RST:
复位信号XTAL1和XTAL2外接晶振引脚VCC:
电源+5V输入VSS:
GND接地。
图2:
整体设计框图
2.1复位电路:
采用上电加按钮复位。
这个系统中的复位电路是采用上电加按钮来实现的。
因为MCS-51单片机的复位是靠外部电路实现的。
MCS-51单片机工作之后,只要在他的RST引线上加载10ms以上的高点平,单片机就能有效地进行复位。
MCS-51单片机通常采用上电自动复位、按键复位、以及上电加按键复位等,我们采用的是上电加按键复位方式,这样做的优点是上电后可以直接进入复位状态,当程序出现错误时,可以随时使电路复位。
图3:
复位电路
2.2晶体振荡电路:
通过XTAL1和XTAL2外接晶体振荡器构成内部振荡方式。
由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。
MCS--51单片机内部的振荡电路是一个高增益反相放大器,引线XTAL1和XTAL2分别为反向振荡放大器的输入及内部时钟工作电路的输入和来自反向振荡器的输出,该反向放大器可以配置为片内振荡器。
图4:
晶振震荡电路
2.3键盘电路:
用部分P1口做开始开关,P1.0停止,P1.1复位,P1.3暂停记录,P1.4上翻,P1.5下翻,用外中断INT0开始,用软件法消除抖动。
图5:
键盘电路
2.4显示电路:
采用LED动态显示,用P2口驱动显示。
图6:
显示电路
3软件设计
3.1设计思想
因为秒表设计相对较为简单,因此在软件设计中我们一般采用模块化程序设计的方法。
模块是一个具有独立功能的程序,可以单独设计、调试与管理,模块可分为功能模块和控制模块两类。
我们通过模块化程序设计可按适当的原则把一个情况复杂、规模较大的程序系统划分为一个个较小的、功能相关而又相对独立的模块。
每个小的模块完成一个确定的功能,在这些小的模块之间建立必要的联系,互相协作完成整个程序要完成的功能。
它具有明显的优点,把一个多功能的复杂的程序划分为若干个简单的、功能单一的程序模块,有利于程序的设计和调试,有利于程序的优化和分工,提高了程序的阅读性和可靠性,使程序的结构层次一目了然。
其中的模块即为子程序,子程序是功能独立的程序段。
子程序的基本思想是编写一次,可以重复使用。
子程序的形式可以是一个程序文件,也可以是一个过程或函数。
子程序总被其他程序调用而不单独执行,这与主程序相对。
这个主程序也是由多个子程序模块组成,各程序模块都要完成一个明确的任务,实现某个具体的功能,、快加、复位,计数和显示等,在具体需要时调用相应的模块即可。
3.2、程序流程图:
定时器流程图
加1子程序流程图:
3.3程序代码及注解
(1):
主程序
MAIN:
MOVSP,#50H
MOVTMOD,#11H
MOVTH1,#0D8H;
定时10ms
MOVTL1,#0F0H
MOVTH0,#0CFH;
定时25ms
MOVTL0,#02CH
MOV20H,#00H;
BINSECOND
MOV30H,#00H;
SECOND
MOV31H,#00H
MOV40H,#40
MOV71H,#00H
MOV72H,#00H
MOV73H,#00H
MOV74H,#00H
MOVR2,#04H
MOVR3,#04H
MOVR1,#71H
SETBEA
SETBEX1
CLRET1
SETBET0
CLRPT0
CLRPT1
SETBPX1
SETBIT1
MOVP2,#0FFH
CLRTR0
CLRTR1
CLR7FH
判断是否有键按下,并确定是哪一个键,转移到相应的子程序的入口地址去执行子程序。
没有键按下则一直等待,直到有键按下。
ML1:
ACALLDISP;
调用显示程序
P1.0键按下时,计数停止
START:
JBP1.0,LOOP1
ACALLDELAY10;
延时
JBP1.0,LOOP1;
P1.0=1,跳转到LOOP1执行
JNBP1.0,$
LJMPSTOP;
P1.0=0,跳转到停止子程序
P1.1键按下时,数字清零复位
LOOP1:
JBP1.1,LOOP2
JBP1.1,LOOP2;
P1.1=1,跳转到LOOP2执行
JNBP1.1,$
LJMPRESET;
P1.1=0,跳转到复位子程序
P1.3键按下,暂停记录
LOOP2:
JBP1.3,LOOP3
ACALLDELAY10;
JBP1.3,LOOP3;
P1.3=1,跳转到LOOP3执行
JNBP1.3,$
LJMPJILU;
P1.3=0,跳转到暂停记录子程序
P1.4键按下时,执行上翻功能
LOOP3:
JBP1.4,LOOP4;
P1.4=0,SHANGFAN
ACALLDELAY10;
JBP1.4,LOOP4;
P1.4=1,跳转到LOOP4执行
JNBP1.4,$
LJMPXIAFAN;
P1.4=0,跳转到上翻子程序
P1.5键按下时,执行下翻功能
LOOP4:
JBP1.5,LOOP;
P1.5=0,XIAFAN
JBP1.5,LOOP;
P1.5=1,跳转到LOOP执行
JNBP1.5,$
LJMPSHANGFAN;
P1.5=0,跳转到下翻子程序
LOOP:
SJMPHERE
(2)停止子程序
软件对定时器0和定时器1的控制位清零,使定时器停止工作
STOP:
CLRTR0
CLRTR1;
关闭定时器0,1
ACALLDISP
(3)复位子程序
软件对显示的各内存单元清零,并回到开始前的初始状态,具体程序如下所示:
RESET:
CLRTR0
CLRTR1;
关闭定时器0,1
MOV20H,#00H
MOV30H,#00H
MOV31H,#00H
调用显示子程序
SJMPHERE
(4)按键消抖程序
DELAY10:
MOVR4,#14H
延时10ms再次判断该位的状态,若仍是0则说明该键被按下,弹起后去执行该按键功能;
若为1,则说明是抖动则继续向下判断。
例如下面的程序中就调用了这个子程序。
JBP1.3,LOOP3;
P1.3=0时,暂停记录
ACALLDELAY10
JBP1.3,LOOP3
JNBP1.3,$
LJMPJILU
4ISIS7Professionl软件仿真
利用Keil
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 多功能 秒表 系统 设计