自动电子钟课程设计报告_第1页
自动电子钟课程设计报告_第2页
自动电子钟课程设计报告_第3页
自动电子钟课程设计报告_第4页
自动电子钟课程设计报告_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

第页自动电子钟课程设计报告设计要求课程设计的基本任务,是着重提高动手能力及在字集成电路应用方面的实践技能,培养综合运用理论知识解决实际问题的能力。各组人员可分别通过设计图纸,上网查找资料以及撰写报告这几个过程来锻炼逻辑思维能力及实际动手能力。从实际操作中学习知识,思考存在的问题以及解决问题。

(1).用24小时制进行时间显示;(2).能够显示小时、分钟;(3).每秒钟要有秒闪烁指示;(4).上电后从“00:00”开始显示。二、设计的作用、目的数字电子技术是一门实践性很强的课程,加强工程训练,特别是技能的培养,对于培养工程人员的素质和能力具有十分重要的作用,在电子类本科教学中,课程设计是一个重要的实践环节。

通过本次数字电子技术课程设计要实现以下两个目标:1.初步掌握电子线路的设计。既学生根据设计要求,查阅文献资料,收集、分析类似电路的性能,并通过调试等实践活动,使电路达到性能要求。2.课程设计为后续的毕业设计打好基础。毕业设计是系统的工程设计实践,而课程设计的着眼点是让学生开始从理论学习上逐渐向实际方面发展,运用已学过的的分析和设计电路的理论知识,逐步掌握工程设计的步骤和方法,同时,课程设计报告的书写,为今后从事技术工作撰写科技报告和技术资料打下基础。设计的具体实现3.1.系统概述首先利用定时、延时程序在将给定的时间逐渐变为零时就会发出一个信号,执行时间显示程序,执行此程序后8255就会工作,把接到的二进制时间码转换成ASCII码在四个数码管上显示时间。具体做法是在数据段开辟一显示缓冲区,用来存储系统时间调用延时,返回系统时间,并将返回的二进制时间转换成ASCII码,方便时间显示时的调用。分别将分钟数、秒数存入显示缓冲区,调用字符串显示功能将时间显示出来。由于获取了的系统时间不会自动刷新,所以我们要设计成循环方式来不断获取系统时间,这样就形成了会跳动的电子钟。同时还要配合延时程序进行,为了得到良好的显示效果,本程序调用了一段精确的延时程序没,使各位在时间显示上有短暂的间隔,延时程序要尽量接近1秒,这样就得到了一个比较符合的电子钟。3.2.

