您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > 贵州大学96单片机课程设计-(00-59秒计时器设计)
课程设计课程名称:00-59秒计时器设计学院:电气工程学院专业:电气工程及其自动化姓名:学号:年级:任课教师:年月日贵州大学课程设计第页目录一、设计目的及要求1.1、设计目的1.2、设计要求二、设计方案2.1、硬件设计2.2、本次设计所用元件清单2.3、芯片选址方式的确定2.4、输出数据的显示方式2.5、8098数据输出方式2.6主程序的设计2.7延时程序的设计三、硬件图四、程序流程图及程序4.1程序流程图4.2汇编程序清单五、课程设计中遇到的问题六、设计心得体会参考资料贵州大学课程设计第页一、设计目的及要求1.1、设计目的本次课程设计的题目是00-59秒计时器设计,通过课程设计使学生更进一步掌握单片机原理与应用课程的有关知识,提高用汇编语言编程的能力,并将所学的内容加以综合;通过查阅资料,了解所学知识的应用情况;通过课程设计全面系统的了解单片机的设计方法及设计步骤,了解微机系统的基本组成及开发设计过程中需要注意的问题。1.2、设计要求1、利用8098单片机设计00-59秒计时器,分别显示秒时间的十位和个位。2、00-59秒计时器从0开始计时,首先显示“00”,每隔一秒后再显示下一位数,一直到显示完“59”后结束计时。二、设计方案2.1、硬件设计此次课程设计所用到的单片机为8098芯片。8098芯片的内部硬件结构分为三大部分,简述如下。1.中央处理单元CPUCPU包括运算器和控制器,是一个高性能的16位CPU。运算器进行各种算术或逻辑运算,控制器则发出完成各种指令所规定操作的控制指令。2.存储器8098芯片带有内部随机存储器RAM,和一般RAM不同,这一RAM并不存放程序,而是用于存放与运算过程或输入输出操作有关的数据或信息,起作用类似于存储器,因此有把它称之为存储器空间或内部寄存器文件。3.输入输出功能部件8098芯片内部有多种具有I/O功能的部件,利用这些部件,用户可直接进行I/O操作,在不需外加电路或只需进行简单电路设计的情况下,可使I/O设备与芯片接口,大大简化了用户的电路设计工作。贵州大学课程设计第页由于8098片内仅有256个单元的RAM,只作为寄存器使用,因此在构成实际应用系统时,必须外接ROM和RAM芯片。此外,最终要把计时数据显示出来还需用到许多相关的元件。2.2、本次设计所用元件清单元件名称数量8098单片机174LS138译码器16264RAM芯片12764EPROM芯片18255A可编程并行I/O接口芯片174LS373锁存器174HC4511七段显示译码器2共阴极七段式数字显示器2部分元器件结构功能介绍如下。1.74LS138译码器74ls138是3/8译码器,即对3个输入信号进行译码。得到8个输出状态。G1,G2A,G2B,为数据允许输出端,G2A,G2B低电平有效。G1高电平有效。A,B,C为译码信号输出端,Y0~Y7为译码输出端,低电平有效。2.6264RAM芯片6264芯片是容量为8K×8的静态RAM芯片,采用CMOS工艺制作,为双列直插式封装,共28只引脚.3.2764EPROM芯片它是可用紫外线擦除的静态数字存储器,可能是储存亮灯的花样。在外围电路不变的情况下,仅靠改变2764中的内容就可改变亮灯顺序。4.8255A可编程并行I/O接口芯片8255A是一种通用的可编程并行I/O接口,共有40条引脚,其中I/O线24条,分为A,B两组,允许分别编程。该芯片有有三个均为8位的数据端口A,B,C。5.74LS373贵州大学课程设计第页锁存器:74LS373的输出端O0~O7可直接与总线相连。当三态允许控制端OE为低电平时,Q0~Q7为正常逻辑状态,可用来驱动负载或总线。当OE为高电平时,Q0~Q7呈高阻态,即不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响。当锁存允许端LE为高电平时,Q随数据D而变。当LE为低电平时,D被锁存在已建立的数据电平。当LE端施密特触发器的输入滞后作用,使交流和直流噪声抗扰度被改善400mV。5.CMOS七段显示译码器74HC4511该种译码器是以输出高电平有效,用以驱动共阴极显示器,该集成显示译码器设有三个辅助控制端LE,BL,LT,其中LE为高电平有效,BL,LT为低电平有效。6.七段式数字显示器(发光二极管)七段数码显示器是微机系统常用的输出设备。多个发光二极管封装在一起的七段数码显示器按其连接形式可分为共阳显示器和共阴显示器。2.3、芯片选址方式的确定6264RAM和2764ROM的选址方式定为全译码方式,8255A的选址方式定为部分译码方式。对于这些外接芯片,它们的片选信号由74LS138译码器产生,P4.5、P4.6、P4.7口为000时选中6264RAM芯片,为001时选中2764ROM芯片,为010时选中8255A芯片;线选信号由P3口产生,对于6264RAM和2764ROM来说,线选信号需要用到P3口的全部8个引脚,8255A则只需用到P3.0、P3.1两个引脚即可,各个外接芯片的地址范围如下:6264芯片:0000H~1FFFH;2764芯片:2000H~3FFFH;8255A芯片:端口A:5FFCH;端口B:5FFDH;端口C:5FFEH;控制端口:5FFFH;2.4、输出数据的显示方式从P3口输出的数据被送至8255A,通过对8255A的A端口选址,将数据送至A端口输出,A端口的高四位接到七段显示译码器74HC4511上,74HC4511后接七段式数字显示器;低四位同高四位的接法。2.5、8098数据输出方式P3口通过74LS373锁存器与6264RAM、2764ROM和8255A芯片的地址端口连接,当贵州大学课程设计第页需向或需从几个芯片送数据时,P3口先输出地址码至锁存器,在ALE引脚的信号控制下,锁存器将地址码锁存并在出线端保持,选中所需存储单元。然后P3口变为数据输送端口,开始传送数据。2.6主程序的设计首先,将需要输出的数存入存储器的一个连续空间内,共需要60个字节,分别存储00~59的编码,然后建立指针,指向空间内第一个数据;程序初始化后开始执行。首先输出第一个数据00,延时1S时间后,输出第二个数据01;比较输出的数据与59的大小,若比59小,则返回延时程序继续延时,然后输出;若比59大,则程序在原地循环。2.7延时程序的设计延时程序由空操作指令组成,并用循环程序实现。完成延时1ms时用三条指令实现,分别是两条NOP和一条DJNZ指令,执行该指令一次需要17T(4T+4T+9T),T=0.25us,于是循环次数为1ms/17T等于235。编写好延迟1ms的程序后,将该程序循环100次即得到延迟0.1S的程序,再循环10次就得到延迟1S的程序,即实现了要求。三、硬件图贵州大学课程设计第页四、程序流程图及程序贵州大学课程设计第页4.1程序流程图(1)系统主程序流程图YN(2)延时程序流程图START将所需输出的数存入在一个连续的存储器空间,并建立指向其首个数的指针输出首个数00H,指针指向下一个数延时1秒输出数小于59秒END输出指针志向的数,指针指向下一个数贵州大学课程设计第页`NYNYNY4.2汇编程序清单START设置计数器AL设置计算器BL设置计算器CLCL-1是否延时0.1秒BL-1是否延时1秒AL-1是否延时1秒END贵州大学课程设计第页ALEQUB0026HBLEQUB0027HCLEQUB0028HDXEQU0018HELEQUB0020HFXEQU0022HGXEQU0024HHLEQUB0021HORG2080HLDDX,#5FFFH;对8255A控制端口赋值,赋值80H,对A选LDBEL,#0080H;作输出口,工作方式为0方式STBEL,[DX];LDFX,#3500H;建立指向储存器输出数的地址指针LDGX,#5FFCH;LDBHL,[FX]+;通过A口输出00STBHL,GX;START:LDBAL,#0AH;LOOP:LDBBL,#64H;LOOP1:LDBCL,#EAH;LOPP1:NOP;NOP;延时1秒DJNZCL,LOPP1;DJNZBL,LOOP1;DJNZAL,LOOP;LDBHL,[FX]+;STBHL,GX;输出下一个表示时间的数CMPBHL,#3BH;比较输出数与59大小,若比59小,则延时1JLTSTART;秒后继续输出,反之程序结束HERESJMPHERE;贵州大学课程设计第页ORG3500HDSEG:DB00H01H02HO3H04H05HDB06H07H08H09H0AH0BHDB0CH0DH0EH0FH10H11HDB12H13H14H15H16H17HDB18H19H1AH1BH1CH1DHDB1EH1FH20H21H22H23H将需输出数存入存储器DB24H25H26H27H28H29HDB2AH2BH2CH2DH2EH2FHDB30H31H32H33H34H35HDB36H37H38H39H3AH3BHEND五、课程设计中遇到的问题在编程的时候,遇到的问题主要是如何设计延时程序使之刚好达到1S的延时,延时程序如下:START:LDBAL,#0AH;LOOP:LDBBL,#64H;(1)4TLOOP1:LDBCL,#EAH;(2)4TLOPP1:NOP;(3)4TNOP;(4)4TDJNZCL,LOPP1;(5)9T/5TDJNZBL,LOOP1;(6)9T/5TDJNZAL,LOOP;(7)9T/5TLDBHL,[FX]+;STBHL,GX;CMPBHL,3BH;(1)延时1ms时,执行(3)(4)(5)语句,花费时间(4T+4T+9T)×234+(4T+4T+5T)贵州大学课程设计第页=3991T;(2)延时0.1S时,执行(2)(3)(4)(5)(6)语句,花费时间(4T+3991T+9T)×99+(4T+3991T+5T)=400396T;(3)延时1S时,执行(1)(2)(3)(4)(5)(6)(7)语句,花费时间(4T+400396T+9T)×9+(4T+400396T+5T)=4004086T=1.001S故每延时1S实际计时的时间为1.001S,相差0.001S,输出60次相差0.06S,比1S小很多,误差很小。控制输出的程序所用时间很小,可忽略不计。六、设计心得体会通过为期两周的单片机课程设计,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。创新,是要我们学会将理论很好地联系实际,并不断地去开动自己的大脑,从为人类造福的意愿出发,做自己力所能及的,别人却没想到的事。使之不断地战胜别人,超越前人。同时,更重要的是,我在这一设计过程中,学会了坚持不懈,不轻易言弃。设计过程,也好比是我们人类成长的历程,常有一些不如意,也许这就是在对我们提出了挑战,勇敢过,也战胜了,胜利的钟声也就一定会为我们而敲响。这个设计过程中,我遇到过许多次失败的考验,就比如,自己对实际生活中计时器的不了解给整个设计带来的困扰,真想要就此罢休,然而,就在想要放弃的那一刻,我明白了,原来结果并不那么重要,我们更应该注重的是这一整个过程。于是,我坚持了下来。贵州大学课程设计第页参考资料1汪建.MCS-96系列单片机原理及应用技术.武汉:华中科技大学出版社,20042楼然苗,李光飞.单片机课程设计指导.北京:北京航空航天大学出版社,20073皮大能,南光群,刘金华.单片机课程设计指导书.北京:北京理工大学出版社,20104李朝青.单片机原理及接口技术.北京:北京航空航天大学出版社,20055彭宣戈.16位单片机原理及应用.北京:北京航空航天大学出版社,20066薛青.单片机原理及接口技术-MCS8096系列.哈尔滨:哈尔滨工业大学出版社,1997
本文标题:贵州大学96单片机课程设计-(00-59秒计时器设计)
链接地址:https://www.777doc.com/doc-4499159 .html