[工学]4 串行接口技术.ppt_第1页
[工学]4 串行接口技术.ppt_第2页
[工学]4 串行接口技术.ppt_第3页
[工学]4 串行接口技术.ppt_第4页
[工学]4 串行接口技术.ppt_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

4 串行通信技术及接口 *1 并行通信和串行通信 计算机 计算机 或 外设 计算机 计算机 或 外设 发送 接收 选通 就绪 串行通信并行通信 微机与外界的信息交换称为通讯。基本的通讯方式有 并行通信和串行通信两种。 Date2 串行通信的特点 w 串行通信是主机与外设交换信息的一种方式。 w 串行通信中字节数据经一条传输线按位串行发 送与串行接收。 w 串行通信节省通信线路,可远距离传送,成本 低,广泛应用在通信及计算机网络系统中。 w 串行通信中,数据传输速率低,控制较复杂。 Date3 串行通信基本概念 w 发送时钟和接收时钟 w 发送时钟用来控制串行数据的发送。数据发送 过程是:把并行的数据序列送入移位寄存器, 然后通过移位寄存器,由发送时钟触发进行移 位输出,数据位的时间间隔取决于发送时钟周 期。 Date4 串行通信基本概念 w 发送时钟和接收时钟 w 接收时钟用来控制串行数据的接收,数据接收 过程是:把由传输线送来的串行数据序列,用 接收时钟作为输入移位寄存器的触发脉冲,逐 位打入移位寄存器,最后装配成并行数据序列 。 Date5 串行通信的数据传送方式 全双工、半双工、单工 单工:通信一方为发送器,另一方为接收器, 用一条传输线相连, 进行单向传输。 A B 发送器 接收器 单工 Date6 半双工:通信双方均有发送器和接收器,经一 条传输线相连, 在某一时刻双方只能一个方 向传输信息,线路切换后可改变传输方向 。 A B 半双工 发送器 发送器 接收器接收器 串行通信的数据传送方式 Date7 串行通信的数据传送方式 全双工:通信双方均有发送器和接收器,经两条独立的 传输线相连, 双方可同时接收与发送。 A B 全双工 发送器 发送器 接收器接收器 计算机主机与外设之间的串行通信,多采用全双工 方式。 Date8 校验方式 w 串行通信不论采用何种方式,都应能保证高效 率而无差错地传送数据。在任何一个远距离通 信线路中,都不可避免地存在噪声产生的干扰 而造成传送出现差错。因此,对传送的数据进 行校验就成了串行通信中必不可少的重要环节 。常用的校验方式有两种:奇偶校验和CRC校验 。 Date9 奇偶校验 用奇偶校验方式发送时,在每个字符的最高位之后都附 加一个奇偶校验位,这个校验位可为“1”或“0”,以便 保证整个字符(包括校验位中的“1”的个数为偶数(偶 校验)或为奇数(奇校验)。接收时,按照双方所约定的 奇偶校验规则,对接收到的每个字符进行校验。例如:发 送按偶校验产生校验位,接收也必须用偶校验进行校验。 当发现接收到的字符中“1”的位数不为偶数时,便出现 了奇偶校验错,接收器可向CPU发出中断请求,或使状态 寄存器相应位置位供CPU查询,以便进行出错处理。 这种校验方法主要用于单个字符传送过程的校验。 Date10 CRC校验 w 循环冗余码校验CRC(Circle Redundancy Check) : w 对数据块传送的校验方法 发送时,根据编码理论对发送的串行二进制序列按某种算 法产生一些校验码,并将这些校验码放在数据信息之后一同 发出。在接收端将接收到的串行数据信息按同样算法计算校 验码,当信息位接收完之后,接着接收CRC校验码,并与接 收端计算得出的校验码进行比较,若相等则无错,否则说明 接收数据有错。接收器可用中断或状态位置位的方法通知 CPU,以便进行出错处理。 (见书P305) Date11 串行通信方式 根据同步方式的不同,串行通信又分为同步通 信与异步通信两种方式。 w 同步通信 SYNC(Synchronous Communication) w 异步通信 ASYNC(Asynchronous Communication ) Date12 串行通信方式 发送移位 寄存器 接收移位 寄存器 发送移位 寄存器 接收移位 寄存器 发送 时钟 接收 时钟 同步 时钟 异步通信同步通信 Date13 异步通信 异步方式: 以字符为通信单位,字符之间是异步传输的 。传送的信息,开头与结尾均有特别的位码供接收方识 别,信息格式双方事先约定。 LSB 1/0 MSB 起始位:逻辑0电平。 数据位:58位,先传低位,后传高位(D0,D1,D7)。 奇偶校验位:1位 停止位:1,1.5,2位,逻辑1电平。 parity Start dataStop Date14 异步通信 在异步数据传输中,在CPU与外设之间必须有两项规定: 1)字符格式:即字符的编码形式,奇偶校验格式、起始位 和停止位的规定。 2)波特率(Baud Rate):为每秒传送的二进制数据的位数, 它是一个衡量传输速率的指标,也是衡量传输通道频宽的 指标。 例:假如数据传输的速率为960字符/秒,而每一字符假如 包含10个信息位,则传送的波特率为: 10960=9600 bps Date15 同步方式:通信双方用统一时钟控制通信过程,传输信 息组成数据帧 (数据包)。每帧头尾是控制代码,中间 是数据块,可有数百字节甚至更长。不同的同步传输 协议有不同的数据帧格式。 数据帧 数据帧头 数据块 数据帧尾 数据帧头由同步字符、控制字符、地址信息等组成。数据 帧尾由校验码、控制字符等组成。同步传输的速度高于异 步,但因要求有时钟来实现发送端与接收端的同步,故硬 件复杂。 同步通信 Date16 1、面向字符型的同步协议 最典型的是IBM公司的BSC(二进制同步规程)协议 正文中以字符作为信息单位,信息长度是8的整数倍 。字符是EBCD码或ASCII码,可以是数据信息,也可以 是控制信息。该协议规定了一些特定控制字符作为信息 传输的标志。其格式为: 串行通信规程 SYNSOH标题STX数据块ETB/ETX块校验 Date17 串行通信规程 SYN:同步字符(Synchronous Character),每帧可加1个(单同步)或2 个(双同步)同步字符。 SOH:标题开始(Start of Header)。 标题:Header,包含源地址(发送方地址)、目的地址(接收方地址)等 。 STX:正文开始(Start of Text)。 数据块:正文(Text),由多个字符组成。 ETB:块传输结束(End of Transmission Block), 标识本数据块结束 。 ETX:全文结束(End of Text),全文分为若干块传输。 块校验:对从SOH开始,直到ETB/ETX字段的检验码。 SYNSOH标题STX数据块ETB/ETX块校验 Date18 2、面向bit型的同步协议 IBM的SDLC同步数据链路控制规程 ISO的HDLC高级数据链路控制规程 一帧信息可以是任意位,用8位的位组合(01111110) 标识帧的开始和结束。 SDLC的帧格式为: 串行通信规程 Date19 串行通信规程 F场:标志场;作为一帧的开始和结束,标志字符为8 位,01111110。 A场:地址场,规定接收方地址,可为8的整数倍位。 接收方检查每个地址字节的第1位,如果为“0”,则后 边跟着另一个地址字节。若为“1”,则该字节为最后 一个地址字节。 C场:控制场。指示信息场的类型,8位或16位。若第 1字节的第1位为0,则还有第2个字节也是控制场。 I场:信息场。要传送的数据。 FC场:帧校验场。除F场和自动插入的“0”位外,均 参加CRC计算 F场A场C场I场FC场F场 HDLC: Date20 1、异步通信简单,双方时钟可允许一定误差。 同步通信较复杂,双方时钟的允许误差较小 。 2、同步通信不需每个字符加起始位和停止位, 增加了有效数据量。 3、异步通信只适用于点对点,同步通信可用于 点对多。 4、通信效率:异步通信低,同步通信高。 异步通信和同步通信的比较 Date21 计算机的通信是一种数字信号的通信,它要 求传输线的频带很宽。而在长距离通信时,通 常是利用电话线传送的,因此经过传送线,信 号会产生畸变。 所以要用调制器(Modulator)把数字信号转换 为模拟信号;用解调器(Demodulator)检测此模 拟信号,再把它转换成数字信号。 信号的传输方式 Date22 信号的传输方式 1.基带传输方式:未经调制的电脉冲信号呈现方波形式 ,所占据的频带通常从直流和低频开始,因而称为基 带信号。由于在近距离范围内,基本信号的功率衰减 不大,从而信号容量不会发生变化。因此,基带传输 适宜于近距离和速度较低的通信。 2.载波传输方式:在远程传输中,通常是利用电话线传 送的,电话线的频带在30Hz3000Hz之间。由于频带不 宽,用它来传送数字信号的矩形波时,就会畸变失真 。那些由编码表示的数字基带信号必须经过高频调制 后才能在信道中进行传输,我们把这种传输称为数字 基带信号的载波传输。(见教材P301图9-5) Date23 数字数据的调制编码:在模拟信道上传输数字信号时, 必须将数字数据调成模拟信号才能传送。它们分别按传 输数字信号的变化规律去改变载波(即音频模拟信号 Asin(2ft+)的频率f,幅度A或相位,使之随数字信号 的变化而变化。 数字数据用模拟信号进行调制的三种形式: (见P302图9-8) 信号的调制与解调 1、频移键控法FSK(Frequeney Shift Keying) (调频):用载波频率 附近的两个不同的频率来表示两个二进值。 2、幅移键控法ASK(调幅):用载波频率的两个不同的振幅来表示 两个二进值。 3、相移键控法PSK(调相):用载波信号的相位移动来表示数据。 Date24 模拟数据的数字信号编码:将模拟数据转换成数字数据。 常用调制方式:脉冲编码调制(PCM编码),将一个模拟信 号转换为二进制数码脉冲序列的过程。PCM编码通过 抽样、量化、编码三个步骤将连续变化的模拟信号转 换为数字编码。 信号的调制与解调 Date25 异步串行通信接口 常用的异步串行通信接口主要有以下几种: 1、RS-232C接口 2、20mA电流环接口 3、RS-499与RS-423/422/485接口 4、USB接口 5、IEEE1394接口 Date26 可编程异步通信控制器8250是IBM PC机串行通信接 口电路的核心。通过8250可将外部设备或Modem通过RS -232C接口的串行数据接收进来,转换成并行的8位数据 送往PC机,或者将PC机的并行数据转换为串行数据送 往外部设备或Modem。 主要功能: q 支持异步通信规程,异步通信格式可编程。 q 具有可编程时钟产生电路。 q 具有与调制解调器的通信联络功能。 q 有较强的中断管理功能 可编程异步通信接口8250 Date27 INS8250的性能: 1、特点:单一 +5V电源;40引脚DIP芯片; 支持异步通信(无同步通信能力)。 2、优点:可编程能力强,内部有10个可访问的寄存器。 3、可编程能力主要体现在: 传输速率:50bps9600bps(波特); 数据位可选:5、6、7、8个; 停止位可选:1、1.5、2个; 校验位可选:奇校验、偶校验、无校验位。 具有控制MODEM功能和完整的状态报告功能; 具有线路隔离,故障模拟等内部诊断功能; 具有独立的中断优先权控制能力; 具有双缓冲能力,以解决收发两端时钟不精确同步的问题。 可编程异步通信接口8250 Date28 接收缓冲 寄存器 传输线控制 寄存器 传输线状态 寄存器 除数寄存器 (低位) 除数寄存器 (高位) 发送保持 寄存器 调制解调器 控制寄存器 调制解调器 状态寄存器 中断允许 寄存器 中断识别 寄存器 数 据 总 线 缓 冲 器 选 择 和 控 制 逻 辑 A0 A1 A2 CS0 CS1 CS2 ADS MR DISTR DISTR DOSTR DOSTR DDIS CSOUT XTAL1 XTAL2 D0D7 内 部 数 据 总 线 接收移位寄存器 发送同步控制 接收同步控制 波特率 发生器 发送移位寄存器 调制 解调器 控制逻辑 中断 控制 逻辑 SIN RCLK BAUDOUT# RTS# CTS# DTR# DSR# RLSD# RI# OUT1# OUT2# INTRPT SOUT Date29 8250主要由8部分组成: q数据总线缓冲器 q选择和控制逻辑 q数据接收部分 q数据发送部分 q传输速率控制部分 q线路控制与状态部分 q调制解调器控制与状态部分 q中断管理部分 可编程异步通信接口8250 Date30 数据总线缓冲器:接收CPU发给8250的数据或编程时的 控制字;8250接收的数据和通信状态也通过数据总线缓 冲器送到CPU 选择和读/写控制逻辑:接收来自系统地址总线的译码信 号,选择芯片内部寄存器。读/写控制逻辑用于对8250各 寄存器的读/写操作进行控制。 接收控制电路:将接收的串行数据移入接收移位寄存器 ,满8位后送入接收缓冲寄存器。 发送控制电路:将发送保持寄存器中的数据送入发送移 位寄存器,在发送同步电路的控制下,将发送移位寄存 器中的数据逐位移出,并送上通信线SOUT。 可编程异步通信接口8250 Date31 传输速度控制电路:编程时设定送到除数寄存器中的数 值。外部输入时钟频率除以除数寄存器中的数值后,得 到数据发送器的工作频率,再除以16,才是真正的发送 波特率。由BAUDOUT输出。 调制解调器控制电路:用于控制调制解调器的工作。如 果8250和Modem相连,则控制信号由调制解调器控制电 路产生。 中断控制电路:8250支持中断方式的数据传送。CPU可 以通过8250中断识别寄存器来判断当前的中断类型。 可编程异步通信接口8250 Date32 与系统总线连接的有关信号 D7D0(双向):八位并行数据引脚; 作用:写入控制字、欲发送数据; 读出状态字、拼装好的接收数据。 CS0、CS1、-CS2 (输入):芯片选择信号; 作用:当CS0CS1CS2110时,该芯片被选中 A2、A1、A0(输入):寄存器选择; 作用:片选有效时,选择内部寄存器。 -ADS (输入):地址选通; 作用:高电平时,锁存CS0CS2,A2A0的输入状态 ,为读写提供稳定地址;低电平时,允许地址更新。 INS8250的引脚信号 Date33 与系统总线连接的有关信号: CSOUT(输出):芯片选择输出; 作用:当CS0CS1-CS2 110时,输出高电平。 DISTR,-DISTR (输入):数据输入选通; 作用:DISTR高电平有效,-DISTR低电平有效; DOSTR,DOSTR(输入):数据输出选通; 作用:DOSTR高电平有效,-DOSTR低电平有效; 注:PC/XT的COM1中,-DISTR接-IOR,-DOSTR接- IOW,DISTR和DOSTR不用,固定接地,被封锁。 DDIS(输出):驱动器禁止; 作用:当8250被读时,为低电平(解除禁止);其余时 间为高电平;用于禁止INS8250干扰系统总线。 可编程异步通信接口8250 Date34 中断请求、复位输入及其它信号 INTPRT(输出):中断请求;高电平有效,请求CPU予以中 断处理。 -OUT1、-OUT2 (输出):为用户提供的输出口;用户对 MCR的D2、D3位编程,指定输出脚; 注:在PC/XT中,用OUT2作中断允许三态门的使能;使MCR 的D3为8250中断允许总控制位。 MR(输入):主复位;见表9-3。为高电平时,INS8250进入 复位状态;除接收缓冲器、发送保持器、除数寄存器,其余寄 存器被清除;输出信号:-CTS、-RTS、-OUT1、-OUT2为高 ,INTPRT为低,皆为无效状态; 可编程异步通信接口8250 Date35 与外部通信设备连接的有关信号 SIN(输入):串行数据输入; SOUT(输出):串行数据输出;串行数据位经SOUT输出, 经SIN输入;传送顺序:低序位在前,高序位在后。 XTAL1(输入):时钟输入;8250的基准时钟信号经该信 号输入到芯片内 注:在PC/XT中,其频率为1.8432MHz的方波信号。 XTAL2(输出):时钟输出;基准时钟信号输出脚,可用 于其它功能的定时控制。 XTAL1与XTAL2之间可接晶振从而在芯片内部产生时钟 。 可编程异步通信接口8250 Date36 与外部通信设备连接的有关信号: BAUDOUT(输出):波特率输出信号,即发送数据的 工作时钟; RCLK(输入):接收时钟; 作用:接收时钟输入引脚。 与BAUDOUT短接,使接收和发送的波特率相等。 可编程异步通信接口8250 Date37 与通信设备握手联络的信号 -DSR(输入):数传机就绪; 作用:低有效时,表明通信设备准备好,允许使用其 进行数据传送。 -RI (输入):振铃指示 作用:低有效时,说明MODEM已收到电话交换台的 拨号呼叫。 -DTR (输出):数据终端就绪; 作用:低有效时,指示8250已做好通信准备; 8250收到RI后,以此信号回答MODEM;电话线成为 串行通信链路。 可编程异步通信接口8250 Date38 与通信设备握手联络的信号 -RLSD (DCD)(输入):接收线信号检测; 作用:低有效,说明Modem已接收到数据载波,8250 立即开始接收解调后的数据。 -RTS (输出):请求发送; 作用:低有效,表明8250向Modem发出指示,要求向 Modem输出串行数据。 -CTS (输入):允许发送; 作用:低有效,表明MODEM已同意8250的发送请求 ; RTS和CTS是发送数据时使用的一对握手信号。 可编程异步通信接口8250 Date39 8250内部的寄存器 DLABA2A1A0寄存器 0000接收缓冲器(读) 发送缓冲器(写) 0001中断允许寄存器 010中断识别寄存器(只读) 011传输线控制寄存器 100调制解调器控制寄存器 101传输线状态寄存器 110调制解调器状态寄存器 111 1000除数寄存器(低8位) 1001除数寄存器(高8位) 8250内部有10个寄存器,这10个寄存器由A2A0译码选定,其 中两个除数寄存器的访问由传输线控制寄存器的最高位(DLAB=1) 作为特征来识别。 Date40 数据发送保持寄存器(THR) 和发送移位寄存器:用于暂 存要发送到通信线的1个字节的数据,该字节经发送移位 寄存器串行发出。 接收移位寄存器和数据接收缓冲寄存器(RBR): 由SIN脚 输入的串行数据位,送入接收移位寄存器中,由8250校 验起始位,然后才读入数据位。接收移位寄存器接收一 个字符后进行格式检查,若格式正确则将数据位保留并 传送给数据接收缓冲寄存器RBR。 数据发送和接收过程见书P318。 8250的内部寄存器 Date41 DLABSBRKSPBEPSPENSTBWLS1WLS0 传输线控制寄存器LCR D7 D6 D5 D4 D3 D2 D1 D0 设定数据长度 0 05位 0 16位 1 07位 1 18位 设定停止位的长度 01位 1 1.5位 字符代码为5位 2位 字符代码为6,7,8位 奇偶校验 0无奇偶校验 1有奇偶校验 奇偶校验类型 0奇校验 1偶校验 奇偶校验附加位 0该位无效 1奇偶校验位恒为1D4D3=01 奇偶校验位恒为0D4D3=11 无奇偶校验位D3=0 中止位设置 0 正常中止 1 强迫8250连续 输出低电平 标志位 Date42 0TSRETHREBIFEPEOEDR 传输线状态寄存器LSR D7 D6 D5 D4 D3 D2 D1 D0 溢出错 奇偶错 中止检测 格式错 发送保持寄存器空 发送移位寄存器空 不用,恒为0 接收数据就绪 注:所列为各位为1时的状态 Date43 除数寄存器 w 除数寄存器的值就是分频系数。外部输入时钟 XTAL1的频率除以除数寄存器中的双字节数后 ,得到数据发送器的工作频率,再除以16,才 是真正的发送波特率。 w 在IBM PC/XT系列机中,输入时钟为 1.8432MHz,波特率和除数之间的关系如下表 。 Date44 除 数 寄 存 器 波特率除数寄存器的值 高8位低8位 500900 750600 1100417 134.50359 1500300 3000180 60000C0 12000060 18000040 2000003A 24000030 36000020 48000018 72000010 9600000C Date45 例:当用PC机使用COM2口进行通信时,若数据传输速率为 9600波特,请编制装入除数寄存器的程序段 分析:COM2的除数寄存器的地址为:2F8H,2F9H。 9600波特:对应除数寄存器低8位0CH,高8位00H。 装入分频次数寄存器的程序段: MOV DX,2FBH;通过LCR来指定除数寄存器。 MOV AL,80H OUT DX,AL MOV DX,2F8H MOV AL,0CH OUT DX,AL MOV DX,2F9H MOV AL,00H OUT DX,AL 除数寄存器 Date46 000LOOPOUT2OUT1RTSDTR MODEM控制寄存器 D7 D6 D5 D4 D3 D2 D1 D0 1=RTS信号有效 附加用户指定输 出,一般不用 =0 8250正常工作 =1 8250自检 =1时,中断信号送数据总线 1=DTR信号有效 Date47 RLSDRIDSRCTSRLSD RI DSR CTS MODEM状态寄存器MSR D7 D6 D5 D4 D3 D2 D1 D0 数据装置就绪 振铃指示 允许发 送 数据载波检测 DCD数据装置就绪 振铃指示 数据载波检测DCD 允许发送 MSR寄存器的高4位分别对应Modem输入信号的状 态,低4位表示Modem的状态线是否发生了变化。 Date48 D3:允许Modem状态寄存器MSR发生变化时产生中断 D2:允许在传输线状态寄存器LSR变化时产生中断 D1:允许发送保持寄存器空时产生中断, D0:允许接收到数据错时产生中断 0000EDSSIELSIETBEIERBFI 中断允许寄存器IER D7 D6 D5 D4 D3 D2 D1 D0 Date49 D2 D1: 标识具体的中断类型 D2 D1=00 MODEM状态(CTS/RI/DTR/DCD) D2 D1=01 发送保持寄存器空 D2 D1=10 接收数据就绪 D2 D1=11 接收数据错 D0:用来指示是否有中断发生 D0=0有中断产生 D0=1无中断产生 00000D2D1D0 中断识别寄存器IIR(只读) 低 高 Date50 w INS8250的编程分为初始化和工作两部分。 w 初始化编程包括约定传送波特率、通信的字符 数据格式及8250对MODEM和中断管理的操作 方式。 w 工作编程是实现数据的发送和接收,可以采用 查询式或中断传送方式 INS8250的编程 Date51 INS8250的编程 对8250进行初始化编程的主要步骤: 1、设置波特率 1)对线路控制寄存器的最高位DLAB置1;2)写高位 除数寄存器;3)写低位除数寄存器。 2、设置字符数据格式,即写传输线控制寄存器 3、设置操作方式 1)设置Modem控制寄存器。通常情况下,这个寄 存器设定的值为03H,它使8250输出DTR和RTS这两 个Modem控制信号。如果系统中不使用这两个信号 ,则这样的设置也不会带来问题。如果要使用中断 ,OUT2位应置为1,这样,8250产生的中断信号就 可以通过系统总线传送给8259中断控制器。 2)设置中断允许寄存器。若要使用中断,则要设 置中断

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论