第5章-4(3学时)串行通信接口.ppt

上传人:s****8 文档编号:82774896 上传时间:2023-03-26 格式:PPT 页数:71 大小:1.09MB
返回 下载 相关 举报
第5章-4(3学时)串行通信接口.ppt_第1页
第1页 / 共71页
第5章-4(3学时)串行通信接口.ppt_第2页
第2页 / 共71页
点击查看更多>>
资源描述

《第5章-4(3学时)串行通信接口.ppt》由会员分享,可在线阅读,更多相关《第5章-4(3学时)串行通信接口.ppt(71页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第第5章章-4 串行通信接口串行通信接口教学重点:串行通信接口基本概念 RS-232-C标准 8250的内部结构和编程 异步通信适配器及编程1目录n5.1 串行通信基础串行通信基础 n5.2 串行接口标准串行接口标准RS-232Cn5.3 通用异步接收发送器通用异步接收发送器8250n5.4 异步通信适配器及编程异步通信适配器及编程25.1 串行通信基础n串串行行通通信信:将将数数据据分分解解成成二二进进制制位位用用一一条条信号线,一位一位顺序传送的方式;信号线,一位一位顺序传送的方式;n串串行行通通信信的的优优势势:用用于于通通信信的的线线路路少少,因因而在远距离通信时可以极大地降低成本;而

2、在远距离通信时可以极大地降低成本;n串串行行通通信信适适合合于于远远距距离离数数据据传传送送,也也常常用用于速度要求不高的近距离数据传送;于速度要求不高的近距离数据传送;nPC系系列列机机上上有有两两个个串串行行异异步步通通信信接接口口、键键盘、鼠标器与主机间采用串行数据传送。盘、鼠标器与主机间采用串行数据传送。31.异步通信n收发双方时钟不统一;收发双方时钟不统一;n串串行行通通信信时时的的数数据据、控控制制和和状状态态信信息息都都使使用用同一根信号线同一根信号线传送;传送;n收收发发双双方方必必须须遵遵守守共共同同的的通通信信协协议议(通通信信规规程程),才才能能解解决决传传送送速速率率、

3、信信息息格格式式、位同步、字符同步、数据校验等问题;位同步、字符同步、数据校验等问题;n串串行行异异步步通通信信以以字字符符为为单单位位进进行行传传输输,其其通信协议是通信协议是起止式异步通信协议起止式异步通信协议。4起止式异步通信协议起起始始位位每每个个字字符符开开始始传传送送的的标标志志,起始位采用逻辑起始位采用逻辑0电平电平数数据据位位数数据据位位紧紧跟跟着着起起始始位位传传送送。由由58个二进制位组成,低位先传送个二进制位组成,低位先传送校校验验位位用用于于校校验验是是否否传传送送正正确确;可可选择奇检验、偶校验或不传送校验位选择奇检验、偶校验或不传送校验位停停止止位位表表示示该该字字

4、符符传传送送结结束束。停停止止位采用逻辑位采用逻辑1电平,可选择电平,可选择1、1.5或或2位位空空闲闲位位传传送送字字符符之之间间的的逻逻辑辑1电电平平,表示没有进行传送表示没有进行传送5数据传输速率n比特率比特率数数字字信信号号的的传传输输速速率率,为为单单位位时时间间内内传传输输的的二二进进制制代代码码的的有有效效位位(bit)数数,单单位位为为每每秒秒比比特特数数bit/s(bps)、每秒千比特数每秒千比特数(Kbps)或每秒兆比特数或每秒兆比特数(Mbps)来表示。来表示。n波特率波特率数数据据信信号号对对载载波波的的调调制制速速率率,为为单单位位时时间间内内载载波波调调制状态改变次

5、数,单位为波特制状态改变次数,单位为波特(Baud)。n波波特特率率与与比比特特率率的的关关系系:比比特特率率=波波特特率率 单单个个调调制状态对应的二进制位数制状态对应的二进制位数。6数据传输速率n两两相相调调制制(单单个个调调制制状状态态对对应应1个个二二进进制制位位)的的比比特特率率等等于于波波特特率率;四四相相调调制制(单单个个调调制制状状态态对对应应2个个二二进进制制位位)的的比比特特率率为为波波特特率率的的两两倍倍;八八相相调调制制(单单个个调调制制状状态态对对应应3个个二二进进制制位位)的的比比特特率率为为波波特特率率的的三三倍倍;依依次类推;次类推;n常常用用的的波波特特率率:

6、50,70,110,150,300,600,1200,2400,4800,9600,115200。72.同步通信n双方对每一位的收发时序完全一致,统一时钟;双方对每一位的收发时序完全一致,统一时钟;n以以一一个个数数据据块块(帧帧)为为传传输输单单位位,每每个个数数据据块块附附加加1个或个或2个同步字符,最后以校验字符结束;个同步字符,最后以校验字符结束;n同同步步通通信信的的数数据据传传输输效效率率和和传传输输速速率率较较高高,但但硬硬件电路比较复杂;件电路比较复杂;n同步串行通信主要应用在网络当中;同步串行通信主要应用在网络当中;n最常使用高级数据链路控制协议最常使用高级数据链路控制协议H

7、DLC。同步字符同步字符数据数据数据数据数据数据校验字符校验字符8单工通信单工通信只能由一方发送,只能由一方发送,例:广播例:广播半双工通信半双工通信某一时刻只能由一方发送,某一时刻只能由一方发送,例:对讲机例:对讲机全双工通信全双工通信双方可同时传输,双方可同时传输,例:电话例:电话3.传输模式93.传输模式发送器发送器接收器接收器发送器发送器/接收器接收器发送器发送器/接收器接收器发送器发送器/接收器接收器发送器发送器/接收器接收器单工方式:单工方式:半双工方式:半双工方式:全双工方式:全双工方式:A站站B站站10n电话网络电话网络模拟信号模拟信号,计算机,计算机数字信号数字信号;n远距离

8、通信时需要通过普通电话网络传输;远距离通信时需要通过普通电话网络传输;数字信号数字信号:频带宽:频带宽电话网络电话网络:频带窄:频带窄 要要使使数数字字信信号号在在电电话话网网络络上上传传输输,需需要要进进行行信信号号变变换换把把数数字字信信号号承承载载到到模模拟拟信信号号上上传传输输,这这个个模模拟拟信信号号称称为为载波载波信号。信号。n调制调制把数字信号承载到载波信号上;把数字信号承载到载波信号上;n解调解调从载波信号中恢复出数字信号;从载波信号中恢复出数字信号;n调制解调器调制解调器:实现调制与解调的设备。:实现调制与解调的设备。4.调制与解调11目录n5.1 串行通信基础串行通信基础

9、n5.2 串行接口标准串行接口标准RS-232Cn5.3 通用异步接收发送器通用异步接收发送器8250n5.4 异步通信适配器及编程异步通信适配器及编程125.2 串行接口标准RS-232Cn美国电子工业协会美国电子工业协会EIA制定的通用标准串行接口;制定的通用标准串行接口;n设计目的是用于设计目的是用于连接调制解调器连接调制解调器;n现现已已成成为为数数据据终终端端设设备备DTE(例例如如计计算算机机)与与数数据据通信设备通信设备DCE(例如调制解调器)的标准接口;例如调制解调器)的标准接口;n可实现远距离通信,也可近距离连接两台微机;可实现远距离通信,也可近距离连接两台微机;n属于网络层

