第15章 串行通信及接口电路.

Slides:



Advertisements
Similar presentations
第1章第1章 PC/AT 系統 1 Chapter 1 Chapter 1 PC/AT 系統 001.
Advertisements

计算机网络与通信 03 信息安全 李 艇.
第五章 输入输出系统 5.1 概述 5.3 接口 5.3 系统总线 5.4 直接程序传送方式接口 5.5 中断方式与接口
微型计算机原理及应用.
计算机系统.
本投影片檔案僅供本書上課教師使用,非經作者同意請勿拷貝或轉載,謝謝。
输入输出程序设计 输入输出的基本概念 无条件方式输入输出 查询方式输入输出 中断方式输入输出.
微型计算机技术 教 学 指 导(七) 太原广播电视大学 郭建勇.
半导体存储器 第四章 半导体存储器.
序列埠通訊.
通信技术基础 第1章 通信与通信系统的基本概念 王钧铭 1.1 通信的概念 1.2 通信系统 1.3 通信方式 1.4 信道和传输介质
第一章 计算机基础知识 第一节 计算机概述 一、计算机的基本组成和工作原理 二、有关术语 三、计算机发展简史 四、微型计算机概述
加速度計 指導老師 : 洪正瑞 製作人 : 蔡昌佑.
协议宏串行通信 陈建瓴.
CH.2 Introduction to Microprocessor-Based Control
串行通讯的概念 串行通讯:一条信息的各位数据被逐位按顺序传送 的通讯方式称为串行通讯。
第五章 总线 及其形成 本节课之前,大家学习了:
第五章 微处理器总线操作与时序 三、总线时序 一、 8086/8088引脚 二、最小模式和最大模式.
汇编语言与接口技术 教师:范新民.
得技通电子 问题 1 右何者非為假指令 (1) XRL (2) EQU (3) MACRO (4) ORG.
第7章 常用数字接口电路.
9.1 可编程并行输入/输出接口芯片8255A 9.2 可编程计数器/定时器 可编程串行输入/输出接口芯片8251A
微机原理与接口技术 微机原理与接口技术 朱华贵 2015年11月26日.
內容:串列傳輸 實作:Arduino to PC 、 Arduino to Arduino 簡報:廖崇義
Install、Operate Manual
微机原理与接口技术 第2章 8086系统结构 朱华贵 2015年09月17日.
第九章 计数器和定时器电路 第一节 概述 第二节 Intel 8253的控制字 第三节 Intel 8253的工作方式 第九章 计数器和定时器电路 第一节 概述 第二节 Intel 8253的控制字 第三节 Intel 8253的工作方式 第四节 Intel 8253在IBM PC机上的应用.
微机原理与接口技术 微机原理与接口技术 朱华贵 2015年12月10日.
数据通信与计算机网络技术.
第6章 MCS - 51单片机内部定时器/ 计数器 及串行接口 6.1 定时器/计数器的结构及工作原理 6.2 方式和控制寄存器
输入输出与中断 主要内容 CPU与外设之间数据传送方式 中断技术 8086中断系统和中断处理.
科学网 李浪 第4章 物理层 科学网 李浪.
第八章 80C51单片机的串行通信 主要内容:本章主要介绍80C51串行通信相关知识,包括串行通信基本概念,80C51单片机的串行口及其工作方式,以及单片机在双机或多机通信中的应用。
8051's UART mode0 output 通訊二甲 B 洪紹凱.
UART口的第一次接触 MCU起航 QQ:
Wireless Communication
Block diagram BB —逻辑 —音频 —电源管理 HW interface. Block diagram BB —逻辑 —音频 —电源管理 HW interface.
第十章 D/A、A/D转换接口(6学时) 现代计算机接口技术  知 识 概 述  第一节 D/A转换(2学时)
第二部分 PC 微机异步通信适配器的分析和使用 一、PC中的UART 1.INS PC16450/PC16550
第三章 資料連結層 3-1 資料連結層簡介 3-2 訊框化 3-3 通訊連線管理 3-4 流量控制 3-5 滑動視窗法 3-6 錯誤檢出
微机原理与接口技术 第9章 计时/计数接口.
第8章 PCH中的常规接口.
第2章 单片机的结构原理与 简单应用 (课时:10学时).
本 章 重 点 单片机的简单I/O扩展 8255A可编程并口芯片 8279可编程键盘/显示器接口芯片 单片机键盘接口技术
第7章 微型机接口技术 可编程定时/计数器 可编程并行接口 串行接口与串行通信(概念) DMA控制器接口(不做要求) 模拟量输入/输出接口.
JTAG INTERFACE SRAM TESTER WITH C-LCM
第二章 8086/8088系统结构 主要内容 8086/8088微处理器的内部结构 8086/8088 CPU 的引脚与功能
第3章 微型计算机输入输出接口 3.1 输入/输出接口 3.2 输入输出数据传输的控制方式 3.3 开关量输入输出接口 欢迎辞.
第二章 常见网络电缆 以太网常见缆线 设备间接口电缆 用户线.
串行通讯的概念 串行通讯:一条信息的各位数据被逐位按顺序传送 的通讯方式称为串行通讯。
1.3 微型计算机的结构和工作原理.
第 13 章 中断系统.
第二章 模拟量输出通道 本章要点 1.模拟量输出通道的结构组成与模板通用性; 2.8位D/A转换器DAC0832的原理组成及其接口电路
第二章 實體層 2-1 傳輸媒介的種類 2-2 數據傳輸的相關技術 2-3 數位資料與數位訊號 2-4 數位資料與類比訊號
第7章 I/O接口和总线 7.1 I/O接口 7.2 总线.
微机原理与接口技术 微机原理与接口技术 朱华贵 2015年11月19日.
第五章:输入输出基本技术 主讲教师:范新民.
第二章 8086微处理器. 第二章 8086微处理器 微处理器的基本结构 8086微处理器的主要特性和内部结构 8086CPU的工作模式和引脚信号 8086的存储器管理 8086的总线操作和时序.
第九章 MCS-51串行接口 9.1 串行数据通信概述 通 信 并行 一、并行通信和串行通信 串行 串行通信 数据是一位一位传送的
第九章 微处理器外部结构和总线操作时序.
第10章 可编程外围接口芯片8255A及其应用 10.1 概述 A的工作原理 A的应用举例.
5-6 串列埠模式0輸出埠擴充實習.
可编程定时计数器.
键盘 LCD显示器 触摸屏技术 串行总线数据通信 PTR2000无线数据传输
微机原理与接口技术 ——80x86微处理器 西安邮电大学 计算机学院 范琳.
第六章 S3C2410的串口UART及编程 通用异步收发传输器(Universal Asynchronous Receiver/Transmitter)
第二章 8086系统结构 /8086的存储器组织 的系统配置及引脚功能 CPU时序
第三章 半导体存储器及其接口 第一节 概述 第二节 半导体存储器 第三节 半导体存储器与CPU接口 一、存储器的分类
微机原理与接口技术 西安邮电大学计算机学院 宁晓菊.
第8章 并行接口芯片 并行接口一般具有两个或两个以上的8位I/O接口。各个口的工作方式可由程序分别确定或改变,使用灵活,便于和各种外部设备连接。因此,又称可编程的外部接口(PPI) 目前各主要微处理器厂商都有自己的PPI产品,但它们的功能基本类似.
Presentation transcript:

