第7章常用数字接口电路_第1页
第7章常用数字接口电路_第2页
第7章常用数字接口电路_第3页
第7章常用数字接口电路_第4页
第7章常用数字接口电路_第5页
已阅读5页,还剩102页未读 继续免费阅读

下载本文档

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

文档简介

1、1 第7章 常用数字接口电路2主要内容: 掌握二种可编程接口芯片的应用掌握二种可编程接口芯片的应用 了解串行通信的一般概念了解串行通信的一般概念 37.1 接口电路概述接口电路概述lCPU与外设之间信息交换的通道l信息缓冲信息缓冲、信息变换信息变换、电平转换电平转换、联络控制联络控制l分类:l8086系统中最常用的数字接口电路芯片:8253、8255、8250功能功能传送方式传送方式输入接口输入接口 并行接口并行接口 数字量的输入数字量的输入/输出接口输出接口输出接口输出接口 串行接口串行接口 模拟量的输入模拟量的输入/输出接口输出接口47.2 可编程定时/计数器8253掌握掌握:l引线功能及

2、计数启动方法引线功能及计数启动方法l6种工作方式及其输出波形种工作方式及其输出波形l8253的使用的使用: 芯片与系统的连接芯片与系统的连接 芯片的初始化编程芯片的初始化编程5l可以实现定时与计数两个功能,可用于系统时钟DRAM刷新定时定时采样实时控制脉冲的计数 。6如何实现定时?l软件方法:用一段程序实现延时软件方法:用一段程序实现延时l硬件方法:定时硬件方法:定时/计数器电路计数器电路7一、外部引线及内部结构l8253概貌概貌3个个16位的定时位的定时/计数器(通道)计数器(通道)24引脚双列直插式引脚双列直插式最高计数频率最高计数频率2MHzTTL电平兼容电平兼容单电源单电源+5V供电供

3、电8外部引线及内部结构DBD7-D08253A1A0WRRDCS通道通道2通道通道1通道通道0CLK0GATE0OUT0CLK1GATE1OUT1CLK1GATE1OUT1A1A0IOWIOR片选信号片选信号9外部引线及内部结构连接系统端系统端的主要引线:lD7D0lCSlRDlWRlA1,A0 用于选择四个编址部件之一用于选择四个编址部件之一引线结构引线结构A1 A0 选选 择择0 0 计数通道计数通道00 1 计数通道计数通道11 0 计数通道计数通道21 1 控制寄存器控制寄存器10外部引线及内部结构计数通道计数通道的主要引线(每通道均相同):(每通道均相同):lCLKn 时钟脉冲输入,

4、计数器的计时基准。时钟脉冲输入,计数器的计时基准。lGATEn 门控信号输入,控制计数器的启停。门控信号输入,控制计数器的启停。lOUTn 计数器输出信号,不同工作方式下计数器输出信号,不同工作方式下 产生不同波形。产生不同波形。(n = 02) 118253的内部结构编址部件0编址部件1编址部件2编址部件312编程结构程序员的观点l计数器计数器(3个个)包括包括l控制寄存器控制寄存器 存放控制命令字(只写)存放控制命令字(只写)l占用占用4个地址个地址 3个计数器,个计数器,1个控制寄存器个控制寄存器16位初值寄存器位初值寄存器16位计数寄存器位计数寄存器(减法计数器)(减法计数器)13定时

5、/计数的工作过程 1. 设置设置8253的工作方式的工作方式 2. 设置计数初值到初值寄存器设置计数初值到初值寄存器 3. 第一个第一个CLK信号使初值寄存器的内容置入信号使初值寄存器的内容置入 计数寄存器计数寄存器 4. 以后每来一个以后每来一个CLK信号,计数寄存器减信号,计数寄存器减1 5. 减到减到0时,时,OUT端输出一特殊波形的信号端输出一特殊波形的信号注:以上计数过程中还受到注:以上计数过程中还受到GATE信号的控制信号的控制14二、计数启动方式软件启动过程软件启动过程硬件启动过程硬件启动过程GATE端保持为高电平端保持为高电平写入计数初值写入计数初值后的第后的第2个个 CLK脉