10、次结构中的最低层:属于网络层次结构中的最低层:物理层物理层。135.2.1 RS-232C的引脚定义n232C接口标准使用一个接口标准使用一个25针连接器;针连接器;n绝绝大大多多数数设设备备只只使使用用其其中中9个个信信号号,所所以以就就有了有了9针连接器针连接器;14主要引脚的功能15RS-232C的引脚(1)nTxD(输出)(输出):发送数据:发送数据n串行数据的发送端串行数据的发送端nRxD(输入)(输入):接收数据:接收数据n串行数据的接收端串行数据的接收端16RS-232C的引脚(2)nRTS(输出)(输出):请求发送:请求发送n当当数数据据终终端端设设备备准准备备好好送送出出数数

11、据据时时,就就发发出出有有效效的的RTS信号,用于通知信号,用于通知数据通信设备数据通信设备准备接收数据;准备接收数据;nCTS(输入)(输入):清除发送(允许发送):清除发送(允许发送)n当当数数据据通通信信设设备备已已准准备备好好接接收收数数据据终终端端设设备备的的传传送送数数据时,发出据时,发出CTS有效信号来响应有效信号来响应RTS信号;信号;nRTS和和CTS是是数数据据终终端端设设备备与与数数据据通通信信设设备备间间一一对用于数据发送的联络信号。对用于数据发送的联络信号。17RS-232C的引脚(3)nDTR(输出):(输出):数据终端准备好数据终端准备好n通通常常当当数数据据终终