第15章 串行通信及接口电路

15.1 串行通信的基本概念 15.1.1 串行通信的特点: 数据在单条1位宽的传输线上按时间先后一位一位地传送; 节省传输线(优点); 数据传输率较低(缺点); 主要适用于长距离、低速率的通信中。

15.1.2 串行通信涉及的常用术语 1. 单工、半双工和全双工(数据通信的方向性结构) (1)单工(Simplex) 特点:仅能进行一个方向的数据传送 设备A 发送器 设备B 接收器 Data flow

(2) 半双工(Half Duplex) 特点:数据可以在两个方向上进行传送,但是这种传送绝不能同时进行。【双向,但不同时】 设备A 发送器/ 接收器 设备B 接收器/ 发送器 Data flow

(3) 全双工(Full Duplex) 特点:能够在两个方向同时进行数据传送。 设备A 发送器/ 接收器 设备B 接收器/ 发送器

2. 数据传输率 每秒传输的二进制位数,单位为bps(bit per second )也称比特率。 波特率―――每秒传输的“符号”(也称信号码元—Signal Element)的个数。 【例如,每秒传送1个符号,则波特率为1波特】

在计算机中,一个“符号”的含义为高、低两种电平,分别代表逻辑值“1”和“0”,所以每个符号的信息量为1比特,此时波特率与比特率刚好一致。 但在其他一些场合 (例如通信中采用的“相一幅”复合调制技术),一个“符号”的信息含量就不是一个比特,此时,波特率就不等于比特率。

