微机原理设计报告.

上传人:最**** 文档编号:117064690 上传时间:2019-11-18 格式:DOCX 页数:16 大小:175.56KB
返回 下载 相关 举报
微机原理设计报告._第1页
第1页 / 共16页
微机原理设计报告._第2页
第2页 / 共16页
微机原理设计报告._第3页
第3页 / 共16页
微机原理设计报告._第4页
第4页 / 共16页
微机原理设计报告._第5页
第5页 / 共16页
点击查看更多>>
资源描述

《微机原理设计报告.》由会员分享,可在线阅读,更多相关《微机原理设计报告.(16页珍藏版)》请在金锄头文库上搜索。

1、微机原理课程设计题 目: I/O接口卡设计学 院: 仪器与电子学院 专 业: 测控技术与仪器 指导教师: 陈 鸿 成员姓名:设计日期:2015.6.15-2015.6.28目录一 设计题目及设计要求1. 设计内容2. 设计要求二 设计总体方案三 主要元件1. IBM PC/XT总线简介2. ISA总线简介3. 8255芯片简介4. 驱动器5. LED显示器四工作原理五硬件电路六程序设计及流程图1.流程图2.程序设计七设计心得八参考文献1、 设计题目及设计要求:1. 设计一块I/O卡,该卡具有3个8位I/O口(A、B、C口),利用该I/O卡控制该卡控制一个四位的LED显示器,该卡插在PC机的IM

2、B-PC扩展总线插槽上(ISA),选用8255接口芯片2. 设计要求:画出电路原理图,说明工作原理,编写利用该接口卡对键盘上键入的数字进行显示的程序(当回车键按下前,如果键入的数字的次数大于4时显示最后的4位数)二设计整体方案该接口卡的主芯片是8255芯片,将ISA总线上的地址线A0-A19经过译码作为8255的片选信号,IOR、IOW分别作为8255的读写信号。四位LED显示器采用共阴极接法,将8255的A端口的8个引脚经过驱动器与LED的a-h相连,用C端口的低四位来控制那个LED亮,B端口不使用。三主要元件1.IBM PC/XT总线简介总线在PC/XT机的底板上共有8个插头,称为IMB

3、PC/XT总线。PC/XT总线在每个插槽(扩展槽)配有62个引脚代表各种不同的信号。IBM PC/XT总线的62条引线包括20位地址线、8位数据线、21根控制线、2根状态线和11根辅助线及电源线。每一个插槽对应的引脚均有相同的意义,因此所有的接口卡可插于任何一个插槽上。引脚间隔为2.54mm。2.ISA总线简介ISA总线是IBMPCAT机(CPU是80286)所用的系统总线,这是一个16位兼8位的总线标准。如果忽略标准化细节,则可认为16位ISA总线就是PCAT总线。由于IBMPCAT与IBMPC、IBMPCXT机(CPU都是8088)所用的Pc总线兼容,所以可认为8位ISA总线(16位ISA

4、总的低8位部分)就是PC总线。ISA总线的主插槽与IBM总线的插槽兼容,如下:注意事项:(1)当设计非DMA方式的IO接口时,应把AEN为低作为该接口工作的使能条件,以确保在总线上进行DMA传送时该接口不工作,否则DMA传送时所发出的地址与该接口设计地址相同时该接口会误操作。(2)系统对ISA总线上的IO端口地址采用部分译码方法,只译码A9AO或A10A0,在选择接口地址时应避开系统已占用的地址以及它们的重叠区。(3)原则上讲,在用户自行设计接口插卡时,反未被占用的地址端口都可以使用,但要考虑到系统的现存配置情况,对端口地址的占用要留有余地,以免发生地址冲突。一般用户可使用300H-31FH的

5、地址,这些地址是留作实验卡用的。3.8255芯片简介8255是可编程并行IO口接口芯片。如下图所示:(1)8255具有24个可编程设置的I/O口,即3组8位的I/O口分别为A口,B口和C口.它们又可分为两组12位的I/O口,A组包括A口及C口(高4位,PC4PC7),B组包括B口及C口(低4位,PC0PC3).(2)8255内部有4个寄存器:分别为寄存器A、B、C和控制寄存器。A、B、C寄存器的数据就是引脚PA7PA0、PB7PB0、PC7PC0上输入或输出的数据。其中,1PA0PA7:端口A输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入锁存器。2PB0PB7:端口B输入输出

6、线,一个8位的I/O锁存器,一个8位的输入输出缓冲器。(3) PC0PC7:端口C输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入缓冲器。端口C可以通过工作方式设定而分成2个4位的端口,每个4位的端口包含一个4位的锁存器,分别与端口A和端口B配合使用,可作为控制信号输出或状态信号输入端口。而控制寄存器的数据则表明PA、PB、PC的工作方式。通过CS、A0、A1、RD和WR对4个寄存器进行操作。CS为低电平时选通8255;A1、A0为地址选通。具体如下:当A0=0,A1=0时,PA口被选择;当A0=0,A1=1时,PB口被选择;当A0=1,A1=0时,PC口被选择;当A0=1.A

