




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第二章 基本输入输出接口技术,刘明芹 机械电子工程系 2010年3月,常用的接口电路主要有以下两类:,1、通用接口包括并行接口、串行接口、中断管理接口、定时/计数接口等。,2、专用接口主要有A/D、D/A转换接口、多路转换器等。,串行接口是指面向设备一侧的数据输入和输出只有一根通信电线,数据按通信规程约定的编码格式一位接一位的串行传送。,通用接口有并行接口、串行接口。,并行接口是指从接口输入和向接口输出数据,都是按一个字或一个字节所包含的全部位数同时并行传输;,一、通用并行I/O接口,2.1 并行I/O接口芯片 一、8255A的内部结构及外部引脚 1、8255A的内部结构,2、8255A的外部
2、引脚 3、8255A端口编址与读写操作,二、8255A的控制字与初始化编程 1、方式选择控制字,举例1:现有四种简单外设: 一组8位开关 2)一组8位LED指示灯 3) 一个按钮 4)一个蜂鸣器 要求: 用8255作为接口芯片,将这些外设构成一个简单微机系 统,画出接口连线图并写出8255相应控制字。 分析 :控制字为:10000011B,2、C口按位置0/置1控制字 注意:C口的按位置1/置0控制字对C口进行操作,但此控制字必须写 入控制口,而不写入C口,举例2 用C口置位/复位功能,使8255的PC3端口输出一个正脉冲(脉冲宽度不计),其中:8255的地址为 60H-63H Mov AL
3、, 00000110B Out 63H, AL Mov AL, 00000111B Out 63H,AL Mov AL , 00000110B Out 63H, AL 思考题:将PC口的PC3置0,将PC6置1,编写程序实现, 其中:8255A的地址为60H-63H。,三 、8255A的工作方式 8255A有3种工作方式: 方式0:基本型输入/输出 方式1:选通型输入/输出 方式2:双向数据传送方式 其中:PA口可以工作在方式0、1、2; PB口可以工作在方式0、1; PC口可以工作在方式0,除此之外PC口还可以配合PA 作为控制信号。,1、方式0: 8255A的三个端口都可以工作于方式0,C
4、PU与端口之间交换数据 可直接有CPU执行INOUT指令来完成,不用提供联络信号。,举例1:8255A的A口和B口工作在方式0,A口为输入端口,接有 四个开关;B口为输出端口,接有一个七段发光二极管,其硬件 线路如上图所示,试编程序要求七段发光二极管显示开关所拨 通的数字,8255端口地址20H-23H。 Data segment mov si ,offset tab1 Tab1 db 3fh,06h,05h mov bx,0 mov bl,al Data ends mov al,bx+si Code segment out 21h,al Assume cs:code,ds:data mov
5、cx,200h Start:mov ax,data addr2: dec cx mov ds,ax jnz addr2 mov al,90h jmp addr1 out 23h,al code: ends Addr1:in al,20h ends start and al,0fh,方式1:选通型输入/输出方式 工作在方式1,端口与外设之间需要联络信号,8255 将借用C口来完成CPU与外设间的联络,CPU与8255A之间 可以用中断或查询的方式交换信息。 若PA口工作于方式1,PB口工作于方式0,PC口三条线 作为控制线配合PA口工作。 若PA口工作于方式0,PB口工作于方式1,PC口三条线
6、作为控制线配合PB口工作。 若PA口工作于方式1,PB口工作于方式1,PC口六条线 作为控制线配合PA口、PB口工作。,(1)方式1输入,(2)方式1输出,举例2 :PA口工作于方式1,采用查询的方式,通过8255A把CPU中的数据输出 到打印机上,连线如图所示。 三个主要信号线:BUSY:表示打印机是否处于忙状态,高电平有效。 /DATASTB:打印机选通信号,当该电平有效时,将CPU数据输出到打印机 /ACK:是打印机的应答信号,当打印机接收完字符后发此信号,假设PA端口用PORTA表示,PB端口用PORTB表示,PC端口 用PORTC表示 , 控制端口用PORTCR表示 。编程实现将缓冲
7、 区BUFF中的500个字符数据送打印机打印。 MOV AL , 08AH OUT PORTCR , AL MOV CX , 500 MOV DI ,OFFSET BUFF LOOP1: MOV BL,DI NEXT: IN AL , PORTC TEST AL , 10H JNZ NEXT Mov AL,BL OUT PORTA , AL INC DI DEC CX JNZ LOOP1,举例2:PA口工作于方式1,采用中断的方式,通过8255A把CPU中的数据输出 到打印机上,连线如图所示。 如图所示:由CPU控制PC4产生选通脉冲,PC4作输出用,PC3作为中断请求INTR, 由/ACK信
8、号上升沿,向CPU提请中断。,如图,已知:8255工作在中断方式,设8255地址为80H-83H,将数 据缓冲BUFF中的数据送打印机打印,中断向量设为1000H:2000H, 中断类型号为0BH,编程实现打印功能。 MAIN : MOV AL , 10100000B INTERRUT: MOV AL , DI OUT 83H , AL OUT 80H , AL MOV AL , 00001001B MOV AL , 00001000B OUT 83H , AL OUT 83H , AL XOR AX , AX MOV AL , 00001001B MOV DS , AX OUT 83H ,
9、AL MOV AX , 2000H . MOV WORD PTR 002CH , AX IRET MOV AX , 1000H MOV WORD PTR 002EH , AX MOV AX , 00001101B OUT 83H , AX STI,二、微机系统串行I/O接口,2.2 串行通信基础 一、串行通信类型 1、串行异步通信:指一帧字符用起始位和停止位来完成收发 同步.,2、串行同步通信:是靠同步字符来完成收发双方同步.,二、串行数据传送方式 1、单工方式 2、半双工方式 3、全双工方式,三、串行异步通信协议 1、一帧数据的格式 起始位 数据位 奇偶校验位 停止位 2、通信速率:又称波特
10、率,指每秒钟传送0、1代码的个数。,2.3可编程串行通信接口芯片8251A 一、 8251A的内部结构及引脚功能,二、8251A的工作原理 1、异步接收方式: 2、异步发送方式: 3、同步接收方式: 4、同步发送方式:,三、8251A的命令字与初始化编程 1、 8251A的命令字 1)方式选择命令字,2)工作命令字,3)状态字,4)8251A初始化流程图 2、8251A的编程举例 举例1:要求8251A作为外同步通信接口 数据位8位,两个同步方式字符,偶校验 方式选择字为 01111100B,举例3:要求异步方式下,波特率因子为16,8位数据位, 1位停止位,在异步方式下,输入50个字符,采用查询状 态字的方法,在程序中对状态寄存器的RXRDY测试,查询 8251A是否从外设接收一个字符。 MOV AL,40H MOV DI, 0 OUT PORTE,AL MOV CX,32H MOV AL,4EH INPUT: IN AL,PORTE OUT PORTE,AL TEST AL,02H MOV AL,37H JZ INPUT OUT PORTE,AL IN AL,PORTD MOV BX,OFFSET BUFFER MOV BX+DI,AL INC DI DEC CX JNZ INPUT,三、键盘和显示器的结构和工作原理,图 5-1按键的抖动干扰,有键盘的抖
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论