4种相位(0,90,180,270) →实现 3位/信号码元 调制 每种相位有两种振幅值 →实现 3位/信号码元 调制 900 101 001 00 1800 110 010 000 100 011 111 2700 标准 波特率系列:50,75,110,150,300,600,1200,……

现在的电话网是模拟通信系统,它是为传输话音信息而设计的。要在电话网上传送数字信号,必须经过调制和解调。 实现调制和解调两个过程的设备称为“调制解调器”(Modulator Demodulator-Modem)

方法:选取音频范围某一频率的正(余)弦模拟信号作为载波,用以运载所要传送的数字信号。 用传送的数字信号改变载波信号的幅值、频率或相位,使之在信道上传送; 到达信道另一端,再将数字信号从载波中取出。

1 数字信号 (a)调幅 (b)调频 (c)调相 按数字信号的值改变载波信号的幅度 按数字信号的值改变载波信号的频率 按数字信号的值改变载波信号的相位

3. 发送时钟和接收时钟 CLK(主时钟) 数据输入寄存器 (串行数据输入) 输入移位寄存器 输入移位脉冲 ÷1,÷16,÷32 数据输出寄存器 (串行数据输出) 输出移位寄存器 ÷1,÷16,÷32 输出移位脉冲 发送时钟

F(时钟频率)=波特率因子*波特率 4. 波特率因子 波特率因子: 数据传输率(波特率)与时钟频率之间的比例系数. 给定时钟频率,选择不同的波特率因子可得到不同的波特率。 例如:f = 19.2 kHz,若选波特率因子为16,则波特率为1200 bps。 若选定波特率因子和波特率,则相应的确定了对时钟频率的要求。

1200*16=19200(时钟频率)→若外部时钟电路的频率F=1MHz,需用8253分频,试计算分频系数(8253的计数初值)=? 8253计数初值=时钟频率/(波特率*波特率因子)

8251 外部的 时钟电路 1MHz 8253 19.2KHz ÷1,÷ 16,… CLK OUT N分频 移位脉冲

5.异步方式与同步方式 (1) 异步方式(Asynchronous):也称“起止同步式”。 串行异步传输数据格式: 11…1 5-8位数据位 1/0 11…1 5-8位数据位 停止位或空闲位 1… 1 起始位 奇偶校验 第n个字符 空闲位 第n+1个字符 低位 高位

(2)同步方式(Synchronous) 串行同步通信信息格式 同步字符(SYN1) 同步字符(SYN2) 数据(DATA) …

数据场 同步通信的效率(协议开销) 例:SDLC/HDLC帧格式: 假定数据长度为2048位, 通信效率为:2048/(2048+48)=97% 协议开销仅为3% 一般公式:SDLC/HDLC协议开销=1.0-N/(N+48),其中N为发送数据的比特数。 标志 01111110 地址 8位 控制 8位 数据场 CRC 8位 CRC 8位 标志 01111110