12、端端设设备备一一加加电电,该该信信号号就就有有效效,表表明明数数据终端设备准备就绪据终端设备准备就绪nDSR(输入):(输入):数据装置准备好数据装置准备好n通通常常表表示示数数据据通通信信设设备备(即即数数据据装装置置)已已接接通通电电源源连连到通信线路上,并处在数据传输方式到通信线路上,并处在数据传输方式nDTR和和DSR也也可可用用做做数数据据终终端端设设备备与与数数据据通通信信设设备间的联络信号,例如应答数据接收备间的联络信号,例如应答数据接收18RS-232C的引脚(4)nGND:信号地信号地n为所有的信号提供一个公共的参考电平;为所有的信号提供一个公共的参考电平;nCD(输入)(输

13、入):载波检测(:载波检测(DCD)n当当本本地地调调制制解解调调器器接接收收到到来来自自对对方方的的载载波波信信号号时,该引脚向数据终端设备提供有效信号;时,该引脚向数据终端设备提供有效信号;nRI(输入)(输入):振铃指示:振铃指示n当当调调制制解解调调器器接接收收到到对对方方的的拨拨号号信信号号期期间间,该该引脚信号作为电话铃响的指示、保持有效。引脚信号作为电话铃响的指示、保持有效。19RS-232C的引脚(5)n保护地保护地(机壳地)(机壳地)n起起屏屏蔽蔽保保护护作作用用的的接接地地端端,一一般般应应参参照照设设备备的的使用规定,连接到设备的外壳或大地使用规定,连接到设备的外壳或大地

14、nTxC:发送器时钟发送器时钟n控制数据终端发送串行数据的时钟信号控制数据终端发送串行数据的时钟信号nRxC:接收器时钟接收器时钟n控制数据终端接收串行数据的时钟信号控制数据终端接收串行数据的时钟信号205.2.2 RS-232C的连接n微微机机利利用用232C接接口口连连接接调调制制解解调调器器,用用于于实现通过电话线路的远距离通信实现通过电话线路的远距离通信n微微机机利利用用232C接接口口直直接接连连接接进进行行短短距距离离通通信信。这这种种连连接接不不使使用用调调制制解解调调器器,所所以以被被称为零调制解调器称为零调制解调器(Null Modem)连接连接21连接调制解调器22不使用联

15、络信号的3线相连方式n为了交换信息,为了交换信息,TxD和和RxD应当交叉连接应当交叉连接n程序中不必使程序中不必使RTS和和DTR有效有效n也不应检测也不应检测CTS和和DSR是否有效是否有效 23“伪”使用联络信号的3线相连方式RTS和和CTS各自互接,各自互接,DTR和和DSR各自互接各自互接表明请求传送总是允许、数据装置总准备好表明请求传送总是允许、数据装置总准备好24使用联络信号的多线相连方式通信比较可靠通信比较可靠所用连线较多,不如前者经济所用连线较多,不如前者经济255.2.3 RS-232C的电气特性n232C接口采用接口采用EIA电平电平n高电平为高电平为-5V-25Vn低电

16、平为低电平为+5V+25Vn实际常用实际常用12Vn标准标准TTL电平电平n高电平:高电平:2.4V5Vn低电平:低电平:0V0.4V相互转换相互转换26TTL与与RS-232-C之间的电平转换之间的电平转换UART:Universal Asynchronous Receiver Transmitter27目录n5.1 串行通信基础串行通信基础 n5.2 串行接口标准串行接口标准RS-232Cn5.3 通用异步接收发送器通用异步接收发送器8250n5.4 异步通信适配器及编程异步通信适配器及编程285.3 通用异步接收发送器8250n串串行行传传输输,需需要要并并行行到到串串行行和和串串行行到

17、到并并行行的的转转换换,并并按按照照传传输输协协议议发发送送和和接接收收每每个个字字符符(或数据块);(或数据块);n这些工作可由软件实现,也可用硬件实现;这些工作可由软件实现,也可用硬件实现;n通通用用异异步步接接收收发发送送器器UART是是串串行行异异步步通通信信的接口电路芯片;的接口电路芯片;nIBM PC/XT机的机的UART芯片是芯片是INS 8250。295.3.1 8250的内部结构n8250实实现现了了起起止止式式串串行行异异步步通通信信协协议议,支支持全双工通信持全双工通信n通信字符可选择数据位为通信字符可选择数据位为58位位n停止位停止位1、1.5或或2位位n可进行奇偶校验

18、可进行奇偶校验n具有奇偶、帧和溢出错误检测电路具有奇偶、帧和溢出错误检测电路n8250支持的数据传输速率为支持的数据传输速率为509600bps30数数据据总总线线缓缓冲冲寻寻址址及及控控制制逻逻辑辑CS0CS1CS2A2A1A0/ADSDISTR/DISTRDOSTR/DOSTRDDISMRD0D7内内部部数数据据总总线线发送保持寄存器发送保持寄存器接收缓冲寄存器接收缓冲寄存器发送移位寄存器发送移位寄存器接收移位寄存器接收移位寄存器SoutSin线路控制寄存器线路控制寄存器线路状态寄存器线路状态寄存器除数寄存器高位除数寄存器高位除数寄存器低位除数寄存器低位波特率发生器波特率发生器MODEM控

19、制寄存器控制寄存器MODEM状态寄存器状态寄存器RCLKXTAL1XTAL2/BAUDOUT控制逻辑控制逻辑/RTS/CTS/DTR/DSR/RLSD/RI中断允许寄存器中断允许寄存器中断识别寄存器中断识别寄存器控制逻辑控制逻辑/OUT1/OUT2INTRPT中断中断MODEM1M10M握握手手线线UART数数据据总总线线缓缓冲冲寻寻址址及及控控制制逻逻辑辑5.3.1 8250的内部结构311.串行数据的发送并行数据并行数据加入起始位、加入起始位、校验位、停止位校验位、停止位串行数据串行数据CPU发送保持寄存器发送保持寄存器发送移位寄存器发送移位寄存器同步控制同步控制8250SOUT0/10/

20、1 0/10/10/10/10/10/1双缓冲寄存器结构双缓冲寄存器结构保证数据的连续发送保证数据的连续发送322.串行数据的接收并行数据并行数据检测接收错误检测接收错误删除起始位、删除起始位、校验位、停止位校验位、停止位串行数据串行数据CPU接收缓冲寄存器接收缓冲寄存器接收移位寄存器接收移位寄存器同步控制同步控制8250SIN0/10/1 0/10/10/10/10/10/1双缓冲寄存器结构双缓冲寄存器结构保证数据的连续接收保证数据的连续接收333.接收错误的处理n奇偶错误奇偶错误PE(Parity Error)n若接收到的字符的若接收到的字符的“1”的个数不符合奇偶校验要求的个数不符合奇偶

21、校验要求n帧错误帧错误FE(Frame Error)n若接收到的字符格式不符合规定(如缺少停止位)若接收到的字符格式不符合规定(如缺少停止位)n溢出错误溢出错误OE(Overrun Error)n若若接接收收移移位位寄寄存存器器接接收收到到一一个个数数据据,并并送送至至输输入入缓缓冲冲器时,器时,CPU还未取走前一个数据,就会出现数据溢出还未取走前一个数据,就会出现数据溢出n若接收缓冲器的级数多,则溢出错误的几率就少若接收缓冲器的级数多,则溢出错误的几率就少345.3.2 8250的引脚n分分成成连连接接CPU的的部部分分和和连连接接外外设设的的部部分;分;n注注 意意:8250不不 是是In

22、tel公公司司的的产产品品,所所以以该该芯芯片片引引脚脚名名称称与与前前面面学学习习的的8253、8255等等Intel产产品品有有所所不不同同,但但是是引引脚脚功功能能却却是是类类似。似。351.处理器接口引脚(1)n数据线数据线D0D7:在:在CPU与与8250之间交换信息;之间交换信息;n地址线地址线A0A2:寻址:寻址8250内部寄存器;内部寄存器;n片片选选线线:8250设设计计了了3个个片片选选输输入入信信号号CS0、CS1、CS2*和和一一个个片片选选输输出出信信号号CSOUT。3个个片片选选输输入入都都有有效效时时,才才选选中中8250芯芯片片,同同时时CSOUT输输出出高高电

23、电平平有效;有效;n地地址址选选通通信信号号ADS*:当当该该信信号号低低有有效效时时,锁锁存存上上述述地地址址线线和和片片选选线线的的输输入入状状态态,保保证证读读写写期期间间的的地地址稳定。址稳定。361.处理器接口引脚(2)n读控制线读控制线n数数据据输输入入选选通通DISTR(高高有有效效)和和DISTR*(低低有有效效)有一个信号有效,有一个信号有效,CPU从从8250内部寄存器读出数据;内部寄存器读出数据;n相当于相当于I/O读信号;读信号;n写控制线写控制线n数数据据输输出出选选通通DOSTR(高高有有效效)和和DOSTR*(低低有有效效)有一个有效,有一个有效,CPU就将数据写

24、入就将数据写入8250内部寄存器内部寄存器n相当于相当于I/O写信号;写信号;n8250读读写写控控制制信信号号有有两两对对,每每对对信信号号作作用用完完全全相相同,只不过有效电平不同而己。同,只不过有效电平不同而己。371.处理器接口引脚(3)n驱动器禁止信号DDIS:CPU从8250读取数据时,DDIS引脚输出低电平,用来禁止外部收发器对系统总线的驱动;其他时间,DDIS为高电平;n主复位线MR:硬件复位信号RESET;n中断请求线INTRPT:8250有4级共10个中断源,当任一个未被屏蔽的中断源有请求时,INTRPT输出高电平向CPU请求中断。382.时钟信号n时钟输入引脚时钟输入引脚

25、XTAL1:8250的基准工作时钟的基准工作时钟n时钟输出引脚时钟输出引脚XTAL2:基准时钟信号的输出端:基准时钟信号的输出端n波波特特率率输输出出引引脚脚BAUDOUT*:基基准准时时钟钟经经8250内部波特率发生器分频后产生发送时钟内部波特率发生器分频后产生发送时钟n接接收收时时钟钟引引脚脚RCLK:接接收收外外部部提提供供的的接接收收时时钟钟信信号号;若若采采用用发发送送时时钟钟作作为为接接收收时时钟钟,则则只只要要将将RCLK引脚和引脚和BAUDOUT*引脚直接相连引脚直接相连393.异步串行接口引脚8250数据装置准备好数据装置准备好DSR*数据终端准备好数据终端准备好DTR*发送

26、数据发送数据SOUT接收数据接收数据SIN请求发送请求发送RTS*允许发送允许发送CTS*信号地信号地GND载波检测载波检测RLSD*振铃指示振铃指示RI*404.输出线nOUT1*和和OUT2*:n两个一般用途的输出信号;两个一般用途的输出信号;n由由调调制制解解调调器器控控制制寄寄存存器器的的D2和和D3使使其其输输出出低电平有效信号;低电平有效信号;n复位使其恢复为高。复位使其恢复为高。415.3.3 8250的寄存器n8250内内部部有有9种种可可访访问问的的寄寄存存器器,除除数数寄寄存存器是器是16位的,占用两个连续的位的,占用两个连续的8位端口;位端口;n内部寄存器用引脚内部寄存器

27、用引脚A0A2来寻址;来寻址;42INS8250内部寄存器地址A2 A1 A0 DLAB COM1 寄存器寄存器000 0 3F8 写发送寄存器写发送寄存器/读接收寄存器读接收寄存器000 1 3F8 除数寄存器低字节除数寄存器低字节001 1 3F9 除数寄存器高字节除数寄存器高字节001 0 3F9 中断允许中断允许010 x 3FA 中断识别中断识别011 x 3FB 线路控制线路控制100 x 3FC MODEM控制控制101 x 3FD 线路状态线路状态110 x 3FE MODEM 状态状态111 x 3FF 不用不用431.接收缓冲寄存器RBR存放串行接收后转换成并行的数据存放串

28、行接收后转换成并行的数据CPU接收缓冲寄存器接收缓冲寄存器接收移位寄存器接收移位寄存器同步控制同步控制8250SIN442.发送保持寄存器THR包含将要串行发送的并行数据包含将要串行发送的并行数据 CPU发送保持寄存器发送保持寄存器发送移位寄存器发送移位寄存器同步控制同步控制8250SOUT453.除数寄存器除数寄存器保存设定的分频系数除数寄存器保存设定的分频系数分频系数基准时钟频率分频系数基准时钟频率(16比特率)比特率)起起 始始 位位时钟时钟(RCLK)数据线数据线(SIN)T16 T16 T8 T464.通信线路控制寄存器LCRDLABD6 D5 D4 D3D2D1 D0寄存器选择寄存