6、冲的下降沿开始计数脉冲的下降沿开始计数GATE端有一个上升沿端有一个上升沿对应对应CLK脉冲的下降沿开始计数脉冲的下降沿开始计数程序指令启动程序指令启动软件启动软件启动外部电路信号启动外部电路信号启动硬件启动硬件启动15三、工作方式16工作方式方式方式0方式方式1 软件启动,不自动重复计数。软件启动,不自动重复计数。装入初值后装入初值后OUT端变低电平,端变低电平,计数结束计数结束OUT输出高电平。输出高电平。硬件启动,不自动重复计数。硬件启动,不自动重复计数。装入初值后装入初值后OUT端变高电平,端变高电平,计数开始计数开始OUT端变为低电平,端变为低电平,计数结束后又变高。计数结束后又变高

7、。工作波形工作波形17工作方式方式方式2方式方式3软、硬件启动,软、硬件启动,自动重复计数自动重复计数。装入初值后装入初值后OUT端变高电平,计数到端变高电平,计数到最后一个最后一个CLK时时OUT输出负脉冲,并输出负脉冲,并连续重复此过程。连续重复此过程。软、硬件启动,软、硬件启动,自动重复计数自动重复计数。装入初值后装入初值后OUT端变高电平,端变高电平,然后然后OUT连续输出对称方波:连续输出对称方波:工作波形工作波形18工作方式方式方式4方式方式5 软件启动,不自动重复计数。软件启动,不自动重复计数。装入初值后输出端变高电平,装入初值后输出端变高电平,计数结束输出一个计数结束输出一个C

8、LK宽度的负脉冲宽度的负脉冲硬件启动,不自动重复计数。硬件启动,不自动重复计数。OUT端波形与方式端波形与方式4相同相同工作波形工作波形19各种工作方式特点l方式方式0(计数结束中断)(计数结束中断)l方式方式1(单稳态触发器)(单稳态触发器)20各种工作方式特点l方式方式2(频率发生器)(频率发生器)l方式方式3(方波发生器)(方波发生器)21各种工作方式特点l方式方式4(软件触发选通)(软件触发选通)l方式方式5(硬件触发选通)(硬件触发选通)22工作方式一览表工作方式一览表23四、控制字l用于确定各计数器的工作方式。用于确定各计数器的工作方式。格格 式式24五、8253的应用l与系统的连

9、接与系统的连接l设置工作方式设置工作方式l置计数初值置计数初值编程编程25与系统的连接示意图CLKGATEOUTD0D7WRRDA1A0CSDBIOWIORA1A0译码器译码器高位地址高位地址A15-A28253共三组共三组26初始化程序流程写控制字写控制字写计数值低写计数值低8位位写计数值高写计数值高8位位*非必须非必须写入顺序:写入顺序: 可按计数器分别写可按计数器分别写入控制字和初值。入控制字和初值。 也可先写所有计数也可先写所有计数器控制字,再写入器控制字,再写入它们的初值它们的初值278253应用举例l采用采用8253作定时作定时/计数器,其接口地址为计数器,其接口地址为0120H0

10、123H。l输入输入8253的时钟频率为的时钟频率为2MHz。l计数器计数器0: 每每10ms输出输出1个个CLK脉冲宽的负脉冲脉冲宽的负脉冲计数器计数器1: 产生产生10KHz的连续方波信号的连续方波信号 计数器计数器2: 启动计数启动计数5ms后后OUT输出高电平。输出高电平。l画线路连接图,并编写初始化程序。画线路连接图,并编写初始化程序。 288253应用举例(续)l确定计数初值:确定计数初值: CNT0: 10ms/0.5us = 20000 CNT1: 2MHz/10KHz = 200 CNT2: 5ms/0.5us = 10000l确定控制字:确定控制字: CNT0:方式方式2,

11、16位计数值位计数值 00 11 010 0 CNT1:方式方式3,低,低8位计数值位计数值 01 01 011 0 CNT2:方式方式0, 16位计数值位计数值 10 11 000 0298253应用举例(续)CLK0GATE0OUT1D0D7WRRDA1A0CSDBIOWIORA1A0译码器译码器8253CLK2GATE1GATE2+5VCLK12MHzOUT0OUT2?线路连接图:线路连接图:308253应用举例 初始化程序初始化程序CNT0:MOV DX, 0123HMOV AL, 34HOUT DX, ALMOV DX, 0120HMOV AX, 20000OUT DX, ALMOV

