按键计数器单片机课程设计_第1页
按键计数器单片机课程设计_第2页
按键计数器单片机课程设计_第3页
按键计数器单片机课程设计_第4页
按键计数器单片机课程设计_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

题目:按键计数器院系:物理与电器工程学院专业:自动化班级:(1)班姓名:吴昊苏振兴徐启兴学号:080314018080314030080314039指导老师:唐飞2016年12月8日摘要随着计数器技术的不断发展与进步,计数器的种类越来越多,应用的范围越来越广,现计数器的种类以增加到:电磁计数器、电子计数器、机械计数器(拉动机械计数器、转动机械计数器、按动机械计数器、测长机械计数器)、液晶计数器等。计数器给人类的生活带来了极大的便利,它的功能强劲,用途广泛,方便利用,所以在这个电子科技发展的时代,它是一个很好的电子产品。因此,研究计数器及扩大其应用,有着非常现实的意义。关键词:单片机;计数器;数码管目录TOC\o"1-2"\h\z\u25327一、设计目的 18022二、程序设计的基本要求 120060三、程序设计的具体要求 126568a)原理图的设计 128281b)硬件电路的设计 220027四、程序设计 419811a)主程序流程图 418127b)子程序流程图 416208c)计数器程序 62863五.总结 107265参考文献 102959附录 10设计目的进一步熟悉和掌握8051单片机的结构及工作原理。

2.掌握单片机的接口技术及相关外围芯片的外特性,控制方法。

3.通过课程设计,掌握以单片机核心的电路设计的基本方法和技术,了解表关电路参数的计算方法。

4.通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。

5.通过完成一个包括电路设计和程序开发的完整过程,使学生了解开发一单片机应用系统的全过程,为今后从事相应打下基础。程序设计的基本要求原理图设计

1.原理图设计要符合项目的工作原理,连线要正确,端了要不得有标号。

2.图中所使用的元器件要合理选用,电阻,电容等器件的参数要正确标明。

3.原理图要完整,CPU,外围器件,扩器接口,输入/输出装置要一应俱全。

b)程序设计

1.根据要求,将总体项能分解成若干个子功能模块,每个功能模块完成一个特定的功能。

2.根据总体要求及分解的功能模块,确定各功能模块之间的关系,设直出完整的程序流程图。

c)程序调试按所设计的原理图,在实验平台上连线,检查无误。

2.将汇编后生成的.hex文件传送到实验装置的,执行该程序,检查该程序、是否达到设计要求,若未达到,修改程序,直到达到要求为止。

d)说明书

1.原理图设计说明

简要说明设计目的,原理图中所使用的元器件功能及在图中的作用,各器件的工作过程及顺序。

2.程序设计说明

对程序设计总体功能及结构进行说明,对各子模块的功能以及各子模块之间的关系作较详细的描述。