29、器选择0 正常值正常值1 除数寄存器除数寄存器中止字符中止字符0 无作用无作用1 发送中止字符发送中止字符校验位设置校验位设置0 无校验位无校验位001 设置奇校验设置奇校验011 设置偶校验设置偶校验101 校验位为校验位为1111 校验位为校验位为0停止位个数停止位个数0 1位位1 1.5位(数据位为位(数据位为5位时)位时)1 2位(数据位为位(数据位为68位时)位时)数据位个数数据位个数00 5位位01 6位位10 7位位11 8位位指定串行异步通信的字符格式指定串行异步通信的字符格式475.通信线路状态寄存器LSR0D6 D5 D4 D3D2D1 D0为为1,表示发送移位寄存器空;,

30、表示发送移位寄存器空;当数据由发送保持寄存器移入当数据由发送保持寄存器移入发送移位寄存器时,该位为发送移位寄存器时,该位为0提供串行异步通信的当前状态提供串行异步通信的当前状态供供CPU读取和处理读取和处理为为1,表示发送保持寄存器空,表示发送保持寄存器空,当当CPU将字符写入发送保持将字符写入发送保持寄存器后,该位为寄存器后,该位为0为为1,表示正在传输中止字符,表示正在传输中止字符为为1,表示出现帧错误,表示出现帧错误为为1,表示出现奇偶错,表示出现奇偶错为为1,表示出现溢出错,表示出现溢出错为为1,表示接收数据缓冲器收到,表示接收数据缓冲器收到一个数据,既接收数据准备好;一个数据,既接收