12、 AL, AHOUT DX, ALCNT1: CNT2: 3132*扩展定时/计数范围33扩展定时/计数范围1MHz1KHz1Hz348253小结l包含包含3个个16位计数器通道位计数器通道l4个编址部件:个编址部件:CNT0/1/2和控制寄存器和控制寄存器l每个计数器通道工作前必须初始化:每个计数器通道工作前必须初始化:控制字和计数初值控制字和计数初值l6种工作方式种工作方式l每种工作方式:启动方式、输出波形、每种工作方式:启动方式、输出波形、是否可重复计数等各不相同是否可重复计数等各不相同357.3 并行接口8255特点:特点:l含含3个独立的个独立的8位并行输入位并行输入/输出端口,输出

13、端口,各端口均具有数据的控制和锁存能力各端口均具有数据的控制和锁存能力l可通过编程设置各端口的工作方式和可通过编程设置各端口的工作方式和数据传送方向(入数据传送方向(入/出出/双向)。双向)。36一、引线WRD0D1D2D3D4D5D6D7VCCPB7RDCSGNDA1A0PA4PA5PA6PA7PB5PB6PB4PB3RESETPB1PB2PB0PC3PC2PC1PC0PC4PC5PC6PC7PA3PA2PA1PA05110153540302521共共40个引脚个引脚37引线(续)连接系统端的主要引线:连接系统端的主要引线:lD0D7lCSlRDlWRlA0,A1 lRESETA1 A0 选

14、择选择0 0 端口端口A0 1 端口端口B1 0 端口端口C1 1 控制寄存器控制寄存器38引线(续)连接外设端的引脚:连接外设端的引脚:lPA0PA7lPB0PB7lPC0PC7分别对应分别对应A、B、C三三个个8位输入位输入/输出端口输出端口其中,其中,C口即可用作独立的输入口即可用作独立的输入/输出口,也可用作输出口,也可用作A、B口的口的控制信号控制信号输出或输出或状态信号状态信号输入。输入。39二、结构A组组B组组 端口端口A端口端口C的高的高4位位端口端口B端口端口C的低的低4位位408255与系统的连接示意图D0D7WRRDA1A0CSDBIOWIORA1A0译码器译码器8255

