- 1、本文档共336页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机接口 第五章常用接口芯片简介改概要
§2.2并行通信和并行接口8255A 一、可编程接口芯片概述 串行通信和并行通信比较 距离:并行——近距离传送(通常小于30米) 串行——远距离传送(几米~数千公里) 速度:二者的传送速率与距离成反比,但在 短距离内并行传输速度快得多。 设备费用:随着大规模和超大规模集成电路 的发展、逻辑器件价格趋低,而通信线路费 用趋高,因此对远距离通信而言,串行通信 的费用显然会低得多。另一方面串行通信还 可利用现有的电话网络来实现远程通信,降 低了通信费用。 A、B口都设为方式1输入, C口的 联络信号有: STB#——选通信号,由外设输入。 =0时,将外设数据送入8255的输 入锁存器。 A组对应PC4;B组对 应PC2。 IBF——输入锁存器满信号,由 8255A输出。=1时通知外设输入的数据已写入 缓冲器,此时不能送下一个数据。 此信号由STB#的前沿产生。CPU 用IN指令取走数据后(RD#的后 沿),此信号被清除。 A组对应 PC5;B组对应PC1。 例1:8255A的初始化 MOV DX,387H ;设控制口地址 MOV AL,82H ;1 00 0 0 0 1 0 OUT DX,AL ;输出控制字 XOR AL,AL ;A口输出全0 MOV DX,384H ;设A口地址 OUT DX,AL ;输出到A口 (1)控制字的设置 8255A的负载能力较小,PA输出口加驱动。 PA口设为方式0输出,PB口设为方式0输入。 由于地址总线的A0位未用,则8255A的每个 端口有两个地址。通常使用A0=0的地址。 方式选择控制字为:1000×01×B 因未使用C口,故不需设置置位/复位控制字。 还将A2~A0的编码送入地址锁存器选择指定的 输入通道上的模拟信号进行转换。EOC引脚通 过一个三态门接到数据总线中的D7构成一个状 态口,它的I/O端口地址为308H。编写下页图 中的A/D转换程序,具体要求如下: ① 顺序采样IN0~IN7 8个输入通道的模拟信号; ② 结果依次保存在ADDBUF开始的八个内存 单元中; ③ 上述采样每隔100ms循环一次。设DELAY 是一延时100ms子程序。 CI7: OUT DX, AL ;0FFH写入低8位 OUT DX, AL ;0FFH再写入高8位 MOV AL, 01H ;读前破坏AL原内容 IN AL,DX;读出刚才写入通道的低8位 MOV AH, AL ;保存到 AH IN AL,DX ;再读出写入的高8位 CMP BX,AX ;读出的与写入的比较 JE C18 ;相等则转C18,转入下一寄存器 HLT ;不等,则出错 C18:INC DX;通道口地址十l,指向下一个通道检测 LOOP C17;未完,继续检测,第一个循环过程作全 ;“1”检测,第二个循环过程作全“0”检测 INC AL;第一个循环过程结束,使AL=0(FFH+l=0) JE C16;AL=0表示第一个循环过程结束,返回开始 ;第二个循环过程 ;AL≠0到此第二个循环过程结束,表示全“1”和全“0” ;检测通过,以下开始设置命令字 SUB AL,AL;命令字00H, DACK为低电平,写滞后读, ;DREQ为高电平,固定优先级,芯片工作允许, ;禁止0通道寻址保持,禁止M →M传送,正常定时。 OUT DMA+8,AL;控制字送命令寄存器 ;以下为各通道方式寄存器加载 MOV AL,40H;通道0方式字,单字节传送方式,DMA校验 OUT DMA+0BH,AL ;控制字送模式寄存器 MOV AL,41H ;通道 1方式字 OUT DMA+0BH,AL ; MOV AL, 42H ;通道2方式字 OUT DMA+0BH,AL MOV AL, 43H ;通道 3方式字 OUT DMA+0BH,AL 例3:在IBM PC机上利用8237从一个12位数模转 换器芯片(DAC)输出一个任意电压波形,可 以把8237的DACK3连到DAC的片选线(于 是8237的通道3将输出数据到(DAC),把一 个时钟信号连到DREQ3(于是每个时钟脉 冲就会有一个请求输入信号)。定义电压
文档评论(0)