31、数据准备好;当当CPU读走数据后,该位为读走数据后,该位为048为为1使使DTR*引脚为低引脚为低否则为高否则为高 6.调制解调器控制寄存器MCR设置设置8250与数据通信设备之间与数据通信设备之间联络应答的输出信号联络应答的输出信号0 0 0LOOP OUT2OUT1RTS DTR为为1使使RTS*引脚为低引脚为低否则为高否则为高 为为1使使OUT1*引脚为低引脚为低否则为高否则为高 为为1使使OUT2*引脚为低引脚为低否则为高否则为高 为为1使使8250为为循环工作方式循环工作方式否则为正常工作方式否则为正常工作方式497.调制解调器状态寄存器MSRn反映反映4个控制输入信号的当前状态及其

32、变化个控制输入信号的当前状态及其变化nMSR高高4位位中中某某位位为为1,说说明明相相应应输输入入信信号号当当前前为为低有效,否则为高电平低有效,否则为高电平nMSR低低4位位中中某某位位为为1,则则说说明明从从上上次次CPU读读取取该该状状态态字字后后,相相应应输输入入信信号号已已发发生生改改变变,从从高高变变低或反之低或反之nMCR低低4位位任任一一位位置置1,均均产产生生调调制制解解调调器器状状态态中中断断,当当CPU读读取取该该寄寄存存器器或或复复位位后后,低低4位位被被清零清零RLSD RI DSR CTS RLSD RI DSR CTS508.中断允许寄存器IERn8250设计有设

