小学教育微机技术串行通信与.pptx

上传人:莉*** 文档编号:72442846 上传时间:2023-02-11 格式:PPTX 页数:66 大小:395.24KB
返回 下载 相关 举报
小学教育微机技术串行通信与.pptx_第1页
第1页 / 共66页
小学教育微机技术串行通信与.pptx_第2页
第2页 / 共66页
点击查看更多>>
资源描述

《小学教育微机技术串行通信与.pptx》由会员分享,可在线阅读,更多相关《小学教育微机技术串行通信与.pptx(66页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、课前提问8259A管理中断优先权的方案有几种?什么是特殊屏蔽方式?(isr,irr)第1页/共66页第第0909章章 串行通信接口串行通信接口教学重点n 串行通信基础(异步通信协议和RS232C接口)n 8250的内部结构和编程 n 异步通信程序第2页/共66页9.1 串行通信基础串行通信:将数据分解成二进制位用一条信号线,一位一位顺序传送的方式串行通信的优势:用于通信的线路少,因而在远距离通信时可以极大地降低成本串行通信适合于远距离数据传送,也常用于速度要求不高的近距离数据传送PC系列机上有两个串行异步通信接口、键盘、鼠标器与主机间采用串行数据传送第3页/共66页1.异步通信串行通信时的数据

2、、控制和状态信息都使用同一根信号线传送收发双方必须遵守共同的通信协议(通信规程),才能解决传送速率、信息格式、位同步、字符同步、数据校验等问题串行异步通信以字符为单位进行传输,其通信协议是起止式异步通信协议第4页/共66页起止式异步通信协议起始位每个字符开始传送的标志,起始位采用逻辑0电平起始位校验位停止位空闲位数据位低位高位字符0/10/10/10/10/10/10/10/11 10 01 11 11 1数据位数据位紧跟着起始位传送。由58个二进制位组成,低位先传送校验位用于校验是否传送正确;可选择奇检验、偶校验或不传送校验位停止位表示该字符传送结束。停止位采用逻辑1电平,可选择1、1.5或

3、2位空闲位传送字符之间的逻辑1电平,表示没有进行传送第5页/共66页数据传输速率数据传输速率也称比特率(Bit Rate)每秒传输的二进制位数bps字符中每个二进制位持续的时间长度都一样,为数据传输速率的倒数当进行二进制数码传输,且每位时间长度相等时,比特率还等于波特率(Baud Rate)过去,串行异步通信的数据传输速率限制在50 bps到9600 bps之间。现在,可以达到115200 bps或更高第6页/共66页2.同步通信以一个数据块(帧)为传输单位,每个数据块附加1个或2个同步字符,最后以校验字符结束同步通信的数据传输效率和传输速率较高,但硬件电路比较复杂串行同步通信主要应用在网络当

4、中最常使用高级数据链路控制协议HDLC同步字符数据数据数据校验字符第7页/共66页3.传输制式全双工站A站B站A站B站A站B半双工单工第8页/共66页4.调制解调器调制(Modulating)把数字信号转换为电话线路传送的模拟信号解调(Demodulating)将电话线路的模拟信号转换为数字信号调制解调器MODEM具有调制和解调功能的器件合制在一个装置第9页/共66页9.2 串行接口标准RS-232C(补充)美国电子工业协会EIA制定的通用标准串行接口1962年公布,1969年修订1987年1月正式改名为EIA-232D设计目的是用于连接调制解调器现已成为数据终端设备DTE(例如计算机)与数据

5、通信设备DCE(例如调制解调器)的标准接口可实现远距离通信,也可近距离连接两台微机属于网络层次结构中的最低层:物理层第10页/共66页9.2.1 RS-232C的引脚定义232C接口标准使用一个25针连接器绝大多数设备只使用其中9个信号,所以就有了9针连接器232C包括两个信道:主信道和次信道次信道为辅助串行通道提供数据控制和通道,但其传输速率比主信道要低得多,其他跟主信道相同,通常较少使用第11页/共66页RS-232C的引脚(1)TxD:发送数据串行数据的发送端RxD:接收数据串行数据的接收端第12页/共66页RS-232C的引脚(2)RTS:请求发送当数据终端设备准备好送出数据时,就发出

6、有效的RTS信号,用于通知数据通信设备准备接收数据CTS:清除发送(允许发送)当数据通信设备已准备好接收数据终端设备的传送数据时,发出CTS有效信号来响应RTS信号RTS和CTS是数据终端设备与数据通信设备间一对用于数据发送的联络信号第13页/共66页RS-232C的引脚(3)DTR:数据终端准备好通常当数据终端设备一加电,该信号就有效,表明数据终端设备准备就绪DSR:数据装置准备好通常表示数据通信设备(即数据装置)已接通电源连到通信线路上,并处在数据传输方式DTR和DSR也可用做数据终端设备与数据通信设备间的联络信号,例如应答数据接收第14页/共66页RS-232C的引脚(4)GND:信号地

7、为所有的信号提供一个公共的参考电平CD:载波检测(DCD)当本地调制解调器接收到来自对方的载波信号时,该引脚向数据终端设备提供有效信号RI:振铃指示当调制解调器接收到对方的拨号信号期间,该引脚信号作为电话铃响的指示、保持有效第15页/共66页RS-232C的引脚(5)保护地(机壳地)起屏蔽保护作用的接地端,一般应参照设备的使用规定,连接到设备的外壳或大地TxC:发送器时钟控制数据终端发送串行数据的时钟信号RxC:接收器时钟控制数据终端接收串行数据的时钟信号第16页/共66页9.2.2 RS-232C的连接微机利用232C接口连接调制解调器,用于实现通过电话线路的远距离通信微机利用232C接口直

8、接连接进行短距离通信。这种连接不使用调制解调器,所以被称为零调制解调器(Null Modem)连接第17页/共66页连接调制解调器电话线MODEM微机2345678202223456782022MODEM23456782022数据装置准备好DSRDSR数据终端准备好DTRDTR发送数据TxDTxD接收数据RxDRxD请求发送RTSRTS允许发送CTSCTS信号地GNDGND载波检测CDCD振铃指示RIRI微机23456782022第18页/共66页不使用联络信号的3线相连方式微机TxDRxDGND微机为了交换信息,TxD和RxD应当交叉连接程序中不必使RTS和DTR有效也不应检测CTS和DSR

9、是否有效 第19页/共66页“伪”使用联络信号的3线相连方式RTS和CTS各自互接,DTR和DSR各自互接表明请求传送总是允许、数据装置总准备好微机DSRDTRTxDRxDRTSCTSGND微机第20页/共66页使用联络信号的多线相连方式通信比较可靠所用连线较多,不如前者经济微机DSRDTRTxDRxDRTSCTSGND微机第21页/共66页9.2.3 RS-232C的电气特性232C接口采用EIA电平高电平为3V15V低电平为3V15V实际常用12V或15Vn标准TTL电平n高电平:2.4V5Vn低电平:0V0.4V相互转换第22页/共66页9.3 可编程串行异步通信接口芯片8250原理与使

10、用串行传输,需要并行到串行和串行到并行的转换,并按照传输协议发送和接收每个字符(或数据块)这些工作可由软件实现,也可用硬件实现通用异步接收发送器UART是串行异步通信的接口电路芯片IBM PC/XT机的UART芯片是INS 8250后来使用NS16550第23页/共66页9.3.1 8250的内部结构8250实现了起止式串行异步通信协议,支持全双工通信通信字符可选择数据位为58位停止位1、1.5或2位可进行奇偶校验具有奇偶、帧和溢出错误检测电路8250支持的数据传输速率为509600bps第24页/共66页1.串行数据的发送并行数据加入起始位、校验位、停止位串行数据CPU发送保持寄存器发送移位

11、寄存器同步控制8250SOUT0/10/1 0/10/10/10/10/10/1双缓冲寄存器结构保证数据的连续发送第25页/共66页2.起始位的检测起始检测确定已检测到起始位采样数据起 始 位时钟(RCLK)数据线(SIN)T16 T16 T8 T数据接收时钟频率是数据传输频率的16倍正确识别起始位,防止因干扰引起的误识别第26页/共66页3.串行数据的接收并行数据检测接收错误删除起始位、校验位、停止位串行数据CPU接收缓冲寄存器接收移位寄存器同步控制8250SIN0/10/1 0/10/10/10/10/10/1双缓冲寄存器结构保证数据的连续接收第27页/共66页4.接收错误的处理奇偶错误P

12、E(Parity Error)若接收到的字符的“1”的个数不符合奇偶校验要求帧错误FE(Frame Error)若接收到的字符格式不符合规定(如缺少停止位)溢出错误OE(Overrun Error)若接收移位寄存器接收到一个数据,并送至输入缓冲器时,CPU还未取走前一个数据,就会出现数据溢出若接收缓冲器的级数多,则溢出错误的几率就少第28页/共66页9.3.2 8250的引脚分成连接CPU的部分和连接外设的部分注意:8250不是Intel公司的产品,所以该芯片引脚名称与前面学习的8253、8255等Intel产品有所不同,但是引脚功能却是类似的第29页/共66页1.处理器接口引脚(1)数据线D

13、0D7:在CPU与8250之间交换信息地址线A0A2:寻址8250内部寄存器片选线:8250设计了3个片选输入信号CS0、CS1、CS2*和一个片选输出信号CSOUT。3个片选输入都有效时,才选中8250芯片,同时CSOUT输出高电平有效。地址选通信号ADS*:当该信号低有效时,锁存上述地址线和片选线的输入状态,保证读写期间的地址稳定第30页/共66页1.处理器接口引脚(2)读控制线数据输入选通DISTR(高有效)和DISTR*(低有效)有一个信号有效,CPU从8250内部寄存器读出数据相当于I/O读信号写控制线数据输出选通DOSTR(高有效)和DOSTR*(低有效)有一个有效,CPU就将数据

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

15、T*:基准时钟经8250内部波特率发生器分频后产生发送时钟接收时钟引脚RCLK:接收外部提供的接收时钟信号;若采用发送时钟作为接收时钟,则只要将RCLK引脚和BAUDOUT*引脚直接相连第33页/共66页3.串行异步接口引脚8250数据装置准备好DSR*数据终端准备好DTR*发送数据SOUT接收数据SIN请求发送RTS*允许发送CTS*信号地GND载波检测RLSD*振铃指示RI*第34页/共66页4.输出线OUT1*和OUT2*:两个一般用途的输出信号由调制解调器控制寄存器的D2和D3使其输出低电平有效信号复位使其恢复为高第35页/共66页9.3.3 8250的寄存器8250内部有9种可访问的

16、寄存器,除数寄存器是16位的,占用两个连续的8位端口内部寄存器用引脚A0A2来寻址;同时还要利用通信线路控制寄存器的最高位,即除数寄存器访问位DLAB,来区别共用两个端口地址的不同寄存器(表11.3)第36页/共66页1.接收缓冲寄存器RBR存放串行接收后转换成并行的数据CPU接收缓冲寄存器接收移位寄存器同步控制8250SIN第37页/共66页2.发送保持寄存器THR包含将要串行发送的并行数据 CPU发送保持寄存器发送移位寄存器同步控制8250SOUT第38页/共66页3.除数寄存器除数寄存器保存设定的分频系数分频系数基准时钟频率(16比特率)起 始 位时钟(RCLK)数据线(SIN)T16

17、T16 T8 T第39页/共66页4.通信线路控制寄存器LCRDLABD6 D5 D4 D3D2D1 D0寄存器选择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位指定串行异步通信的字符格式第40页/共66页5.通信线路状态寄存器LSR0D6 D5 D4 D3D2D1 D0为1,表示发送移位寄存器空;当数据由发送保持寄存器移入发送移位寄存器时,该位为0提供串行异步通信

18、的当前状态供CPU读取和处理为1,表示发送保持寄存器空,当CPU将字符写入发送保持寄存器后,该位为0为1,表示正在传输中止字符为1,表示出现帧错误为1,表示出现奇偶错为1,表示出现溢出错为1,表示接收数据缓冲器收到一个数据,既接收数据准备好;当CPU读走数据后,该位为0第41页/共66页为1使DTR*引脚为低否则为高 6.调制解调器控制寄存器MCR设置8250与数据通信设备之间联络应答的输出信号0 0 0LOOP OUT2OUT1RTS DTR为1使RTS*引脚为低否则为高 为1使OUT1*引脚为低否则为高 为1使OUT2*引脚为低否则为高 为1使8250为循环工作方式否则为正常工作方式第42

19、页/共66页7.调制解调器状态寄存器MSR反映4个控制输入信号的当前状态及其变化MSR高4位中某位为1,说明相应输入信号当前为低有效,否则为高电平MSR低4位中某位为1,则说明从上次CPU读取该状态字后,相应输入信号已发生改变,从高变低或反之MCR低4位任一位置1,均产生调制解调器状态中断,当CPU读取该寄存器或复位后,低4位被清零第43页/共66页4级中断接收线路状态中断奇偶错、溢出错、帧错和中止字符接收器数据准备好中断发送保持寄存器空中断调制解调器状态中断清除发送状态改变数据终端准备好状态改变振铃接通变成断开接收线路信号检测状态改变优先权高优先权高优先权低第44页/共66页8.中断允许寄存

20、器IER8250设计有2个中断寄存器和4级中断4级中断的优先权,是按照串行通信过程中事件的紧迫程度安排的、是固定不变的用户可利用中断允许或禁止进行控制中断允许寄存器的低4位控制8250这4级中断是否被允许某位为1,则对应的中断被允许否则,被禁止第45页/共66页9.中断识别IIR保存正在请求中断的优先权最高的中断级别编码0 0 0 0 0ID1 ID0IP0 有中断1 无中断ID1ID0优先权优先权中断类型中断类型1 11 00 10 01234 接收线路状态接收线路状态 接收数据准备好接收数据准备好 发送保持寄存器空发送保持寄存器空 调制解调器状态调制解调器状态第46页/共66页9.4 异步

21、通信适配器(补充)IBM PC/XT机的串行异步通信适配器以8250为核心完成发送时的并转串和接收时的串转并以及相应的控制工作配置了TTL电平与EIA电平转换电路等展开异步通信适配器的硬件电路软件编程第47页/共66页RCLKRCLKBAUDOUTBAUDOUTIRQIRQ4 4IRQIRQ3 3RESETRESET+5V+5VA A8 8AENAENA A3 3A A7 7A A9 9IOR IOR IOWIOWA A0 0A A2 2MRMRXTAL1XTAL1OUTOUT1 1OUTOUT2 2INTRPTINTRPTDISTRDISTRDOSTRDOSTRA A0 0A A2 2CS2

22、CS282508250LS245LS245D D0 0D D7 7D D0 0D D7 7J9J9J10J10J11J11J12J12DIRDIR1.8432MHz1.8432MHzCS0CS0CS1CS1ADSADSDISTRDISTRDOSTRDOSTR5V5V9.4.1 异步通信适配器的接口电路注意:J9J11跨接器和OUT2*的作用第48页/共66页9.4.2 异步通信适配器的初始化编程对8250的内部控制寄存器进行编程写入 写入除数寄存器设置传输率 写入通信线路控制寄存器设置字符格式 写入调制解调器控制寄存器设置工作方式 写入中断允许寄存器设置中断允许或屏蔽位第49页/共66页设置传

23、输率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位写入除数寄存器第50页/共66页设置字符格式mov al,00001010bmov dx,3fbh out dx,al;写入通信线路控制寄存器;这段程序同时使DLAB0写入通信线路控制寄存器第51页/共66页设置工作方式n设置查询通信方式mov al,03h;控制OUT2*为高,DTR*和

24、RTS*为低 mov dx,3fchout dx,al;写入调制解调器控制寄存器n设置中断通信方式mov al,0bh;控制为OUT2*低,允许INTRPT产生请求mov dx,3fchout dx,al写入调制解调器控制寄存器第52页/共66页设置中断允许或屏蔽位mov al,0;禁止所有中断 mov dx,3f9hout dx,al;写入中断允许寄存器(此时DLAB0)写入中断允许寄存器第53页/共66页9.4.3 异步通信程序程序循环读取8250的通信状态寄存器数据传输错误就显示一个问号“?”接收到数据就显示出来可以发送数据就从键盘输入发送字符(用户没有输入字符就不发送)如果按下ESC键

25、返回DOS第54页/共66页查询通信线路状态statue:mov dx,2fdh;读通信线路状态寄存器in al,dxtest al,1eh;接收有错误否?jnz error;有错,则转错误处理test al,01h;接收到数据吗?jnz receive;是,转接收处理test al,20h;保持寄存器空吗?jz statue;不能,循环查询异步通信程序第55页/共66页检测键盘输入mov ah,0bh;检测键盘有无输入字符int 21hcmp al,0jz statue;无输入字符,循环等待mov ah,0;有输入字符,读取字符int 16h;采用01号DOS功能调用,则有回显cmp al,

26、1bhjz done;是ESC键,程序返回DOS异步通信程序第56页/共66页发送数据mov dx,2f8h;将字符输出给发送保持寄存器out dx,al;串行发送数据jmp statue;继续查询异步通信程序第57页/共66页接收数据receive:mov dx,2f8h;从输入缓冲寄存器读取字符in al,dxand al,7fh;传送标准ASCII码(7个数据位);所以仅取低7位push ax;保存数据异步通信程序第58页/共66页显示数据mov dl,al;屏幕显示该数据mov ah,2int 21hpop ax;恢复数据cmp al,0dh;数据是回车符吗?jnz statue;不是

27、,则循环mov dl,0ah;是,再进行换行mov ah,2int 21hjmp statue;继续查询异步通信程序第59页/共66页接收错误处理error:mov dx,2f8h;读出接收有误的数据,丢掉in al,dxmov dl,?;显示问号mov ah,2int 21hjmp statue;继续查询异步通信程序第60页/共66页9.5 8251A芯片(讨论)8251A基本功能是什么?与8250有哪些区别?8251A同步字符寄存器作用是什么?外同步与内同步有什么区别?数据传输的波特率与发送时钟频率之间有何关系?(异步、同步)分别举例说明8251A异步、同步工作方式下初始化编程。CPU与8

28、251A之间交换数据有哪两种方式?各用什么信号?第61页/共66页9.4.4 中断通信方式的编程方法n关键解决主程序与中断服务程序的数据传递n注意处理好8250的4级10种中断源n简便方法只允许接收数据准备好中断第62页/共66页中断通信方式的循环队列接收缓冲寄存器中断服务程序主程序读队列送UART(保持寄存器空中断)读UART送队列(接收数据准备好中断)发送处理:向队列输出字符接收处理:从队列输入字符接收队列尾指针头指针头指针尾指针发送队列UART发送保持寄存器第63页/共66页第第9 9章章 总结总结1.掌握起止式通信协议、RS-232C引脚定义和连接2.理解串行数据的发送、起始位检测、数据接受和错误标志3.了解8250的引脚和内部寄存器功能及其在IBM PC系列机上的应用情况4.掌握异步通信适配器的初始化编程和通信程序第64页/共66页感谢您的观看。第66页/共66页

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

当前位置:首页 > 应用文书 > PPT文档

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

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