15、A口口B口口C口口D0D7外外 设设A15A2系系统统总总线线41三、8255工作方式基本输入基本输入/输出方式(方式输出方式(方式0)选通工作方式(方式选通工作方式(方式1)双向传送方式(方式双向传送方式(方式2)(仅)(仅A口)口)42方式控制字及位控字l可以利用软件编程确定可以利用软件编程确定8255的的3个端口个端口工作于何种方式下;工作于何种方式下;l8255的的C端口可以端口可以按位操作按位操作。当其工作。当其工作于方式于方式0下且作为输出口时,对于那些作下且作为输出口时,对于那些作为输出的位需要设置初始状态(为输出的位需要设置初始状态(1/0)。)。43方式控制字与位控字格式l控

16、制字控制字确定确定3个端口的工作方式个端口的工作方式l位控字位控字确定确定C口某一位的初始状态,口某一位的初始状态, 或用于设置或用于设置INTE位位(方式方式1,2)。44工作方式0l8255相当于三个独立的相当于三个独立的8位简单接口。位简单接口。l各端口既可设置为输入口,也可设置为输各端口既可设置为输入口,也可设置为输出口,但不能同时实现输入及输出。出口,但不能同时实现输入及输出。lC端口即可以是一个端口即可以是一个8位的简单接口,也可位的简单接口,也可以分为两个独立的以分为两个独立的4位端口。位端口。45方式0的应用:l用于连接简单外设。用于连接简单外设。l适用于:适用于: 无条件输入

17、输出方式。无条件输入输出方式。输入输出输入输出把把A、B口作为口作为8位数据位数据的输入或输出口,的输入或输出口,46工作方式1l利用一组选通控制信号控制利用一组选通控制信号控制A端口和端口和B端端口的数据输入输出。口的数据输入输出。lA、B口作输入或输出口,口作输入或输出口,C口的部分位口的部分位固定用作固定用作A、B口的选通控制信号。口的选通控制信号。lA口、口、B口在作为口在作为输入输入和和输出输出时的选通信时的选通信号不同。号不同。输入输入输出输出474849注意:50方式1的应用:l主要用于中断控制方式下的输入输出。主要用于中断控制方式下的输入输出。lC口除部分位用作选通信号外,其余

18、位可工作口除部分位用作选通信号外,其余位可工作在方式在方式0下,作为输入或输出线。下,作为输入或输出线。 特别是特别是51工作方式2l双向方式双向方式既是输入口,又是输出口。既是输入口,又是输出口。l类似于类似于A口方式口方式1下输入和输出的组合。下输入和输出的组合。l只有只有A口可工作在方式口可工作在方式2下。下。lINTE1INTE252方式2的应用:l可用于中断控制输入输出方式。可用于中断控制输入输出方式。l当当A口工作于方式口工作于方式2时,时,B口可工作于方口可工作于方式式1(此时(此时C口的剩余位都用作口的剩余位都用作B口选通口选通控制线);控制线);B口也可工作于方式口也可工作于

19、方式0(此时(此时C口的剩余位也只能用作方式口的剩余位也只能用作方式0下的输入下的输入输出线)。输出线)。8255工作方式小结工作方式小结53四、8255芯片的应用芯片与系统的连接芯片与系统的连接芯片的初始化芯片的初始化相应的控制程序相应的控制程序例例7-3548255应用举例1 l利用利用8255实现开关检测和继电器控制电实现开关检测和继电器控制电路;路;l当开关闭合时,使继电器通电动作;开当开关闭合时,使继电器通电动作;开关断开时,继电器不动作;关断开时,继电器不动作;l系统每隔系统每隔100ms检测一次开关状态,实检测一次开关状态,实现相应的继电器控制;现相应的继电器控制;l初始状态下继

20、电器不动作。初始状态下继电器不动作。55CSA0A1WRRDDBPA0PA7PB0PB7+5V+12VK继电器继电器384H387H388H38BHCSA0A1OUT1CLK12MHzCLK0OUT08259APICWRRDDB82538255中断请求信号中断请求信号INTRQ1R1R2D156题目分析:l使使8255的的A端口和端口和B端口均工作于方式端口均工作于方式0;l8253计数器计数器0和计数器和计数器1均工作于方式均工作于方式3,利用,利用OUT0的的输出作为计数器输出作为计数器1的时钟信号,其输出频率为的时钟信号,其输出频率为2KHz, OUT1输出频率为输出频率为10Hz(周期

21、周期100ms);lOUT1作为中断信号,每作为中断信号,每100ms产生一次中断;产生一次中断;lCPU响应中断后检测开关状态,控制继电器的动作;响应中断后检测开关状态,控制继电器的动作;l8253两个计数器的计数初值分别为:两个计数器的计数初值分别为: CNT0:2MHz/2KHz =1000 (16位)位) CNT1:100ms/0.5ms=200 (8位)位)578255的初始化MOV DX,387HMOV AL,82H ;1 00 0 0 0 1 0OUT DX,AL XOR AL,AL ;A口输出全口输出全0MOV DX,384HOUT DX,AL588253的初始化l设置工作方式

22、:设置工作方式:MOV DX,38BHMOV AL,36HOUT DX,ALMOV AL,56HOUT DX,AL36H = 00 11 011 0 CNT0 16位位 方式方式3l置计数初值:置计数初值:MOV DX,388HMOV AX,1000OUT DX,ALMOV AL,AHOUT DX,ALMOV DX,389HMOV AL,200OUT DX,AL598255的控制程序(中断处理)(中断初始化程序略中断初始化程序略)8253中断服务程序中的中断服务程序中的8255控制程序段如下:控制程序段如下: MOV DX,385H ;PB口地址口地址 IN AL,DX ;读;读PB0状态状态

23、 NOT AL ;变反;变反 MOV DX,384H ;输出到继电器;输出到继电器 OUT DX,AL 608255应用举例2l习题习题P342,第,第12题(译码器输入改为题(译码器输入改为A15-A2):):定时采集开关状态,并显示到数码管上定时采集开关状态,并显示到数码管上617.47.4可编程串行通信接口了解:了解:l串行通信的一般概念串行通信的一般概念*627.4.1串行通信基本概念串行通信: 每个时间单位仅传送一位信息; 每个字符(字节)的各位依次传送; 字符之间的间隔不定。优点: 传输线少,成本低,传输距离远631.串行通信工作方式单工通信单工通信只能由一方发送,例:广播只能由一

24、方发送,例:广播半双工通信半双工通信某一时刻只能由一方发送,例:对讲机某一时刻只能由一方发送,例:对讲机全双工通信全双工通信双方可同时传输,例:电话双方可同时传输,例:电话同步通信同步通信双方对每一位的收发时序完全一致,统一时钟双方对每一位的收发时序完全一致,统一时钟异步通信异步通信收发双方时钟不统一收发双方时钟不统一64单工/双工操作发送器发送器接收器接收器发送器发送器/接收器接收器发送器发送器/接收器接收器发送器发送器/接收器接收器发送器发送器/接收器接收器单工方式:单工方式:半双工方式:半双工方式:全双工方式:全双工方式:A站站B站站65l 电话网络电话网络模拟信号模拟信号,计算机,计算