33、计有2个中断寄存器和个中断寄存器和4级中断级中断n4级级中中断断的的优优先先权权,是是按按照照串串行行通通信信过过程程中中事件的紧迫程度安排的、是固定不变的事件的紧迫程度安排的、是固定不变的n用户可利用中断允许或禁止进行控制用户可利用中断允许或禁止进行控制n中中断断允允许许寄寄存存器器的的低低4位位控控制制8250这这4级级中中断是否被允许断是否被允许n某位为某位为1,则对应的中断被允许,则对应的中断被允许n否则,被禁止否则,被禁止接收数据接收数据错错MODEM状态变化状态变化0 0 0 0 发送寄存发送寄存器空器空接收数据接收数据就绪就绪D7D4D3D2D1D0514级中断n接收线路状态中断

34、接收线路状态中断n奇偶错、溢出错、帧错和中止字符奇偶错、溢出错、帧错和中止字符n接收器数据准备好中断接收器数据准备好中断n发送保持寄存器空中断发送保持寄存器空中断n调制解调器状态中断调制解调器状态中断n清除发送状态改变清除发送状态改变n数据终端准备好状态改变数据终端准备好状态改变n振铃接通变成断开振铃接通变成断开n接收线路信号检测状态改变接收线路信号检测状态改变优先权高优先权高优先权高优先权高优先权低优先权低529.中断识别IIR保存正在请求中断的优先权最高保存正在请求中断的优先权最高的中断级别编码的中断级别编码0 0 0 0 0ID1 ID0IP0 有中断有中断1 无中断无中断ID1ID0优

