数字钟-接口课设报告-8086微机原理与接口技术课程设计(共21页).doc
《数字钟-接口课设报告-8086微机原理与接口技术课程设计(共21页).doc》由会员分享,可在线阅读,更多相关《数字钟-接口课设报告-8086微机原理与接口技术课程设计(共21页).doc(21页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上接口技术基础 实验报告学院:计算机科学与技术学院班级:计091学号:姓名:曹恒楼指导老师:顾 晖时间:2012/6/16目 录数字钟的设计31设计需求分析与解决方案31.1设计需求分析31.1.1题目要求31.1.2根据题目要求提出问题31.2解决问题方法及思路31.2.1硬件设计选择部分31.2.2软件设计分析42硬件设计52.1选择芯片825552.1.1芯片8255 A在本设计中的功能作用52.1.2芯片8255 A的功能分析52.1.38255 A 方式控制字52.1.48255 A与外设相连的逻辑图62.2选择器件 LED62.2.1LED在本设计中的作用6
2、2.2.2LED功能分析62.2.3LED技术参数72.3硬件设计思路及连线图72.3.1硬件设计思路72.3.2硬件接线原理图、连接图73软件设计思路及程序控制流程框图 83.1软件设计思路83.2程序流程图的相关说明93.3程序控制流程框图93.4程序清单(见附录)114实验环境115上机调试过程115.1硬件调试115.2软件调试135.3软、硬件联立调试135.4调试结果136实验运行结果、分析156.1实验运行结果与分析156.2问题讨论157实验心得168参考文献17附录(源代码)17数字钟的设计一、 设计需求分析与解决方案1.1设计需求分析1.1.1题目要求设计一个接口与七段LE
3、D显示器,显示一个计时时钟,显示初值为0,每隔一秒改变一次显示值,60s为一分钟,60min为一小时,LED显示器循环显示时、分、秒的动态值。 1.1.2根据题目要求提出问题1、选择用于显示时间的显示器;2、怎样使显示器实现显示时间;3、如何实现计时功能,是用软件还是硬件实现;4、选择何种接口芯片以及考虑该接口芯片及LED显示器的技术参数,考虑最大工作电流,需不需要其他辅助芯片等;5、对设计题目功能的扩展,在设计中加入其他功能;6、可否用不同的设计方法完成设计,与其他计算机语言设计相比的异同之处。1.2解决问题方法及思路1.2.1硬件设计选择部分1、接口芯片的选择秒位设置完毕后,如何将时间信息
4、传送到外设中,即选择何种芯片用于CPU与外设之间传送信息。接口芯片是微型机系统中实现输入输出的常用器件,是CPU与外设之间的界面,一方面要接收CPU进行输入/输出所发出的一系列信息,另一方面又要与外设交换数据以及一些联络信号等。为增加本设计的灵活性,在接口的选择上要求是可编程的输入/输出接口8255A芯片或8251A芯片。8255A芯片:它是一种可编程通用并行接口芯片,它有24条可编程的I/O引脚,采用40脚双列直插式封装,单一+5V电源,全部输入/输出均与TTL电平兼容。在8255A中有A、B、C三个并行输入/输出端口,其功能全部由程序设定,每个端口都有自己的特点。A口、B口通常作为独立的I
5、/O端口使用,C口也可以作为一般的I/O端口使用,但当A口、B口作为应答式的I/O端口使用时,C口分别以来为A口、B口提供应答控制信号。如果采用8255A作为计时时钟的输入/输出接口,那么8255A的三个端口设置如下:A口工作与方式0,作为输出口,其PA0PA6分别与外设的段选码相连,用以确定在何时显示时间的哪一位;B口工作与方式0,作为输出口,其PB0PB7分别与外设相连,作为位选线;C口用来为A口、B口提供应答控制信号。8251A芯片:它是一种可编程通用串行接口芯片,是通用的同步异步接收/发送器,它的作用是把计算机的并行数据转换成串行数据发送出去,把接收到的外部串行数据转换成并行数据送入计
6、算机内部,它可以通过编程选用同步/异步通信方式,它具有独立的发送器和接收器,能够以单工、半双工或全双工方式进行通信,并提供相应的控制信号。最佳解决方案:如果采用8251A作为计时时钟的输入/输出接口,那么就需要把计算机的并行数据转换成串行数据发送出去,把接收到的外部串行数据转换成并行数据送入计算机内部,这个过程是需要时间的,所以从时间效率方面来说并没有8255A芯片合适;另外,可编程并行接口芯片(8255A)数据传输速度快,虽然使用的通信线多,但是传输距离并不算远,所以在解决接口问题时,采用可编程并行接口芯片8255A是比较合适的。2、时间显示为实现计时时钟的显示,可选择共阴极(或共阳极)七段
7、LED上,芯片LCD或LED,表1-1为两种芯片的比较:发光二极管,是由发光二极管排列组成的显示器件,它采用低电压扫描技术,具有耗电少,使用寿命长,成本低,亮度高,故障少,视角大,视角大,可视距离远的特点。通过分析和对比以及实验室实验条件可知LED显示器要较优于LCD显示器,因此本实验选择LED来实现时间的显示。3、秒钟设计秒钟的设计有两种解决方案:硬件实现、软件实现:(1)硬件分析:可选择8253A芯片,8253A是一种定时准确、使用方便、灵活性大的可编程定时器/计数器,其定时的时间长度可以通过软件来设置,对芯片设置处置初值后,计数器开始工作,微处理器就可以去做其他工作,定时时间到,电路会产
8、生一个信号,向微处理器提出中断请求,告诉处理器定时时间已到。(2)软件分析:为实现1秒长度的设定,可执行一个循环程序,通过循环次数和循环嵌套的层数来调节计时时间的长短,该方法的优点是不需要专用的硬件,从而成本低,方法简单灵活,使用起来也比较容易。(3)最佳解决方案:通过以上分析,硬件实现1秒的设定虽然较准确,但用软件来实现可以极大的节约成本,而且通过周密的计算循环的次数和循环嵌套的层数也可以将计时的准确度提高,所以在实现计时时间方面选择软件是比较好的方案。1.2.2软件设计分析1、初始值设置在程序中的数据段定义秒位数据second,分位数据minute,时位数据hour,初始值都设为00H,并
9、在LED显示器上显示初值。2、8255初始化设置8255的工作方式:B口和C口都用于输出,且都工作在方式0。3、计时过程从初始值开始显示,当显示了1s时,秒位加1,并判断秒位是否为60,若不是,则直接显示时间;若是,则将秒位置0,分位加1,接着判断分位是否为60,若不是,则直接显示;若是,则将分位置0,时位加1,然后判断时位是否为25,若不是,则直接显示;若是,则将时位置0,日期加1,并判断日期是否加到31,若是,则将日期清零,重新计时。如此循环。4、1秒时间的设定执行一个循环程序,通过循环次数和循环嵌套的层数来调节计时时间的长短,该循环次数处定为0100h。二、 硬件设计2.1选择芯片825
10、52.1.1芯片8255 A在本设计中的功能作用8255是并行的I/0接口芯片,内部有三个相互独立的8位数据端口。8255实现了外设与8086之间的数据传输。8255的B口工作于方式0,作为输出口,其PB0PB7分别与LED数码管显示器的显示器的八段a,b,c,d,e,f,g,dp相连,C口作为输出口,其PC7PC0与LED数码管显示器的LED0LED7相连,作为位选。2.1.2芯片8255 A的功能分析1、8255A是可编程并行接口,内部有3个相互独立的8位数据端口,即A口、B口和C口。三个端口都可以作为输入端口或输出端口。A口有三种工作方式:方式0、方式1和方式2;B口可以工作在方式0或方
11、式1下;C口通常作为联络信号使用。8255的工作只有当片选CS有效时才能进行工作,而控制逻辑端口实现对其他端口的控制。当8255 A工作在方式0时,即基本输入输出方式时,可将三个数据端口划分为四个独立的部分:A口和B口作为两个8位端口,C口的高4位和低4位可以用作两个4位的输入输出口,各个端口都可独立地用作输入或输出。2、数据总线缓冲器是一个8位双向三态缓冲器,三态是由读/写控制逻辑控制的,它可与系统的DB直接相连,实现CPU和8255A之间的信息传送;读写控制器用于管理数据、控制字或状态字的传送,接收来自CPU的地址信息及一些控制信号,然后向A组、B组控制电路发送命令,控制端口数据的传送方向
12、。2.1.38255 A方式控制字8255A的方式控制字(见图2-1) 图2-18255A的方式控制字2.1.48255 A 与外设相连的逻辑图图2-38255与外设相连的逻辑图PA7PA0:A口数据信号线;PB7PB0:B口数据信号线;PC7PC0:C口数据信号线。2.2选择器件LED2.2.1LED在本设计中的作用LED发光二极管(Light-Emitting Diode),在本设计中采用7段数字发光二级管,是作为终端用来显示计时时钟的时、分、秒、毫秒值的。2.2.2LED功能分析LED发光二级管分为共阳极和共阴极两种,共阳就是7段的显示字码共用一个电源的正极,同理共阴就是7段的显示字码共
13、用一个电源的阴极,共阴极数码管原理示意图如下:(见图2-4)图2-4LED原理图LED数码管采用砷化镓、镓铝砷、和磷化镓等材料制成,其内部结构为一个PN结,具有单向导电性。从上图可以看出,要是数码管显示数字,有两个条件:1、是要在VT端(3/8脚)加正电源;2、要使(a,b,c,d,e,f,g,dp)端接低电平或“0”电平。这样才能显示的。将七个发光管进行组合,排列成数字图形8,再根据需要控制七个管的亮与灭,即可显示出定义数字。2.2.3LED技术参数数字DPgfedcba二进制编码(字形)0001111113FH10000001103H2010110115BH3010011114FH4011
14、0011066H5011011016DH6011111017DH70000011107H8011111117FH9011011116FHA0111011177HB011111007CHC0011100169HD010111105EHE0111100179HF0111000171H表2-5LED共阴极显示管段选码编码表2.3硬件设计思路及连线图2.3.1硬件设计思路8086的8位数据线D7D0与8255的D7D0相连,地址线经74LS373锁存后其低位A0、A1分别与8255的A0、A1相连,其他地址线经74LS138译码后,其CS0接8255的片选CS引脚,其入口地址为00F0H00F3H。8
15、255的A口PA0PA7分别与逻辑开关的K1K8相连,其中开关量K7用于判断是否修改时间,K5K6用于判断修改哪一位,K1K4为要修改的值;B口作为段选;C口作为位选段码信号。2.3.2硬件接线原理图图2-6 硬件连线原理图图2-7硬件连接图三、 软件设计思路及程序控制流程框图3.1软件设计思路1、初始化8255A,设置其工作方式。2、设置初值,定义对应十六进制数的七段代码表及其时间区表。3、显示计时并循环判断,当1秒时间到是则秒位加1计时显示。4、8255A芯片个端口地址为:控制端口地址:206HA口地址:200HB口地址:202HC口地址:204H3.2程序流程图的相关说明首先对8255A
16、进行初始化,然后开始读取开关量,判断是否要修改时间,若需修改,则判断需修改哪位,随后将该位对应的时间区数据修改为逻辑开关K1K4对应的值,若不需要修改则继续显示并循环判断,当1秒时间到达时,则秒位加1计时显示。3.3程序控制流程框图开始8255初始化送1秒时间常数数读取开关量修改时间修改秒低位修改秒高位修改分低位修改分高位修改时低位修改时高位显示时间1秒时间秒位加1秒=60秒为00分加1分=60分为00时加1时=23时为00重计时NNN修改日低位修改日高位图3-1程序流程图图3-2中断操作流程图3.4程序清单(见附录)四、 实验环境系统环境:Win-7系统软件环境:Proteus五、 上机调试
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字 接口 报告 8086 微机 原理 技术 课程设计 21
限制150内