7、1=1时,控制寄存器被选择.RD和WR为读、写信号:RD为低、WR为高时为读方式,RD为高、WR为低时为写方式。(3)8255引脚功能RESET:复位输入线,当该输入端外于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。CS:芯片选择信号线,当这个输入引脚为低电平时,即/CS=0时,表示芯片被选中,允许8255与CPU进行通讯;/CS=1时,8255无法与CPU做数据传输。RD:读信号线,当这个输入引脚为低电平时,即/RD=0且/CS=0时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。WR:写入信号,当这个输入引脚为低

8、电平时,即/WR=0且/CS=0时,允许CPU将数据或控制字写入8255。D0D7:三态双向数据总线,8255与CPU数据传送的通道,当CPU 执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。(4)8255有三种基本的工作方式:方式0(基本的输入输出方式),方式1(选通输入输出方式),方式2(双向传输方式)。具体如下:1方式0:这种方式不需要任何选通信号。A口、B口及C口的两个4位口中的任何一个端口都可以被设定为输入或输出。输出锁存,输入不锁存;2方式1:这种方式下,A口、B口、C口分为两组。A组包括A口和C口的高4位,A口可由编程设定为输入口或输出口,

9、C口的高四位则用来作为输入/输出操作的控制和同步信号;B组包括B口和C口的低4位,B口可由编程设定为输入口或输出口,C口的低四位则用来作为输入/输出操作的控制和同步信号。A口和B口的输入输出数据都被锁存;3方式2:这种方式下,A口为8位双向总线口,C口PC3PC7用来作为输入/输出操作的控制和同步信号;B口和C口的PC0PC2则可编程为方式0或方式1工作。4.驱动器74LS07同向能够驱动共阴极起端数码管显示,8255C端口为LED显示器的控制端口需用74LS04进行反向驱动。5.LED显示LED数码管的主要部分是七段发光管,分别称为abcdefg,通过七个发光段的不同组合,可以显示0-9和A

10、-F共16个字母数字,从而实现16进制的显示。LED数码管有两种结构,分为共阳极接法和共阴极接法,如为共阴极结构,各字段阴极控制端共接低电平,而各段阳极控制端凡接高电平者便发光。四工作原理首先由I/O卡的RESET将8255A芯片复位,由微机系统的扩展槽中20根地址线来决定8255A片选信号是否选通,由其工作原理图可知A端口地址300H,B端口地址301H,C端口地址302H,控制口地址303H。(为避免地址冲突,因此选用300H-303H)。经MSDOS功能调用从键盘输入一串字符,(调用OAH号功能,输入的字符串可达254个字符,其入口参数为DS:DX,在DX第一个字节必须存放输入字符的最大

11、字节量,第二个单元存放是实际输入字符的个数,字符串本身从第三个字节开始有效,由终止回车符生成的码作为穿的最后一个字符输入。),通过软件设计,不管输入多少个数,始终只显示最后输入的四个数。同时也将由键盘输入的四个ASCII码数转换成相应的BCD码,取个位数,将此BCD码转换成字形码,在将字形码送入到8255A的A端口,而将状态字送入C端口,用来控制哪一个显示器亮,并调用5ms延迟程序。依此类推,取十位,百位,千位进行相同的操作,只是送C端口的数据不同,依次为O7H,O5H,03H、O1H。由于四个显示器依次点亮的时间间隔短,利用发光管的余晖和人眼视觉的暂留作用,使人感觉好像4位LED显示器都在显

12、示(动态显示)。五硬件原理图:六程序设计及流程图1.流程图2.程序设计DATA SEGMENT STRING1 DB “please input char”STRING2 DB 100 DUP (?) STRING3 DB 100 DUP (?)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART : MOV AX,DATA MOV DS,AX ; 数据段寄存器的初始化 MOV AL,80H ; 8255的初始化 MOV DX, 300H OUT DX, AL LEA DX, OFFSET STRING1 MOV AH,09H ; 显示字符串功能 I

13、NT 21HNEXT1: LEA DX, OFFSET STRING2MOV AH,0AH ; 从键盘读入数字INT 21H MOV CL,STRING2+1 ;实际读入的数字的个数送至CL CMP CL,0 JZ NEXT1 ; 没有读入数字则继续等待 MOV SI,DXADD CL,1MOV CH,0 ADD SI,CX MOV AL,SI ; 个位数转化为BCD码 AND AL,0FHLEA DI,OFFSET STRING3 MOV DI,AL DEC SI ; 十位数转化为BCD码 MOV AL,SI AND AL,0FH MOV DI+1,AL DEC SI ; 百位数转化为BCD码 MOV AL,SI AND

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号