15.5 可编程串行通信接口8251A Intel 8251A是通用同步/异步收发器USART (Universal Synchronous Asynchronous Receiver/Transmitter) ,它是专为Intel 微处理器设计的,可用作CPU和串行外设的接口电路。 15.5.1 8251A的基本性能 (1) 可用于同步和异步传送。 (2) 同步传送:5~8位/字符;内部或外部字符同步;可自动插入同步字符。 (3) 异步传送: 5~8位/字符;时钟速率为通信速率的1、16、64倍。

(4) 异步传送时,可产生中止字符(BreakCharacter);可产生1、1 (5) 波特率:异步:DC-19.2K;同步:DC-64K。 (6) 全双工、双缓冲器发送和接收。 (7) 差错检测:具有奇偶错、溢出错和帧格式错等差错检测电路。 (8) 28脚双列直插式封装。 (9) 全部输入输出与TTL电平兼容;单一+5V电源;单一TTL电平时钟;

PROGRAMMABLE COMMUNICATION INTERFACE Intel 8251A PROGRAMMABLE COMMUNICATION INTERFACE n   Synchronous and Asynchronous Operation n Synchronous 5-8 Bit Characters;Internal or External Character Synchronization; Automatic Sync Insertion n   Asynchronous 5-8 Bit Characters; Clock Rate-1,16 or 64 Times Baud Rate; Break Character Generation;1,1.5, or 2 Stop Bits; False Start Bit Detection; Automatic Break Detect and Handling; n    Synchronous Baud Rate -DC to 64K Baud n    Asynchronous Baud Rate -DC to 19.2K Baud n    Full Duplex, double Buffered, Transmitter and Receiver n    Error Detection -Parity, Overrun and Framing n    Fully Compatible with 8080/8085 CPU n    28-Pin DIP Package n    All Inputs and Outputs are TTL Compatible n   Single + 5V Supply n   Single TTL Clock

15.5.2 8251A的结构与引脚功能 1. 8251A 的引脚 8251A有28条引脚,引脚分配如图15.47所示。

图 15.47 8251A的引脚信号 8251A D2 1 28 D1 D3 2 27 D0 RxD 3 26 Vcc GND 4 25 RxC D4 5 24 DTR D5 6 23 RTS 8251A D6 7 22 DSR D7 8 21 RESET TxC 9 20 CLK WR 10 19 TxD CS 11 18 TxEMPTY C/D 12 17 CTS RD 13 16 SYNDET/BRKDET RxRDY 14 15 TxRDY 2 图 15.47 8251A的引脚信号

2. 8251A的结构和工作原理 8251A的结构方块图如图15.48所示。 由图中可看出8251A可分为5个部分。 (1) 接收器 (2) 发送器 (3) 数据总线缓冲器 (4) 调制解调器控制电路 (5) 读写控制逻辑电路

图 15.48 8251A 内部结构框图 内 部 总 线 发送 缓冲器 并-串 转换 发送器 数据总线 缓冲器 发送控制电路 读/写 TXD D7-D0 发送控制电路 TXRDY RESET 读/写 控制逻辑电路 CLK TXEMPTY C/D TXC RD WR 缓冲器 接收 串-并 转换 接收器 CS RXD DSR 调制/解调 控制电路 DTR CTS RXRDY RTS 接收控制电路 RXC SYNDET 图 15.48 8251A 内部结构框图

8251A是CPU与外设之间的接口电路,其对外的接口信号可分为两组: 另一组是与外设之间的接口信号(参见图15.49)。

图 15.49 8251A的对外接口信号 CLK D7-D0 DTR 8086 8251A 外设 DSR M/IO 译码 RTS AB CTS CS TXD C/D RD RD RXD WR WR TXC TXRDY TXE RXC RXRDY SYNDET 计数器/ 定时器 RESET 图 15.49 8251A的对外接口信号