25、机数字信号数字信号。l 远距离通信时需要通过普通电话网络传输远距离通信时需要通过普通电话网络传输 数字信号:频带宽数字信号:频带宽 电话网络:频带窄电话网络:频带窄 要使数字信号在电话网络上传输,需要进行信号变要使数字信号在电话网络上传输,需要进行信号变换换把数字信号承载到模拟信号上传输把数字信号承载到模拟信号上传输,这个模拟信,这个模拟信号称为号称为载波载波信号。信号。l 调制调制把数字信号承载到载波信号上把数字信号承载到载波信号上l 解调解调从载波信号中恢复出数字信号从载波信号中恢复出数字信号l 调制解调器:实现调制与解调的设备调制解调器:实现调制与解调的设备*2. 调制与解调66三种调制

26、方式根据载波根据载波 Acos( t + )的三个参数:幅度、频率、相位,产的三个参数:幅度、频率、相位,产生常用的三种调制技术:生常用的三种调制技术: 幅移键控法幅移键控法 Amplitude-Shift Keying (ASK) 频移键控法频移键控法 Frequency-Shift Keying (FSK) 相移键控法相移键控法 Phase-Shift Keying (PSK) lASK (又称为调幅又称为调幅) 用载波信号的不同用载波信号的不同幅度幅度代表代表1和和0lFSK (又称为调频又称为调频) 用载波信号的不同用载波信号的不同频率频率代表代表1和和0lPSK (又称为调相又称为调

27、相) 用载波信号的用载波信号的相位变化相位变化代表代表1和和0(有变化为(有变化为1,无变化为,无变化为0)67三种调制方式的调制波形图68l 串行通信主要用于远距离数据传输。串行通信主要用于远距离数据传输。 问题:干扰、衰减,信号畸变问题:干扰、衰减,信号畸变l 解决方法:差错控制技术解决方法:差错控制技术检测、纠正检测、纠正l 常用的数据校验方法:常用的数据校验方法: 奇偶校验:奇偶校验:l以字符为单位进行校验以字符为单位进行校验l发送方使发送的每个字节中发送方使发送的每个字节中1的个数为奇数或偶的个数为奇数或偶数;接收方检查收到的每个字节中数;接收方检查收到的每个字节中1的个数是否的个数

28、是否符合双方的事先约定。符合双方的事先约定。l奇偶校验可以检查出一个字节中发生的单个错误。奇偶校验可以检查出一个字节中发生的单个错误。l奇偶校验不能自动纠错,发现错误后需奇偶校验不能自动纠错,发现错误后需“重传重传”。3. 数据校验69 循环冗余校验循环冗余校验CRC (循环冗余码循环冗余码/多项式编码多项式编码)l以数据块(帧以数据块(帧, Frame)为单位进行校验)为单位进行校验l编码思想:将编码思想:将数据块构成的数据块构成的位串看成是系数为位串看成是系数为0或或1的多项式的多项式 如如110001,可表示成多项式,可表示成多项式 x5 + x4 + 1 数据块构成的数据块构成的多项式

29、除以另一个多项式多项式除以另一个多项式G(x),得到的余数,得到的余数多项式多项式R(x)就称为就称为CRC码(或称为校验和),而码(或称为校验和),而G(x)则称则称为生成多项式。为生成多项式。lCRC校验的校验的检错方式:检错方式:收发双方约定一个生成多项式收发双方约定一个生成多项式G(x),发送方在帧,发送方在帧的末尾加上校验和,使带有校验和的帧的多项式的末尾加上校验和,使带有校验和的帧的多项式能被能被G(x)整除;接收方收到后,用整除;接收方收到后,用G(x)去除它去除它,若余数为若余数为0,则传输正确,否则传输有错。,则传输正确,否则传输有错。数据校验70l CRC校验和计算方法 若

30、若G(x)为为r阶,原帧为阶,原帧为m位,其多项式为位,其多项式为M(x),则在原,则在原帧后面添加帧后面添加r个个0,帧成为,帧成为m+r位,相应多项式位,相应多项式2rM(x) 按按模2除法法用用2rM(x)除以除以G(x):商:商Q(x),余,余R(x)即即 2rM(x) = G(x)Q(x)+R(x) 按按模2加法法把把2rM(x)与余数与余数R(x)相加,结果就是要传送相加,结果就是要传送的带校验和的帧的多项式的带校验和的帧的多项式T(x) T(x) = 2rM(x) + R(x)实际上,实际上,T(x) = 2rM(x) + R(x) = G(x)Q(x) + R(x) + R(x

31、) = G(x)Q(x) (模模2运算运算) 所以,若接收的所以,若接收的T(x)正确,则它肯定能被正确,则它肯定能被G(x)除尽。除尽。数据校验71数据校验CRC校验码的检错能力:校验码的检错能力:l可检出所有奇数个错可检出所有奇数个错l可检出所有单位可检出所有单位/双位错双位错l可检出所有可检出所有G(x)G(x)长度的突发错长度的突发错常用的生成多项式:常用的生成多项式:lCRC12 = x12+x11+x3+x2+1lCRC16 = x16+x15+x2+1lCRC32 =x32+x26+x23+x22+x16+x11+x10 +x8+x7+x5+x4+x2+x+1724.同步通信与异

32、步通信l所有串行通信都需要一个时钟信号来作为数据的所有串行通信都需要一个时钟信号来作为数据的定时参考。发送器和接收器用时钟来决定何时发定时参考。发送器和接收器用时钟来决定何时发送和读取每一个数据位。送和读取每一个数据位。l根据传输时采用的是统一时钟还是本地局部时钟,根据传输时采用的是统一时钟还是本地局部时钟,分为分为同步传输同步传输和和异步传输异步传输两种。两种。 同步传输用同步传输用一个时钟脉冲一个时钟脉冲确定一个数据位确定一个数据位, 异步传输异步传输用用多个时钟脉冲多个时钟脉冲确定一个数据位确定一个数据位(如如16个个) 同步传输以数据块同步传输以数据块(当作当作“位流”看待看待)为单位

33、传输,为单位传输,异步传输以字符为单位传输,但都称为异步传输以字符为单位传输,但都称为帧(Frame) 73同步通信的时钟定时方法数据(62H)01100010同步传输先发送高位(MSB)发送方在时钟信号的下降沿发送字节接收方在时钟信号的上升沿接收字节时钟(发送时钟与接收时钟完全同步)LSBMSB74异步通信的时钟定时方法数据(62H)000011停止位异步传输先发送低位(LSB)发送方利用发送时钟来决定发送每个位的时刻接收方检测起始位的下降沿,并用它来同步接收时钟,然后利用接收时钟从每一位的中间接收该位1起始位LSBMSB0奇偶校验位00/11 1接收/发送时钟75异步通信时数据位的检测起始

34、位波特率因子波特率因子K=16TdTc111000000000连续 8 个 0第9个仍为 0以后每隔16个Tc检测一次数据的其他位发送/接收时钟周期:Tc,数据位间隔:TdTc = Td / K, 其中K称为波特率因子(16,32,64)76异步通信的一般的一般格式每个字符由每个字符由起始位起始位、数据位数据位、校验位校验位、停止位停止位构成。构成。起始位和停止位用于字符的同步。起始位和停止位用于字符的同步。起始位最低位最高位58个数据位可选的奇偶校验位1, 11/2或2个停止位777.4.2 串行通信的接口标准l机械特性:连接器的尺寸、引脚分布机械特性:连接器的尺寸、引脚分布l信号特性:信号

35、电平、通信速率信号特性:信号电平、通信速率l功能特性:引脚功能、控制时序功能特性:引脚功能、控制时序 最常见的串行通信标准是最常见的串行通信标准是RS-232C。78RS-232C标准l 外形为外形为25针或针或9针的针的D型连接器型连接器l 通信速率:波特率通信速率:波特率Baud(符号数符号数/s) 100、300、600、1200、2400、4800 9600、19.2K、33.6K、56K l 信号电平:信号电平: 逻辑逻辑“1”:-3V-15V 逻辑逻辑“0”:+3V+15V TTL电平与电平与RS232电平转换:电平转换:lTTLRS232: MC1488lRS232TTL: MC

36、148979主要引脚的功能80信号时序(接收)l设备握手设备握手 DTR:PCM(保持,表示(保持,表示PC已可以工作)已可以工作) DSR:PCM(保持,表示(保持,表示M已可以工作)已可以工作)l监视载波信号监视载波信号 DCD:PCM载波(表示数据链已建立)载波(表示数据链已建立)l接收数据接收数据 RD: PCM数据调制信号数据调制信号l结束通信结束通信 DCD消失、消失、PC撤除撤除DTR、Modem撤除撤除DSR81信号时序(发送)l设备握手设备握手 DTR:PCM(保持)(保持) DSR:PCM(保持)(保持)l请求发送请求发送 RTS:PCM(保持),(保持),M载波,在对方产

37、生载波,在对方产生DCD CTS:PCM(保持)(保持)l发送数据发送数据 TD:PCM数据调制信号数据调制信号l结束通信结束通信 PC撤除撤除RTS/DTR Modem撤除撤除CTS/DSR,停止发送载波,停止发送载波82RS-232C接口连接方式83RS-232C接口连接方式(续)l一种简化的连接方式(一种简化的连接方式(Null Modem) 适用于双机直连适用于双机直连TDRDRTSCTSDCDGNDDTRDSRRITDRDRTSCTSDCDGNDDTRDSRRI847.4.3 可编程串行通信接口8250主要内容:主要内容: 1)8250的引脚及功能的引脚及功能 2)与系统的连接)与系

