- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
8.3 可编程并行通信接口芯片8255A 二、 8255A芯片的控制字及其工作方式 方式0-基本的输入/输出方式 方式1-选通输入/输出方式 方式2-双向传送方式。 端口A可处于3种工作方式:0、1、2 端口B只可处于2种工作方式:0、1 端口C常常分为高4位和低4位,分别传送数据和控制信息。 1. 控制字 (1)定义工作方式控制字: (2)置位/复位控制字:只对端口C有效。 端口A和端口B可定义为输入端口或输出端口,端口C分成两个四位端口,他们可分别定义为输入或输出端口。 CPU和3个端口交换数据可以直接由CPU执行IN和OUT指令来完成。 适用场合:各种同步并行传送系统中。用于连接简单的外设,如键盘、开关、发光二极管等。 在某一8086系统中接有一个打印机,8255A作为输出接口。工作在方式0,试编一程序将寄存器CL中的内容传送到打印机打印。 setup: mov al,81h ;设置工作方式 out 0d6h,al mov al,0dh ;置PC6为1,即STB为高电平 out 0d6h,al lpst: in al,0d4h ;读C口数据 and al,04h ;测试busy线(PC2) jnz lpst ;busy=1,循环测试 mov al,cl out 0d0h,al ;不忙将CL中字符送端口A mov al,0ch ;PC6置0 out 0d6h,al inc al ; mov al, 0dh out 0d6h,al ;将字符选通到打印机输入缓冲器中 8.4 串行通信及串行接口 串行接口典型结构 (2)面向比特型的数据格式:以帧为单位传输,每帧由6部分组成。 图4 端口B方式 1 输入对应的控制信号 当端口A和端口B均定义为工作方式1完成输入操作时,端口C的PC5~PC0被用作控制信号,只有PC7和PC6可以完成数据输入或输出操作。 INTE A PB7 ~ PB0 PC2 PC1 PC0 STBB IBFB INTRB O RD 驱动 PC6 PC2 STB BUSY 8086 D7~D0 PA7~PA0 8255A 打印机 设8255A的端口地址为: A端口 00D0H ; B端口 00D2H C端口 00D4H ; 控制口 00D6H 现将A口作为传送字符的通道,工作于方式0,输出方式,B端口未用,PC2作为BUSY信号的输入端,故PC3~PC0为输入方式,PC6作为STB信号输出端,故PC7~PC4为输出方式。 1、D7~D0:8条数据引脚 2、STB:打印机数据选通 3、BUSY:打印机忙 三、8255A并行接口应用举例 D7 D0 ~ A口:方式0、输出数据 PC3~PC0:方式0、输入 PC7~PC4:方式0、输出 方式控制字为:=81H 将PC6置位控制字为:=0DH 将PC6复位控制字为:=0CH ……. 一、 基本概念 串行通信:串行通信指数据是一位一位按顺序传送的通信方式,它的突出优点是只需一对传送线(利用电话线就可作为传送线),线路简单。 适用场合:计算机之间和计算机与外部设备之间的远距离通信。 缺点:通信速度比较慢。 二、串行通信线路的工作方式(3种) * * code segment assume cs:code,ds:code start:jmp start1 sty1 db -1,-128,0,0,0,1,15,7,127 nm db 0;负数 zm db 0;零 pm db 0;正数 start1:mov ax,cs mov ds,ax mov cx,9 lea bx, sty1 aa: mov al,[bx] cmp al,0 jge l1 inc nm jmp bb l1:jg l2 inc zm jmp bb l2:inc pm bb:inc bx loop aa code ends end start ;mov cx,nm-sty1 执行前8100:0000 XX XX XX FF 80 00 00 00 01 0F 07 7F 00 0
文档评论(0)