35、先权优先权中断类型中断类型1 11 00 10 01234 接收线路状态接收线路状态 接收数据准备好接收数据准备好 发送保持寄存器空发送保持寄存器空 调制解调器状态调制解调器状态53目录n5.1 串行通信基础串行通信基础 n5.2 串行接口标准串行接口标准RS-232Cn5.3 通用异步接收发送器通用异步接收发送器8250n5.4 异步通信适配器及编程异步通信适配器及编程545.4 异步通信适配器及编程nIBM PC/XT机的串行异步通信适配器机的串行异步通信适配器n以以8250为核心为核心n完完成成发发送送时时的的并并转转串串和和接接收收时时的的串串转转并并以以及及相相应的控制工作应的控制工

36、作n配置了配置了TTL电平与电平与EIA电平转换电路等电平转换电路等n展开异步通信适配器的展开异步通信适配器的n硬件电路硬件电路n软件编程软件编程55RCLKRCLKBAUDOUTBAUDOUTIRQIRQ4 4IRQIRQ3 3RESETRESET+5V+5VA A8 8AENAENA A3 3A A7 7A A9 9IOR IOR IOWIOWA A0 0A A2 2MRMRXTAL1XTAL1OUTOUT1 1OUTOUT2 2INTRPTINTRPTDISTRDISTRDOSTRDOSTRA A0 0A A2 2CS2CS282508250LS245LS245D D0 0D D7 7D

37、 D0 0D D7 7J9J9J10J10J11J11J12J12DIRDIR1.8432MHz1.8432MHzCS0CS0CS1CS1ADSADSDISTRDISTRDOSTRDOSTR5V5V5.4.1 异步通信适配器的接口电路注意:注意:J9J12跨接器跨接器和和OUT2*的作用的作用565.4.2 异步通信适配器的初始化编程n对对8250的内部控制寄存器进行编程写入的内部控制寄存器进行编程写入 写入除数寄存器写入除数寄存器n设置传输率设置传输率 写入通信线路控制寄存器写入通信线路控制寄存器n设置字符格式设置字符格式 写入调制解调器控制寄存器写入调制解调器控制寄存器n设置工作方式设置工

38、作方式 写入中断允许寄存器写入中断允许寄存器n设置中断允许或屏蔽位设置中断允许或屏蔽位57设置传输率mov al,80hmov dx,3fbhout dx,al;写入通信线路控制寄存器,使写入通信线路控制寄存器,使DLAB1mov ax,96;分频系数:分频系数:1.8432MHz(120016)9660Hmov dx,3f8hout dx,al;写入除数寄存器低写入除数寄存器低8位位mov al,ah inc dxout dx,al;写入除数寄存器高写入除数寄存器高8位位写入除数寄存器58设置字符格式mov al,00001010bmov dx,3fbh out dx,al;写入通信线路控制