38、统的连接 3)内部结构与内部寄存器)内部结构与内部寄存器 4)8250的编程的编程851. 8250 的引脚及功能l 面向系统的引脚:面向系统的引脚: D0D7 双向数据线。与系统数据总线双向数据线。与系统数据总线DB相连接,用以传送相连接,用以传送数据、控制信息和状态信息。数据、控制信息和状态信息。 CS0,CS1,CS2 片选信号,当它们同时有效时,该片选信号,当它们同时有效时,该8250芯片被选中。芯片被选中。 CSOUT 片选输出信号。当片选输出信号。当8250的的CS0、CS1和和CS2同时有效同时有效时,时,CSOUT为高电平。为高电平。 MR 主复位信号,复位后主复位信号,复位后

39、8250的状态见的状态见P331表表7-5。 878250 的引脚及功能(续)l面向通信设备的引脚信号面向通信设备的引脚信号 SIN, SOUT: 串行输入串行输入/输出端输出端 CTS, RTS, DTR, DSR:(同(同RS232标准中的信号)标准中的信号) RLSD: 即即RS232C标准中的标准中的DCD信号信号 RI:(同(同RS232标准中的信号)标准中的信号) OUT1, OUT2: 可由用户编程确定其状态的输出端可由用户编程确定其状态的输出端 BAUDOUT: 波特率信号输出(频率波特率信号输出(频率=fCLK/分频值)分频值) XTAL1, XTAL2: 接外部晶振,作为基

