用定时器控制的发光二极管显示器设计.doc_第1页
用定时器控制的发光二极管显示器设计.doc_第2页
用定时器控制的发光二极管显示器设计.doc_第3页
用定时器控制的发光二极管显示器设计.doc_第4页
用定时器控制的发光二极管显示器设计.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

微机原理课程设计学 院: 信息与通信工程学院 专 业: 测控技术与仪器 题 目:用定时器控制的发光二级管显示器设计指导教师: 陈 鸿 成员姓名:0905034111 李婷婷 0905034112 唐燕林 0905034114 刘宁 0905034115 孙伟哲 0905034116 冯欣哲1、 设计内容:设计一块I/O卡,该卡具有一个定时器和3个8位I/O口(A、B、C口),其中A口外接8个按键,B口外接8个发光二极管,该卡插在PC机的IMB-PC扩展总线插槽上(ISA),选用8255接口芯片。(定时器:8253)2、 设计要求:画出电路原理图,说明工作原理,编写一个程序,用定时器控制设计定时控制B口上的发光二极管依次亮,当A口上的不同键(1#-8#)按下后,其发光管亮灭周期不同。3、 主要元器件 1.8255芯片 8255引脚图 8255是可编程并行I/O接口芯片,有3个8位并行I/O口。它作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址线、控制线接口。同时必须具有与外设连接的接口A、B、C口。 由于8255可编程,所以必须具有逻辑控制部分,因而8255内部结构分为3个部分:与CPU连接部分、与外设连接部分、控制部分。 8255能并行传送8位数据,所以其数据线为8根D0D7。由于8255具有3个通道A、B、C,所以只要两根地址线就能寻址A、B、C口及控制寄存器,故地址线为两根A0A1。此外CPU要对8255进行读、写与片选操作,所以控制线为片选、复位、读、写信号。各信号的引脚编号如下: (1)数据总线DB:编号为D0D7,用于8255与CPU传送8位数据。 (2)地址总线AB:编号为A0A1,用于选择A、B、C口与控制寄存器。 (3)控制总线CB: CS:芯片选择信号线,当这个输入引脚为低电平时,即/CS=0时,表示芯片被选中,允许8255与CPU进行通讯;/CS=1时,8255无法与CPU做数据传输. RD:读信号线,当这个输入引脚为低跳变沿时,即/RD产生一个低脉冲且/CS=0时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。 WR:写入信号,当这个输入引脚为低跳变沿时,即/WR产生一个低脉冲且/CS=0时,允许CPU将数据或控制字写入8255。 D0D7:三态双向数据总线,8255与CPU数据传送的通道,当CPU 执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。 各通道的引脚编号如下: (1) A口:编号为PA0PA7,用于8255向外设输入输出8位并行数据。 (2) B口:编号为PB0PB7,用于8255向外设输入输出8位并行数据。 (3) C口:编号为PC0PC7,用于8255向外设输入输出8位并行数据,当8255工作于应答I/O方式时,C口用于应答信号的通信。 2. ISA总线 ISA引脚图 ISA总线是在早期IBM PC/XT总线基础上发展起来的,IBM PC/XT总线具有62条引线,分为A、B两面,其中包括20位地址总线、8位数据总线,4个DMA通道的联络信号和6个中断请求输入端,还有存储器读写信号、I/O读写信号、时钟信号、地址锁存信号、电源和地等众多信号。ISA总线也称为AT总线,产生于二十世纪八十年代初,最初是为16位的AT系统设计的。当前,微型机系统中已经不再采用单一的ISA总线,但是,为了和大量的ISA适配卡兼容,所以,即使以Pentium为CPU的当前最先进的微型机系统中,也仍然通过“桥”来扩展出ISA总线。ISA有主槽和附加槽组成,每个槽都有正反两面插脚。主槽有A1A31、B1B31、共62脚,这就是IBM PC/XT系统中的62芯总线槽;附加槽有C1C18、D1D18、共36脚。两个槽共98脚。A面和C面主要连接数据线和地址线,B面和D面则主要连接其他信号,包括+12V、+5V电源、地、中断输入线和DMA信号线等各种信号。这种设计时数据线和地址线尽量和其他信号分开,减少干扰。 3.8253芯片 8253引脚图 8253内部有三个计数器,分别成为计数器0、计数器1和计数器2,他们的机构完全相同。每个计数器的输入和输出都决定于设置在控制寄存器中的控制字,互相之间工作完全独立。每个计数器通过三个引脚和外部联系,一个为时钟输入端CLK,一个为门控信号输入端GATE,另一个为输出端OUT。 8253的3个独立的计数通道,采用减1计数方式。在门控信号有效时,每输入1个计数脉冲,通道作1次计数操作。当计数脉冲是已知周期的时钟信号时,计数就成为定时。 8253中各通道可有6种可供选择的工作方式, 以完成定时、计数或脉冲发生器等多种功能。 8253 各寻址信号组合功能8255端口地址如下:信 号 线名 称编 址 A口 60HI O Y 0 B口 61H C口 62H 控制寄存器 63H8253端口地址如下: 信 号 线名 称编 址 计数器0 70HI O Y 4 计数器1 71H 计数器2 72H 控制寄存器 73H8255部分电路: 8255连接图四、硬件设计 开始五、流程图 :Y8253赋原始初值30NNNNNNNYYYYYYYNYBH=170BH=150BH=130BH=190BH=1100BH=90BH=700DX B口地址AH左移1位BH=50AL=07FH读A口地址初始化B端口并点亮一个灯AL=0BFHAL=0DFHAL=0FDHAL=0FEHAL=0EFHAL=0F7HAL=0FBHAL=0FFH调用8253定时子程序初始化A端口 8253定时子程序NY开始查询现行计数值POP CXPOP BXAX=0000H计数器1的初始化 计数计数器0的初始化初值8000,分频PUSH BXPUSH CX结束6、 程序设计CODE SEGMENT ASSUME CS:CODE START: MOV AL,90H ;初始化8255 A口输入 B口输出 均工作于方式0 MOV DX,63H OUT DX,AL MOV BH,30 ;给8253赋原始初值 MOV DX,61H MOV AH,0FEH ; BB: MOV AL,AH ; OUT DX,AL ;初始化B端口并点亮一个灯 CALL WTIME ;调用8253定时子程序 ROL AH,1 MOV DX,60H IN AL,DX ;读A端口 CMP AL,0FFH ; 判断开关状态 MOV DX,61H JZ BB ; 无开关按下继续检测 CMP AL,0FEH ; 第一个开关按下? JNZ NEXT1 ;不是则判断下一个开关 MOV BH,50 ; 赋计数初值 JMP BB NEXT1: CMP AL,0FDH ;第二个开关按下? JNZ NEXT2 MOV BH,70 JMP BB NEXT2: CMP AL,0FBH ;第三个开关按下? JNZ NEXT3 MOV BH,90 JMP BB NEXT3: CMP AL,0F7H ;第四个开关按下? JNZ NEXT4 MOV BH,110 JMP BB NEXT4: CMP AL,0EFH ;第五个开关按下? JNZ NEXT5 MOV BH,130 JMP BB NEXT5: CMP AL,0DFH ;第六个开关按下? JNZ NEXT6 MOV BH,150 JMP BB NEXT6: CMP AL,0BFH ;第七个开关按下 ? JNZ NEXT7 MOV BH,170 JMP BB NEXT7: CMP AL,7FH ;第八个开关按下? MOV BH,190 JMP BB WTIME PROC NEAR ;定义一个8253定时近程序 PUSH BX ;保护BX原来的内容 PUSH CX ;保护CX原来的内容 MOV DX,73H ;控制端口地址 MOV AL,36H OUT DX,AL ;对计数器0写入控制字 MOV AL,54H OUT DX,AL ;对计数器1写入控制字 MOV DX,70H MOV AL,8000 OUT DX,AL MOV AL,AH OUT DX,AL ;对计数器0输入计数初值 MOV DX,71H MOV BL,BH MOV AL,BL OUT DX,AL ;对计数器1输入计数初值 NEXT: MOV AL,45H ;锁存 计数/定时器1命令 MOV DX,73H ;控制端口地址 OUT DX,AL ;发锁存命令 MOV DX,71H ;计数/定时器1IN AL,DX; ;读取计数/定时器的低8位MOV AH,AL ;保存低8位IN AL,DX ;读取计数/定时器的高八位XCHG AH,AL ;将计数器置于AX中CMP AX,0000HJNE NEXTPOP CX ;恢复原来CX内容 POP BX ; 恢复原来BX的内容 RET WTIME ENDP ;8253定时子程序结束 CODE ENDS END START七、课程设计心得:通过本次课程设计,我们初步掌握了8255A芯片和8253芯片的基本使用方法,对汇编语言有了一定的了解,具备了一定的使用能力。在初期讨论设计思路的过程中,大家提出了多种实现电路功能的思路,经过讨论最终选择了一种更容易实现的思路,在有了大体的设计思路之后,在连接电路原理图时又遇到了困难,让我们认识到了熟练掌握芯片管脚属性的重要性,在解决为8253计数器提供合适的工作脉冲的时候,由于ISA主频为8MHZ,在讨论如何降低频率的过程中大家积极讨论,最终选择了使用一

温馨提示

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

评论

0/150

提交评论