电路分析与设计3.2.1主要器件介绍3.2.1.1可编程并行芯片8255 8255是Intel公司为其80系列微处理器生产的通用可编程并行输入输出接口。它具有很强的功能,在使用中可利用软件编程来指定它该完成的功能。3.2.1.2外部引线可编程并行芯片8255的外部引线如图3.2.1.1所示图图3.2.1.1.1D0~D7为双向数据信号线,用来传送数据和控制字。RD为读信号线,与其他信号线一起实现对8255接口的读操作。通常接系统总线的IOR信号。WR为写信号线,与其他信号一起实现对8255的写操作。通常接系统总线的IOW信号。CS为片选信号线,当它为低电平时才能选中该8255芯片,也才能对8255进行操作。A0,A1为口地址选择信号线。8255内部有三个口:A口,B口,C口,还有一个控制寄存器,它们可由程序寻址。A0,A1上的不同编码可分别寻址上述三个口和一个控制寄存器,具体规定如下:A1A0选择00A口01B口10C口11控制寄存器通常A0,A1分别接系统总线的A0,A1,它们与CS一起来决定8255的接口地址。RESET为复位输入信号。此端上的高电平可使8255复位。复位后,8255的A口,B口,C口均被定为输入状态。PA0~PA7为A口的8条输入输出信号线。该口的这8条线是工作于输入、输出还是双向方式可又软件编程来决定。PB0~PB7为B口的8条输入输出信号线。利用软件编程可指定这8条线是输入还是输出。PC0~PC78条线根据其工作方式可作为数据的输入或输出线,也可以用作控制信号的输出或状态信号的输入线。3.2.1.38255的结构8255由4部分组成:(1)数据总线缓冲器(2)三个8位端口PA、PB、PC,其中PC口可分为两个4位端口,可分别同端口A和端口B配合使用,可以用作控制信号输出等。(3)A组和B组的控制电路。(4)读/写控制逻辑。3.2.1.48255的初始化在使用8255时,首先要由CPU对8255写入控制命令字。有两种控制命令字:方式选择控制字和C口按位置位/复位控制字。为了能使8255的A口工作输出状态控制LED灯亮灭以及B口工作于输入状态采集亮灭信号,必须对其初始化,初始化程序如下:MOVDX,0606HMOVAL,80HOUTDX,AL3.2.1.58255的工作方式8255有三种工作方式:方式0、方式1和方式2。(1)方式0——基本输入/输出在此工作方式下,每个口都作为基本的输入输出口,C口的高4位和低4位以及A口和B口都可独立地设置为输入口和输出口。在此工作方式下:输出的数据被锁存,而输入的数据不被锁存。A组B组A口(PA0PA7)C口(PC4PC7)B口(PB0PB7)C口(PC0PC3)入入入入入入入出入入出入入入出出入出入入入出入出入出出入入出出出出入入入出入入出出入出入出入出出出出入入出出入出出出出入出出出出(2)方式1——选通输入/输出此工作方式下,三个端口分为A、B两组,A、B两个口仍用作数据输入输出口,而C口分成两部分,分别作为A口和B口的联络信号。在8255中,联络信号是3位,两个数据口,共用去C口的6位,剩余的两位仍可作为数据位使用。(3)方式2——双向选通输入/输出此工作方式只限于A组使用,它用A口的8位数据线,用C口的5位进行联络。工作时输入输出都能被锁存。当A口工作在方式2时,B口可以在方式0或方式1工作。3.2.1.68255的方式控制字及状态字8255有很强的功能,能够工作在各种工作方式下。在应用过程中,可以利用软件编程来指定8255的工作方式。也就是说,只要将不要的控制字装入芯片中的控制寄存器,即可确定8255的工作方式。(1)控制字8255的控制字有8位二进制数构成,各位的控制功能如图3.2.1.2所示。当控制字bit7=1是,控制字的bit6-bit0用来控制B组,包括B口的8位和C口的低4位。当控制字的bit7=0时,指定该控制字仅对C口进行位操作——按位置位或复位操作。对C口按位置/复位操作的控制字格式如图3.2.1.3所示。如前面所叙,在必要时,可利用C口的按位置/复位控制字来使C口的某一位输出0或1。图图3.2.1.28255的控制字格式图3.2.1.3C口的按位操作控制字格式3.2.2源代码清单及注释MY8255_AEQU0600HMY8255_BEQU0602H;宏定义MY8255_CEQU0604HMY8255_MODEEQU0606HDATASEGMENTNUMDB4,1,0,7;定义初始值COUNTDB60HDTABLEDB3FH,06H,5BH,4FH,66H,6DH,7DH,07H;8段数码管显示码 DB7FH,6FH,77H,7CH,39H,5EH,79H,71HDATAENDSCODE SEGMENT;定义代码段 ASSUMECS:CODE,DS:DATASTART:MOVAX,DATA MOVDS,AX MOVDX,MY8255_MODE MOVAL,80H;初始化8255 OUTDX,AL MOVBX,OFFSETDTABLE;取显示码地址偏移量WAN:CALLDIS;调用显示子程序DECCOUNTJNZWAN;延时MOVCOUNT,50HINCNUM+3;秒个位加一CMPNUM+3,BYTEPTR10;秒个位与10比较JNZWAN;若不为10则显示输出MOVNUM+3,0;把NUM+3单元清零INCNUM+2;秒十位加一CMPNUM+2,BYTEPTR6;秒十位与6比较JNZWAN;若不为6则显示输出MOVNUM+2,0;把NUM+2单元清零INCNUM+1;分个位加一CMPNUM+1,BYTEPTR10;分个位与10比较JNZWAN;若不为10则显示输出MOVNUM+1,0;NUM+1单元清零INCNUM;分十位加一CMPNUM,BYTEPTR6;分十位与6比较JNZWAN;若不为6则显示输出MOVNUM,0;NUM单元清零JMPWAN;无条件转移,继续从零分零秒开始计时 DIS:MOVSI,OFFSETNUM;显示子程序 MOVCL,0F7H LP1:MOVDX,MY8255_B MOVAL,[SI] MOVAH,0;AX寄存器高四位清零 MOVDI,BX ADDDI,AX MOVAL,[DI] OUTDX,AL;将DX中的低四位送外设 MOVDX,MY8255_A MOVAL,CL OUTDX,AL CALLDLY;调用延时子程序 RORCL,1;循环右移 TESTCL,80H JZLP2 INCSI JMPLP1 LP2:RET DLY:PUSHCX;延时子程序 PUSHAX LP3:MOVCX,000FHT1:MOVAX,009FHT2:DECAX JNZT2 LOOPT1 POPAX POPCX RETDONE:RET CODEENDS;程序结束 ENDSTART3.2.3程序流程图调用延时子程序调用显示子程序分个位=10?分个位加1秒十位清零秒十位=6?秒十位加1秒个位清零秒个位=10?秒个位加1显示初值NUM装入初值8255初始化内存单元清零开始调用延时子程序调用显示子程序分个位=10?分个位加1秒十位清零秒十位=6?秒十位加1秒个位清零秒个位=10?秒个位加1显示初值NUM装入初值8255初始化内存单元清零开始 NY NYY NY结束分十位加1分个位清零所有位清零分十位=6?结束分十位加1分个位清零所有位清零分十位=6?Y NY3.2.4硬件接线图XD0..XD7XA1XA2IOW#XD0..XD7XA1XA2IOW#IOR#IOY0A..DpX1..X4D0 PB0. .. .D7PB7A0 A1PA0WR .RD . PA3CS四.心得体会及建议课程设计是培养学生动手,动脑的能力,在设计中发现,提出,分析和解决实际问题,也是对学生对所学的书本知识的一种检验,以及对实际工作能力的具体训练和考察过程。在当今社会计算机已变得无处不在,能够熟练地运用计算机将是为自己将来的工作加重了一个不可限量的砝码,因此作为新世纪的大学来说掌握计算机技术将是十分重要的。回顾这将近一周的课程设计,我感慨颇多,从拿到题目到完成整个编程,从理论到实践,在一周的时间里,我和我的小组同学都学到了很多很多东西,不仅巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。在设计过程中,我遇到了很大的困难,不得不认真查找问题的所在,但经过多次地调试与运行还是没能最终解决问题,但是我们没有放弃,最后终于成功地解决了问题。同时我还要感谢我同学们的帮助,我们每个人都尽心尽力完成自己的任务,遇到不懂的问题及时讨论,最终都能将自己不懂的问题搞懂,每个人都得到了不同程度的提高。通过这次课程设计使我懂得了理论与实际相结合的重要性,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正提高自己的实际动手能力和独立思考的能力。在设计的过程中还发现了自己的不足之处,那就是对一些学过的知识理解得不够深刻,掌握得不够牢固,在这次课程设计之中,我又把前面所学过的知识又重新温故了一遍。通过这一周的课程设计使我更加明确了日

温馨提示

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

评论

0/150

提交评论