基于单片机的多功能秒表控制系统设计—大学毕业论文毕业设计学位论文范文模板参考资料.doc

上传人:e****s 文档编号:62323118 上传时间:2022-11-22 格式:DOC 页数:23 大小:268KB
返回 下载 相关 举报
基于单片机的多功能秒表控制系统设计—大学毕业论文毕业设计学位论文范文模板参考资料.doc_第1页
第1页 / 共23页
基于单片机的多功能秒表控制系统设计—大学毕业论文毕业设计学位论文范文模板参考资料.doc_第2页
第2页 / 共23页
点击查看更多>>
资源描述

《基于单片机的多功能秒表控制系统设计—大学毕业论文毕业设计学位论文范文模板参考资料.doc》由会员分享,可在线阅读,更多相关《基于单片机的多功能秒表控制系统设计—大学毕业论文毕业设计学位论文范文模板参考资料.doc(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、目录1 概述311单片机简介312设计任务3 13设计要求32 系统总体方案及硬件设计421、复位电路522、晶体振荡电路623、键盘电路624、显示电路73 软件设计731、设计思想732、系统流程图83.3源程序代码及注解 104 Proteus软件仿真155 课程设计体会 166 参考文献 .17附录1:源程清单18附录2:系统原理图241 概述11单片机简介单片机是性能价格比高、体积小、对国民经济渗透力大、最有前途的微控制器。单片机自20世纪70年代初研制成功并开展至今,已进入第四代。它主要是在一块芯片上集成了CPU、存储器以及输入输出电路,在工业过程中被广泛应用在控制电路中。从单片机

2、的系列来看,国内外已超过50个系列、近500个品种,当前正处于更新换代、百花齐放的时期。新的系列和专用系列正在不断涌现。按位数分类有4位、8位、16位以及32位单片机等,4位单片机由于价格低和出现的早得到了广泛的应用,特别是在家电应用领域中其还有很大的优势,为了抵御8位机的竞争,4位机在结构和功能上都有很大的改良。8位机的生产厂家以及品种都很多,在实际的生产中应用也最为广泛,其中Intel公司的8051系列单片机在我国应用最为广泛,另外8位单片机也在其功能和内部结构上不断的进行改良,目前功能是越来越强大。16位单片机在数据处理以及单片机的性能上有了很大的改良。32位单片机是随着高科技产业的开展

3、而产生的。12设计任务:设计一个单片机控制的多功能秒表系统,利用单片机的定时器/计数器定时和记数的原理,结合显示电路、用两位共阴极LED数码管以及按键来设计0099秒计时器。将软、硬件有机地结合起来,使得系统能够正确地进行加计时,同时数码管能够正确地显示时间。13设计要求:1、能同时记录四个相对独立的时间并分别显示 。 2、两位LED动态显示,显示时间为0099秒。 3、每秒自动加1。 4、一个开始按键、一个复位按键、一个暂停按钮和一个计录按钮附加功能。 5、翻页按钮查看四个不同的计时值 。2 系统总体方案本设计的最主要的元器件就是MCS51单片机。MCS51单片机在一块芯片上集成了CPU,存

4、储器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、外部扩展存储器时,当做数据总线如图中的D0D7为数据总线接口。2、外部扩展存储器时,当作地址总线如图中的A0A7为地址总线接口。3、不扩展时,可做一般的I/O使用,但内部无上拉电阻,作为输入或输出时应在外部接上拉电阻。P1口只

5、做I/O口使用:其内部有上拉电阻。P2口有两个功能:1、扩展外部存储器时,当作地址总线使用;2、做一般I/O口使用,其内部有上拉电阻;P3口有两个功能:除了作为I/O使用外其内部有上拉电阻,还有一些特殊功能,由存放器来设置。ALE:地址锁存控制信号PSEN:外部程序存储器读选通信号EA/VPP:访问和序存储器控制信号RST:复位信号XTAL1和XTAL2 外接晶振引脚VCC:电源+5V输入VSS:GND接地。AT89C51单片机 P2口P1口键盘控 制电 路晶振电 路复位电 路两位一体数码管图2:整体设计框图21 复位电路:采用上电加按钮复位。这个系统中的复位电路是采用上电加按钮来实现的。因为

6、MCS-51单片机的复位是靠外部电路实现的。MCS-51单片机工作之后,只要在他的RST引线上加载10ms以上的高点平,单片机就能有效地进行复位。MCS-51单片机通常采用上电自动复位、按键复位、以及上电加按键复位等,我们采用的是上电加按键复位方式,这样做的优点是上电后可以直接进入复位状态,当程序出现错误时,可以随时使电路复位。图3:复位电路22晶体振荡电路: 通过XTAL1和XTAL2外接晶体振荡器构成内部振荡方式。由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。MCS-51单片机内部的振荡电路是一个高增益反相放大器,引线 XTAL1和XTAL2分别

7、为 反向振荡放大器的输入及内部时钟工作电路的输入和来自反向振荡器的输出,该反向放大器可以配置为片内振荡器。图4:晶振震荡电路23键盘电路:用局部P1口做开始开关,P1.0停止,P1.1复位,P1.3暂停记录,P1.4上翻,P1.5下翻,用外中断INT0开始,用软件法消除抖动。图5:键盘电路24显示电路:采用LED动态显示,用P2口驱动显示。 图6:显示电路3 软件设计31 设计思想因为秒表设计相对较为简单,因此在软件设计中我们一般采用模块化程序设计的方法。模块是一个具有独立功能的程序,可以单独设计、调试与管理,模块可分为功能模块和控制模块两类。我们通过模块化程序设计可按适当的原那么把一个情况复

8、杂、规模较大的程序系统划分为一个个较小的、功能相关而又相对独立的模块。每个小的模块完成一个确定的功能,在这些小的模块之间建立必要的联系,互相协作完成整个程序要完成的功能。它具有明显的优点,把一个多功能的复杂的程序划分为假设干个简单的、功能单一的程序模块,有利于程序的设计和调试,有利于程序的优化和分工,提高了程序的阅读性和可靠性,使程序的结构层次一目了然。其中的模块即为子程序,子程序是功能独立的程序段。子程序的根本思想是编写一次,可以重复使用。子程序的形式可以是一个程序文件,也可以是一个过程或函数。子程序总被其他程序调用而不单独执行,这与主程序相对。开始 初始化P1.0=0?P1.1=0?P1.

9、3=0?P1.4=0?P1.5=0?停止复位下翻上翻够4个?P1.0=0?N暂停记录NNNNNN这个主程序也是由多个子程序模块组成,各程序模块都要完成一个明确的任务,实现某个具体的功能,、快加、复位,计数和显示等,在具体需要时调用相应的模块即可。3.2、程序流程图:定时器流程图压栈保护赋定时初值到1秒?调用加1程序调用显示程序中断返回Y加1子程序流程图:20H A进位清零做加法到100?20H清零个位十位分开返回Y1:主程序MAIN: MOV SP, #50H MOV TMOD, #11H MOV TH1,#0D8H ;定时10ms MOVTL1, #0F0H MOV TH0,#0CFH ;定

10、时25ms MOVTL0, #02CH MOV 20H,#00H ;BIN SECOND MOV 30H,#00H ; SECOND MOV31H, #00H MOV40H, #40 MOV 71H, #00H MOV 72H, #00H MOV 73H, #00H MOV 74H, #00H MOV R2, #04H MOV R3, #04H MOV R1, #71H SETB EA SETB EX1 CLR ET1 SETB ET0 CLR PT0 CLR PT1 SETB PX1 SETB IT1 MOVP2, #0FFH CLRTR0 CLRTR1 CLR 7FH判断是否有键按下,并确

11、定是哪一个键,转移到相应的子程序的入口地址去执行子程序。没有键按下那么一直等待,直到有键按下。ML1:ACALLDISP ;调用显示程序P1.0键按下时,计数停止START: JB P1.0, LOOP1 ACALL DELAY10 ;延时JB P1.0, LOOP1 ;P1.0=1,跳转到LOOP1执行JNB P1.0, $LJMP STOP ;P1.0=0,跳转到停止子程序P1.1键按下时,数字清零复位LOOP1: JB P1.1, LOOP2 ACALL DELAY10 ;延时JB P1.1, LOOP2 ;P1.1=1,跳转到LOOP2执行JNB P1.1, $LJMP RESET ;

12、P1.1=0,跳转到复位子程序 P1.3键按下,暂停记录LOOP2: JB P1.3,LOOP3 ACALL DELAY10 ;延时 JB P1.3, LOOP3 ;P1.3=1,跳转到LOOP3执行JNB P1.3, $ LJMP JILU ;P1.3=0,跳转到暂停记录子程序P1.4键按下时,执行上翻功能LOOP3: JB P1.4,LOOP4 ;P1.4=0,SHANGFAN ACALL DELAY10 ;延时 JB P1.4, LOOP4 ;P1.4=1,跳转到LOOP4执行 JNB P1.4, $ LJMP XIAFAN ;P1.4=0,跳转到上翻子程序P1.5 键按下时,执行下翻功

13、能LOOP4: JB P1.5,LOOP ;P1.5=0,XIAFAN ACALL DELAY10 ;延时 JB P1.5, LOOP ;P1.5=1,跳转到LOOP执行 JNB P1.5, $ LJMP SHANGFAN ;P1.5=0,跳转到下翻子程序LOOP: SJMP HERE2停止子程序软件对定时器0和定时器1的控制位清零,使定时器停止工作STOP: CLR TR0 CLR TR1 ; 关闭定时器0,1 ACALL DISP SJMP HERE3复位子程序软件对显示的各内存单元清零,并回到开始前的初始状态,具体程序如下所示 :RESET: CLR TR0 CLR TR1 ;关闭定时器

14、0,1 MOV 20H, #00H MOV 30H, #00H MOV 31H, #00H ACALL DISP ;调用显示子程序SJMP HERE4按键消抖程序DELAY10: MOV R4,#14H 延时10ms再次判断该位的状态,假设仍是0那么说明该键被按下,弹起后去执行该按键功能;假设为1,那么说明是抖动那么继续向下判断。例如下面的程序中就调用了这个子程序。LOOP2: JB P1.3,LOOP3 ;P1.3=0时,暂停记录 ACALL DELAY10 JB P1.3, LOOP3 JNB P1.3, $ LJMP JILU 4 ISIS7Professionl软件仿真利用Keilu

15、Vision软件对源程序进行编译,编译成功后,把编译结果保存。然后根据我们的软件在PROTEUS中设计出相应的硬件电路,并将该电路保存到与WAVE程序相同的文件夹中,最后将程序装载到单片机中,通过ISIS7Professionl仿真,看程序是否能够实现预想的功能.仿真图如下列图所示:图7:系统仿真结果5 课程设计体会经过一周的不懈努力,单片机的课程设计终于完成了。在这期间我们学会了很多,也学到了很多,同时,对单片机这门课程有了更深一步的理解和掌握。1、本次课程设计使我加深了对单片机课程的全面认识,复习和掌握,对MC-51单片机有了更深入的了解,对I/O口的使用,晶振电路的接法,以及复位电路等的

16、掌握都有了很大程度的提高,这为以后的实践打下了良好的根底。2、掌握了定时器、外部中断的设置和编程原理。3、通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。4、还要根据实验的实际情况,添加些额外程序来使系统更加的稳定,如开关的消震荡采用延迟。5、程序要尽量做到由各个子程序组成,在有些程序后面最好加注释,这样在程序出错的检查过程中可以更容易查找的到,也更简洁,更明白易懂。由于编程能力的有限和所学知识的局限性,在这个程序和设计系统中虽然实现了所有的根本要求和局部的高级要求,但是这其中还有许多不完善的地方,有时在上翻和下翻时会出现一些问题,这说明我在这方面还存在着很多缺乏,知识不够完

17、备和系统,在以后的学习中还有待提高。另外,在实践中虽然焊接好了硬件电路,却没能实践成功,希望老师能在以后的学习和生活中对我多加指导,促使我能取得更大的进步。 6参考文献【1】余发山编著单片机原理及应用技术徐州:中国矿业大学出版社,2003年【2】杨凌霄编著.微型计算机原理及应用.徐州:中国矿业大学出版社,2004年【3】杨宁编著.单片机与控制技术.北京:北京航空航天大学出版社,2004年【4】王闪编著.AT89系列单片机原理与接口技术.北京:北京航空航天大学出版社,2004年附录:程序清单: ORG0000H LJMP MAIN ORG 0003H LJMP JILU ORG000BH LJM

18、PTIME1 ORG 0013H LJMP ZHONGDUAN ORG001BH LJMPTIME10 ORG0100HMAIN: MOV SP, #50H MOV TMOD, #11H MOV TH1,#0D8H ;定时10ms MOVTL1, #0F0H MOV TH0,#0CFH ;定时25ms MOVTL0, #02CH MOV 20H,#00H ;BIN SECOND MOV 30H,#00H ; SECOND MOV31H, #00H MOV40H, #40 MOV 71H, #00H MOV 72H, #00H MOV 73H, #00H MOV 74H, #00H MOV R2

19、, #04H MOV R3, #04H MOV R1, #71H SETB EA SETB EX1 CLR ET1 SETB ET0 CLR PT0 CLR PT1 SETB PX1 SETB IT1 MOVP2, #0FFH CLRTR0 CLRTR1 CLR 7FHML1: ACALLDISPSTART: JB P1.0,LOOP1 ; P1.0=0,STOP ACALL DELAY10 JB P1.0, LOOP1 JNB P1.0, $ LJMP STOPLOOP1: JB P1.1, LOOP2 ;P1.1=0时,复位 ACALL DELAY10 JB P1.1, LOOP2 JNB

20、 P1.1, $ LJMP RESETLOOP2: JB P1.3,LOOP3 ;P1.3=0时,暂停记录 ACALL DELAY10 JB P1.3, LOOP3 JNB P1.3, $ LJMP JILULOOP3: JB P1.4,LOOP4 ;P1.4=0时,上翻 ACALL DELAY10 JB P1.4, LOOP4 JNB P1.4, $ LJMP XIAFANLOOP4: JB P1.5,LOOP ;P1.5=0时,下翻 ACALL DELAY10 JB P1.5, LOOP JNB P1.5, $ LJMP SHANGFANLOOP: SJMP HERESTOP: CLR T

21、R0 ;停止程序 CLR TR1 ACALL DISP SJMP HERERESET: CLR TR0 ;复位程序 CLR TR1 MOV 20H, #00H MOV 30H, #00H MOV 31H, #00H ACALL DISP SJMP HEREJILU : MOV A,20H ;暂停记录程序 MOV R1, A INC R1 DJNZ R2, HERE MOV R1, #71H SJMP STOPXIAFAN:MOV A,R1 ;下翻程序 MOV 20H, A MOV B, #0AH DIV AB MOV 31H, A MOV 30H, B LCALL DISP INC R1 DJ

22、NZ R2, HERE MOV R1, #74H SJMP STOPSHANGFAN:MOV A,R1 ;上翻程序 MOV 20H, A MOV B, #0AH DIV AB MOV 31H, A MOV 30H, B LCALL DISP DEC R1 DJNZ R3, HERE MOV R1, #71H SJMP STOPHEE: JNB TF1, HEE CLR TF1 ACALL JIA1 ACALL DISP JNB P1.0, STOP SJMP HEEHERE: LJMP ML1ZHONGDUAN:SETB TR0 ;启动定时器0 CLR TR1 RETITIME1: PUSH

23、ACC ;定时1秒 PUSH PSW MOVTH0, #0D8H MOVTL0, #0F0H DJNZ40H, RET0 LCALL JIA1 LCALL DISP MOV40H, #100RET0: POP PSW POP ACC RETITIME10:PUSH ACC ;定时10毫秒 PUSH PSW MOV TH0, #0D8H MOV TL0, #0F0HRET1: POP PSW POP ACC RETIJIA1: MOVA,20H ;加1 CLR C INC A CJNE A, #100, GO1 MOV 20H, #00H RETGO1: MOV 20H, A MOV B, #0

24、AH DIV AB MOV 31H, A MOV 30H, B RETDISP: MOV R0,#30H ;显示 MOV R3, #0FEH MOV A, R3PLAY: MOV P1, A MOV A,R0 MOV DPTR, #DSEG1 MOVC A,A+DPTR MOV P2, A LCALL DL1 MOV P1, #0FFH MOV A, R3 RL A JNB ACC.2, LD1 INC R0 MOV R3, A LJMP PLAYLD1: RETDL1: MOVR7, #05HDL: MOVR6, #0FFHDL6: DJNZR6, $ DJNZR7, DL RETDELAY10:MOV R4,#14H ;延时10毫秒DL00: MOV R5, #0FFHDL11: DJNZ R5, DL11 DJNZ R4, DL00 RETDSEG1: DB 3FH, 06H, 5BH, 4FH, 66H DB 6DH, 7DH, 07H, 7FH, 6FH END附录2:系统原理图

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 管理文献 > 管理手册

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