1. 8251A与CPU之间的接口信号 (1) 复位信号RESET (2) 数据线D7~D0 (3) 读写控制信号 (4) 收发联络信号

8251A的读/写控制真值表 CS C/D RD WR 操作 0 0 0 1 CPU从8251A读数据 0 0 1 0 CPU往8251A写数据 0 1 0 1 CPU从8251A读状态 0 1 1 0 CPU往8251A写控制命令 0 × 1 1 D7~D0为高阻态 1 × × × D7~D0为高阻态

2. 8251A与外设之间的接口信号 有四个Modem控制信号DTR、DSR、RTS和CTS。 另外还有四个信号,如下所述: (1) 接收器时钟RXC (2) 发送器时钟TXC (3) 接收数据线RXD (4) 发送数据线TXD

图3-5 V.24/RS-232C 信号连接与定时关系 a)信号线连接 本 地 Modem 远 程 Modem 计 算 机 终 端 1 2 3 4 5 6 7 8 20 22 101 103 104 105 106 107 102 109 108 125 机壳地 发送数据(TXD) 接收数据(RXD) 请求发送(RTS) 允许发送(CTS) Modem就绪( DSR) 信号地(GND) 载波检测(CD) 终端就绪(DTR) 呼叫指示 载波检测 电话线 CCITT 信号名 插脚号 图3-5 V.24/RS-232C 信号连接与定时关系 a)信号线连接

8251A的编程包括两个部分,一个是方式指令字,另一个是命令指令字。 前者用来定义8251A的工作方式,它必须紧接在复位后由CPU写入; 后者用来指定芯片的实际操作,只有在写入了方式选择控制字后,才能由CPU写入。 1. 方式指令字 方式指令字的格式如图15.50所示。

D7 D6 D5 D4 D3 D2 D1 D0 异步 1 同步 S2 S1 EP PEN L2 L1 B2 B1 00 同步方式 01 异步方式(X1) 10 异步方式(X16) 11 异步方式(X64) 00 字符长度为5位 01 字符长度为6位 10 字符长度为7位 11 字符长度为8位 1 带奇偶校验 0 不带奇偶校验 1 偶校验 0 奇校验 异步 无效 1 1位停止位 1.5位停止位 2位停止位 同步 1个同步字符,外同步,SYNDET为输入 1个同步字符,内同步,SYNDET为输出 2个同步字符,外同步,SYNDET为输入 2个同步字符,内同步,SYNDET为输出 图 15.50 8251A的方式指令字

命令指令字的格式如图15.51所示,它直接让8251A实现某种操作或进入规定的工作状态。 2. 命令指令字 命令指令字的格式如图15.51所示,它直接让8251A实现某种操作或进入规定的工作状态。

D7 D6 D5 D4 D3 D2 D1 D0 图 15.51 8251A的命令指令字 EH IR RTS ER SBRK RXE DTR TXEN 1 允许发送 1 进入搜索方式 1 内部复位 1 数据终端准备好 1 允许接收 1 发送中止字符 0 正常工作 1 清除错误标志 1 请求发送 图 15.51 8251A的命令指令字

3. 状态字 CPU可以在8251A工作过程中利用输入指令读取当前8251A的状态字,从而可以检测接口和数据传输的工作状态。 8251A状态字的格式如图15.52所示。

D7 D6 D5 D4 D3 D2 D1 D0 图 15.52 8251A 的状态字 1 发送器准备好 1 数据通信设备准备好 帧格式错标志 DSR SYNDET/BRKDET FE OE PE TXEMPTY RXRDY TXRDY 1 发送器准备好 1 数据通信设备准备好 帧格式错标志 溢出错标志 奇偶错标志 1 接收器准备好 1 发送器空 SYNDET BRKDET 1 已达到同步 0 未达到同步 1 接收到中止字符 0 正常工作 图 15.52 8251A 的状态字