40、准时钟接外部晶振,作为基准时钟fCLK RCLK: 接收时钟输入(可直接与接收时钟输入(可直接与BAUDOUT相连)相连)884.3898250与8088系统的连接系统总线D7-D0DISTRDOSTRINTRMRA0A1A2ADSDISTRDOSTRCS2CS1CS0+5VCSD7-D0# IOR# IOWINTRRESETA0A1A2电平转换/驱动器14881489到RS232接口XTAL1XTAL2BAUDOUTRCLK SOUTSINRTSDTRDSRDCDCTSRI8250XTAL902. 8250的内部寄存器l 共共10个可编程(寻址)的寄存器个可编程(寻址)的寄存器 线路控制寄存

41、器(线路控制寄存器(LCR) BASE+3 线路状态寄存器(线路状态寄存器(LSR) BASE+5 发送保持寄存器(发送保持寄存器(THR) BASE+0(写)(写) 接收缓冲寄存器(接收缓冲寄存器(RBR) BASE+0(读)(读) 除数锁存器低除数锁存器低8位(位(DLL)BASE+0(DL=1) 除数锁存器高除数锁存器高8位(位(DLH)BASE+1(DL=1) 中断允许寄存器(中断允许寄存器(IER) BASE+1 中断识别寄存器(中断识别寄存器(IIR) BASE+2 Modem控制寄存器(控制寄存器(MCR)BASE+4 Modem状态寄存器(状态寄存器(MSR)BASE+6918

42、250的内部寄存器(续)l除数锁存器(除数锁存器(DLL,DLH)BASE+0,1 用来保存分频系数,以获得所需的用来保存分频系数,以获得所需的波特率波特率。l波特率波特率可以简单地看成每秒传送多少二进制位可以简单地看成每秒传送多少二进制位 PC机中基准时钟频率机中基准时钟频率fCLK=1.8432MHz,波特率因,波特率因子子K=16。所以,对于指定的波特率。所以,对于指定的波特率B 除数值除数值=1843200/(B16)=115200/B 例如,通信速率为例如,通信速率为9600波特时,除数值波特时,除数值=12。注意:写除数前,必须把注意:写除数前,必须把LCR的最高位的最高位(DL位

43、位)置置1928250的内部寄存器(续)l线路控制寄存器(线路控制寄存器(LCR)BASE+3 决定传输时的数据帧格式(通信双方必须一致)决定传输时的数据帧格式(通信双方必须一致)D7 D6 D5 D4 D3 D2 D1 D0DL位:0正常操作1写除数寄存器0正常操作1SOUT强制为1 (Break符号)xx0无校验001奇校验011偶校验101恒为1111恒为001位停止位12位停止位107位数据位118位数据位938250的内部寄存器(续)l线路状态寄存器(线路状态寄存器(LSR)BASE+5 反映传输时的通信线状态反映传输时的通信线状态 0 D6 D5 D4 D3 D2 D1 D0发送移

44、位寄存器空发送保持寄存器空检测到Break接收缓冲寄存器满溢出错奇偶错格式错(停止位个数不符)948250的内部寄存器(续)l发送保持寄存器(发送保持寄存器(THR)BASE+0 要发送的数据写入此寄存器。当发送移位寄存器要发送的数据写入此寄存器。当发送移位寄存器TSR空时,空时,THR中的内容移入中的内容移入TSR被发送出去。被发送出去。 只有只有THR空时,空时,CPU才能写入下一个要发送的数据才能写入下一个要发送的数据l接收缓冲寄存器(接收缓冲寄存器(RBR)BASE+0 RSR收到一个完整的数据后,就将其送入收到一个完整的数据后,就将其送入RBR中。中。CPU可从可从RBR中读取收到的

45、数据。中读取收到的数据。 RBR只能缓冲一个数据,当只能缓冲一个数据,当CPU未能及时取走上一未能及时取走上一个数据,下一个数据又送入个数据,下一个数据又送入RBR时,会产生溢出错时,会产生溢出错958250的内部寄存器(续)l中断允许寄存器(中断允许寄存器(IER)BASE+1 决定哪类中断可以产生(也可禁止所有中断产生)决定哪类中断可以产生(也可禁止所有中断产生) 0 0 0 0 D3 D2 D1 D01允许RBR满中断1允许THR空中断1允许线路状态中断 (溢出错、奇偶错、格式错、Break)1允许Modem状态中断968250的内部寄存器(续)l中断识别寄存器(中断识别寄存器(IIR)

46、BASE+2 用于识别产生中断的原因用于识别产生中断的原因 0 0 0 0 0 D2 D1 D00无中断1有中断00Modem状态中断(优先级最低)01THR空中断10RBR满中断11线路状态中断978250的内部寄存器(续)lModem控制寄存器(控制寄存器(MCR)BASE+4 产生产生RTS、DTR信号信号 产生产生OUT1、OUT2信号信号 设置循环自检状态设置循环自检状态 0 0 0 D4 D3 D2 D1 D0DTRRTSOUT1OUT2LOOP988250的内部寄存器(续)lModem状态寄存器(状态寄存器(MSR)BASE+6 反映反映RS232接口的状态接口的状态CTSDSR

47、RIRLSDCTSD7 D6 D5 D4 D3 D2 D1 D0RLSDRIDSR反映4个引脚的当前状态(反相值)反映了自上次读MSR后这4个引脚是否发生了变化(1发生了变化)998250发送数据的工作过程1)CPU(数据数据)8250的的THR ;2)TSR移空时,移空时,THR TSR,LSR中中“数据发送保持寄存器空数据发送保持寄存器空” 状态位置位状态位置位 ;3)TSR根据根据LCR中规定的格式从低到高逐位发送数据中规定的格式从低到高逐位发送数据 ;4)LSR中中“数据发送保持寄存器空数据发送保持寄存器空” 状态位可用来产生中断,也状态位可用来产生中断,也可查询该状态位,以实现数据的连续发送。可查询该状态位,以实现数据的连续发送。TSRTHR串行数据输出并行数据LSRINTLCR数据状态1)2)3)2)4)4)1008250接收数据的工作过程LSR中中状态位可用来产生中断,也可查询状态位可用来产生

温馨提示

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

评论

0/150

提交评论