3.画出工作原理图,程序流程图并给出程序清单。程序设计的具体要求原理图的设计本设计主要由单片机、数码管、轻触开关等组成。其中轻触开关用于控制计数,定时以及复位。数码管由P0和P2口控制,由NPN管9013驱动。图(1)电路原理图b)硬件电路的设计1.4×4矩阵键盘矩阵键盘又称为行列式键盘,它是用4条I/O线作为行线,4条I/O线作为列线组成的键盘。在行线和列线的每一个交叉点上,设置一个按键。这样键盘中按键的个数是4×4个。这种行列式键盘结构能够有效地提高单片机系统中I/O口的利用率。行列式键盘的扫描原理:判断有无键按下。将行线接单片机输入口,列线接单片机输出口。置所有列线为低电平,然后读行线状态,若行线为高电平,则没有键按下;若行线状态不全为高电平,则可断定有键按下。判断那个键按下。先让S0列线为低电平,其余列线为高电平,读行线状态,如行线状态不全为“1”,则说明所按键在该列;否则所按键不在该列,再使S4列线为低电平,其他列为高电平,判断S4列有无按键按下。其余类推,这样就可以找到所按键的行列位置。图(2)行列式键盘电路图2.数码管LED数码管显示技术可以分为静态显示方式与动态显示方式两种。数码管静态显示方式主要指每位字段码是从I/O控制口输出,并且保持不变直至CPU刷新。它的特点是编程比较简单,但是占用的I/O口线比较多,主要适用在显示位数比较少的场合。而数码管的动态显示方式是依次地循环扫描,从轮流中显示出人的视觉滞留效应和人们所看到的是多位而且会稳定的显示。主要的特点是占用的I/O端线比较少,电路也比较简单,编程比较复杂,而CPU要定时地扫描和刷新显示,主要适用在显示位数较多的场合。本课程设计通过驱动电路驱动两个共阳极数码管进行显示数字。在计数过程中,可以通过启动按键启动系统进行计数,当定时时间到,计数停止,统计计数器的数值并显示在数码管上;此外,还可以通过复位按键进行复位,进行下一次的计数。定时时间10s,计数范围0~255,进行软件编程时本课程设计的计数是从0开始的,每按一次P3^5所接的轻触开关就加一,直到加到255又跳回0依次进行。图(5)数码管驱动电路程序设计本次设计的主要有最小系统和行列式键盘接口电路及数码管显示电路构成,编程流程简单明了;使用的是Keil3软件进行编程,因为常用的单片机程序设计编译软件都是使用它。运行生.hex文件后,运用STC-ISP下载编程烧录工具烧写到AT89C52芯片中。主程序流程图子程序流程图INT_T0中断程序流程图T0_ZD中断程序流程图INT_T1中断程序流程图延时程序流程图数码管显示程序流程图计数器程序//定义8个单元存放每个数码管要显示的内容DVALUE0EQU20DVALUE1EQU21DVALUE2EQU22DVALUE3EQU23DVALUE4EQU24DVALUE5EQU25DVALUE6EQU26DVALUE7EQU27ORG0000HLJMPMAINORG0003HLJMPINT_T0ORG000BHLJMPT0_ZDORG0013HLJMPINT_T1ORG0100HMAIN:MOVDVALUE0,#00HMOVDVALUE1,#00HMOVDVALUE2,#00HMOVDVALUE3,#00HMOVDVALUE4,#00HMOVDVALUE5,#00HMOVDVALUE6,#00HMOVDVALUE7,#00HMOVTMOD,#51HMOVTH0,#3CHMOVTL0,#0B0HMOVTH1,#00HMOVTL1,#00HMOVR7,#200SETBEA SETBEX0SETBIT0;外部中断INT_TO下降沿触发SETBET0SETBEX1CLRTR0CLRTR1L3: LCALLDISPLAY SJMPL3//外部中断实现按键控制INT_T0:CLREX0MOVTH1,#00HMOVTL1,#00H SETBTR0 SETBTR1 RETI//内部T0中断计时10sT0_ZD:MOVTH0,#3CH MOVTL0,#0B0H DJNZR7,L1 MOVR7,#200 CLRTR0 CLRTR1 LCALLHTODL1: RETI//下面是将R2R3中的16进制数转换成压缩BCD码R4R5R6INT_T1:MOVTL1,#00H;复位MOVTH1,#00HSETBEX0LCALLHTODRETIHTOD: //SETBRS0 MOVR3,TL1 MOVR2,TH1 CLRA MOVR4,A MOVR5,A MOVR6,A MOVR1,#16LOOP:CLRC MOVA,R3 RLCA MOVR3,A MOVA,R2 RLCA MOVR2,A MOVA,R6 ADDCA,R6 DAA MOVR6,A MOVA,R5 ADDCA,R5 DAA MOVR5,A MOVA,R4 ADDCA,R4 DAA MOVR4,A DJNZR1,LOOP//将BCD码数字R4R5R6中每一位数字取出放在DVALUE3DVALUE4DVALUE5DVALUE6DVALUE7 MOVR0,#DVALUE7 MOVA,R6 ANLA,#0FH MOV@R0,A DECR0 MOVA,R6 SWAPA ANLA,#0FH MOV@R0,A DECR0 MOVA,R5 ANLA,#0FH MOV@R0,A DECR0 MOVA,R5 SWAPA ANLA,#0FH MOV@R0,A DECR0 MOVA,R4 ANLA,#0FH MOV@R0,A //CLRRS0 RET//通过动态显示将结果显示DISPLAY:MOVR0,#DVALUE7 MOVR3,#0FEH MOVR2,#8L2: MOVP2,R3 MOVA,@R0 MOVDPTR,#TAB MOVCA,@A+DPTR MOVP0,A LCALLDELAY DECR0 MOVA,R3 RLA MOVR3,A DJNZR2,L2 RET//延时DELAY: MOVR4,#200 DJNZR4,$ RETTAB:DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H END五.总结在本次课程设计过程中,我为能理解和应用专业课学习成果而感悟颇深,同时我也深深的感受到了基础知识的重要性。在以后的学习生活中切不可急于求成而忽略了基础的夯实,对一门系统学科,应该扎实的学习他的每一部分知识,充分利用各种实践环节,切实做到理论联系实践,学以致用。同样,通过这次课程设计我也体会到我们学习上的不足。课程设计的这段时间过得相当充实,在日后的学习与工作中,我仍将认真巩固对专业基础知识的学习,继续扎实的学习岩土工程专业知识。在此,感谢老师给我们的悉心指导,让我在此次

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论