(1) 三个错误标志位PE、OE和FE, PE=1是奇偶校验错;OE=1是溢出错,也称为“超越错”;FE=1是“帧格式错”,它们只对异步方式有效。出现这三种错误时都不中止8251A的工作,它们可以用操作命令字中的ER位来复位。 (2) RXRDY、TXE(TXEMPTY)和SYNDET/BRKDET位与同名引脚的状态含义相同,此处不再重述。 (3) DSR位是数据通信设备准备好状态位, DSR=1表示调制解调器或其他外设已处于准备好状态,此时DSR输入信号有效。

通常TXRDY状态位提供CPU查询,而TXRDY引脚的输出信号作为中断请求信号发给CPU。 (4) TXRDY是发送器准备好位,它与输出引脚TXRDY的含义有所不同。 TXRDY状态位为“1”只反映当前发送缓冲器已空,而TXRDY输出引脚为“1”时,除发送缓冲器已空外,还需要以CTS=0和TXEN=1为条件,即存在如下逻辑关系: 输出引脚TXRDY为“1”=发送缓冲器空 ·(CTS=0)·(TXEN=1) 通常TXRDY状态位提供CPU查询,而TXRDY引脚的输出信号作为中断请求信号发给CPU。

4. 8251A的初始化及数据传送流程图 8251A的初始化及数据传送流程图如图15.53所示。

图 15.53 8251A 初始化和数据传送流程图 Y N Y N Y N N Y RESET 输出方式指令字 异步方式? 输出第一个同步字符 Y 是单同步? N 输出第二个同步字符 输出命令指令字 Y 有复位命令否? N 传送数据 输出命令指令字或输入状态字 N 数据完否? Y 图 15.53 8251A 初始化和数据传送流程图

8251A的初始化编程必须在复位操作之后,先设置方式指令字; 如果设定在异步方式,则马上要输出命令指令字进行设置,然后才能进行数据传送; 在数据传送过程中,也可使用命令指令字进行某些操作设置或读取8251A的状态; 在数据传送结束时,若使用IR位为“1”的内部复位命令使8251A复位,则它又可重新接收方式指令字,从而改变工作方式完成其他传送任务。

如果设定8251A工作在同步方式,那么在输出方式指令字后,应紧跟着输出一个同步字符或两个同步字符,然后再输出命令指令字,后面的操作与异步方式相同。

5. 编程举例 (1) 异步方式下的初始化编程 设定8251A工作于异步方式,波特率因子为64,每字符7个数据位,偶校验,2位停止位,则方式指令字为11111011=FBH。 操作命令字的设定,例如使8251A的发送器允许,接收器允许,使状态寄存器中的3个错误标志位复位,使数据终端准备好信号DTR输出低电平,则命令指令字应为00010111=17H。

MOV AL, 0FBH ; 输出方式指令字 若8251A的端口地址为50H、51H,则本例初始化程序如下: OUT 51H, AL MOV AL, 17H ; 输出命令指令字

(2) 同步方式下的初始化编程举例 8251A工作于同步方式,双同步字符,同步字符设定为16H,内同步,偶校验,每字符7个数据位,则方式指令字为00111000B=38H。 命令指令字设定为10010111B=97H,使发送器允许,接收器允许,使错误标志复位,开始搜索同步字符,并通知调制解调器,数据终端设备已准备就绪。

8251A的端口地址为50H、51H,则本例初始化程序如下: MOV AL, 38H ; 输出方式指令字 OUT 51H, AL MOV AL, 16H ; 输出两个同步字符16H OUT 51H, AL MOV AL, 97H ;输出命令指令字 OUT 51H, AL CPU执行上述程序之后,即完成了对8251A同步方式的初始化编程。

15.5.5 8251A 的应用 1. 利用8251A实现与终端的通信 2. 利用8251A实现双机通信