39、寄存器写入通信线路控制寄存器;这段程序同时使这段程序同时使DLAB0写入通信线路控制寄存器59设置工作方式n设置查询通信方式设置查询通信方式mov al,03h;控制控制OUT2*为高,为高,DTR*和和RTS*为低为低 mov dx,3fchout dx,al;写入调制解调器控制寄存器写入调制解调器控制寄存器n设置中断通信方式设置中断通信方式mov al,0bh;控制为控制为OUT2*低,允许低,允许INTRPT产生请求产生请求mov dx,3fchout dx,al写入调制解调器控制寄存器60设置中断允许或屏蔽位mov al,0;禁止所有中断禁止所有中断 mov dx,3f9hout dx

40、,al;写入中断允许寄存器(此时写入中断允许寄存器(此时DLAB0)写入中断允许寄存器615.4.3 异步通信程序n程序循环读取程序循环读取8250的通信状态寄存器的通信状态寄存器n数据传输错误就显示一个问号数据传输错误就显示一个问号“?”n接收到数据就显示出来接收到数据就显示出来n可可以以发发送送数数据据就就从从键键盘盘输输入入发发送送字字符符(用用户户没没有输入字符就不发送)有输入字符就不发送)n如果按下如果按下ESC键返回键返回DOS62查询通信线路状态statue:mov dx,2fdh;读通信线路状态寄存器读通信线路状态寄存器in al,dxtest al,1eh;接收有错误否接收有

41、错误否?jnz error;有错,则转错误处理有错,则转错误处理test al,01h;接收到数据吗接收到数据吗?jnz receive;是,转接收处理是,转接收处理test al,20h;发送保持寄存器空吗发送保持寄存器空吗?jz statue;不空,循环查询不空,循环查询异步通信程序63检测键盘输入mov ah,0bh;检测键盘有无输入字符检测键盘有无输入字符int 21hcmp al,0jz statue;无输入字符,循环等待无输入字符,循环等待mov ah,0;有输入字符,读取字符有输入字符,读取字符int 16h;采用采用01号号DOS功能调用,则有回显功能调用,则有回显cmp al

42、,1bhjz done;是是ESC键,程序返回键,程序返回DOS异步通信程序64发送数据mov dx,2f8h;将字符输出给发送保持寄存器将字符输出给发送保持寄存器out dx,al;串行发送数据串行发送数据jmp statue;继续查询继续查询异步通信程序65接收数据receive:mov dx,2f8h;从输入缓冲寄存器读取字符从输入缓冲寄存器读取字符in al,dxand al,7fh;传送标准传送标准ASCII码(码(7个数据位)个数据位);所以仅取低所以仅取低7位位push ax;保存数据保存数据异步通信程序66显示数据mov dl,al;屏幕显示该数据屏幕显示该数据mov ah,2

43、int 21hpop ax;恢复数据恢复数据cmp al,0dh;数据是回车符吗数据是回车符吗?jnz statue;不是,则循环不是,则循环mov dl,0ah;是,再进行换行是,再进行换行mov ah,2int 21hjmp statue;继续查询继续查询异步通信程序67接收错误处理error:mov dx,2f8h;读出接收有误的数据,丢掉读出接收有误的数据,丢掉in al,dxmov dl,?;显示问号显示问号mov ah,2int 21hjmp statue;继续查询继续查询异步通信程序685.4.4 中断通信方式的编程方法n关键关键解决主程序与中断服务程序的数据传递解决主程序与中断服务程序的数据传递n注意注意处理好处理好8250的的4级级10种中断源种中断源n简便方法简便方法只允许接收数据准备好中断只允许接收数据准备好中断69中断通信方式的循环队列接收缓冲接收缓冲寄存器寄存器中断服务程序中断服务程序主程序主程序读队列送读队列送UART(保持寄存器空中断)(保持寄存器空中断)读读UART送队列送队列(接收数据准备好中断)(接收数据准备好中断)发送处理:发送处理:向队列向队列输出字符输出字符接收处理:接收处理:从队列从队列输入字符输入字符接收队列接收队列尾指针尾指针头指针头指针头指针头指针尾指针尾指针发送队列发送队列UART发送保持发送保持寄存器寄存器70

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