由于是近距离通信,因此不用Modem,两台微机直接通过RS-232C相连即可,且通信双方均作为数据终端设备DTE;由于采用EIA RS-232C接口标准,所以需要加接电平转换电路。 通信时假设对方已准备好,所以可不使用四根联络信号(指DTR,DSR,RTS,CTS),仅使8251A的CTS接地即可。 甲乙两机可进行半双工或全双工通信。CPU与接口之间可按查询方式或中断方式进行数据传送。 本例采用半双工通信,查询方式,异步传送。

8251A 8251A EIA/ TTL 电 平 转 换 EIA/ TTL 电 平 转 换 系统主时钟 系统主时钟 甲机 乙机 8251A DTE DTE CLK 8251A EIA/ TTL 电 平 转 换 EIA/ TTL 电 平 转 换 CLK TxD 时钟电路 TxD 2 2 TxD TxD TxC RxD 3 3 RxD RxD RxD RxC CPU 总线 GND 7 7 CPU总线 CTS CTS DSR DSR DTR DTR RTS TxC RS-232C接口 RTS RxC 时钟电路 图 15.55 利用8251A进行双机通信硬件连接图

(1) 发送端初始化程序及控制程序如下所示(设在此之前已对8251A进行了复位操作): START: MOV DX, 8251A控制端口号 MOV AL, 7AH ; 输出方式指令字,异步方式,7位数据位,1位停止位 OUT DX, AL ; 偶校验,波特率因子为16 MOV AL, 11H ;输出命令指令字,发送器允许,错误标志复位 OUT DX, AL MOV SI, 发送数据块首地址 MOV CX, 发送数据块字节数 NEXT: MOV DX, 8251A控制端口号 IN AL, DX ;输入状态字 TEST AL, 01H ; 查询状态位TXRDY是否为“1” JZ NEXT ; 发送未准备好,则继续查询 MOV DX, 8251A数据端口号 MOV AL, [SI] ; 发送准备好,则从发送区取一字节数据发送 INC SI ; 修改地址指针 LOOP NEXT ; 未发送完,继续 HLT

(2) 接收端初始化及控制程序如下所示(设在此之前已对8251A进行了复位操作): BEGIN: MOV DX, 8251A控制端口号 MOV AL, 7AH ; 输出方式指令字 OUT DX, AL MOV AL, 14H ; 输出命令指令字 MOV DI, 接收数据块首地址 MOV CX, 接收数据块字节数 L1: MOV DX, 8251A控制端口号 IN AL, DX ; 输入状态字 TEST AL, 02H ; 查询状态位RXRDY是否为“1” JZ L1 ; 接收未准备好,则继续查询 TEST AL, 08H ; 检测是否有奇偶校验错 JZ ERR ; 若有错,则转出错处理 MOV DX, 8251A数据端口号 IN AL, DX ; 接收准备好,则接收一个字节 MOV [DI], AL ; 存入接收数据区 INC DI ; 修改地址指针 LOOP L1 ; 未接收完,则继续 HLT

8251A初始化的补充说明(关于先写3次“0”的问题) MOV DX, 2B9H MOV AL, 0 OUT DX, AL ; OUT DX, AL ;向8251A 写3次“0” MOV AL, 40H ;内部复位 OUT DX,AL MOV AL, 4EH ; 方式指令字 OUT DX, AL; MOV AL, 27H ; 命令指令字 OUT DX, AL

Intel 8251A PROGRAMMABLE COMMUNICATION INTERFACE A Reset Operation (internal or external) will return the 8251A to the Mode instruction format. Note: Internal Reset on Power-up: When power is first applied ,the 8251A may come up in the Mode, Sync character or Command Format. To guarantee that the device is in the Command instruction format before the Reset command is issued. It is safest to execute the worst-case initialization sequence (sync mode with two sync characters). Loading three 00Hs consecutively into the device with C/D=1 configures sync operation and writes two dummy 00H sync characters. An internal Reset command (40H) may then be issued to return the device to the “idle” state.

第15章 作业 P548 第35题 第36题