




已阅读5页,还剩53页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第10章串行通信,10.1基本概念10.2可编程串行通信接口芯片NS825010.3可编程串行通信接口芯片8251A,1,10.1基本概念,10.1.1串行通信与并行通信,并行通信是指利用多根传输线将多位数据同时进行传送。1字节的数据通过8条传输线同时发送。由于并行通信方式使用的线路多,一般用在如计算机与打印机等距离短、数据量大的场合。串行通信是指利用一条传输线将数据一位一位地按顺序分时传输。当传送一字节的数据时,8位数据通过一条线分8个时间段发出,发出顺序一般是由低位到高位。,2,1.数据帧格式,10.1.2异步串行通信,异步传送是计算机通信中常用的串行通信方式。异步是指发送端和接收端不使用共同的时钟,也不在数据中传送同步信号。在这种方式下,收方与发方之间必须约定数据帧格式和波特率。,3,2、波特率(BaudRate)波特率是衡量串行数据传送速度的参数,是指单位时间内传送二进制数据的位数,以位/秒为单位(或bps,bit/s),也称为波特。【例题10.1】设数据帧为1位起始位、1位终止位、7位数据位、1位奇偶校验位,传送的波特率为1200(波特)。用7位数据位代表一个字符,求最高字符传送速度。解:1200(位/秒)/10(位)120(字符)【例题10.2】设数据帧为1位起始位、2位终止位、8位数据位、1位奇偶校验位,要求每秒传送字符数大于1000字节,则波特率应大于多少波特?解:12(位/秒)100012000(字符),波特率应大于12000位/秒。,4,同步传送时,无需起始位、停止位。每一帧包含较多的数据,在每一帧开始处使用1-2个同步字符以表示一帧的开始。,10.1.3同步串行通信,5,1、单工2、半双工3、全双工,10.1.4串行通信中的数据传送模式,6,10.1.5信号的调制和解调,7,最初RS-232C串行接口的设计目的是用于连接调制解调器。目前,RS-232C已成为数据终端设备DTE(例如计算机)与数据通信设备DCE(例如调制解调器)的标淮接口。利用RS-233C接口不仅可以实现远距离通信,也可以近距离连接两台微机或电子设备。,10.1.6串行接口标准RS-232C,8,1RS-232C的引脚定义,RS-232C接口标准使用标准的25针D型连接器即DB-25。PC机已使用9针连接器取代25针连接器。,9,10,TxD发送数据串行数据的发送端。RxD接收数据串行数据的接收端。GND信号地为所有的信号提供一个公共的参考电平RTS请求发送当数据终端设备准备好送出数据时,就发出有效的RTS信号,用于通知数据通信设备准备接收数据。CTS清除发送当数据通信设备已准备好接收数据终端设备的传送数据时,发出CTS有效信号来响应RTS信号。DTR数据终端准备好通常当数据终端设备一加电,该信号就有效,表明数据终端设备准备就绪。DSR数据装置准备好通常表示数据通信设备(即数据装置)已接通电源连到通信线路上,并处于数据传输方式,而不是处于测试方式或断开状态。CD载波检测当本地调制解调器接收到来自对方的载波信号时,就从该引脚向数据终端设备提供有效信号。该引脚缩写为DCD。RI振铃指示当调制解调器接收到对方的拨号信号期间,该引脚信号作为电话铃响的指示,保持有效。,11,2RS-232C的连接,计算机由RS-232C接口连接调制解调器,12,两台微机直接利用RS-232C接口进行短距离通信,13,3RS-232C的电气特征,高电平为+3V+15V,低电平为-3V-15V。实际应用中常采用12v或15v。高电平表示逻辑0,用符号SPACE(空号)表示;低电平表示逻辑1,用符号MARK(传号)表示。由于RS-232C的EIA电平与微机的逻辑电平(TTL电平或CMOS电平)不兼容所以两者间需要进行电平转换。MCl488(完成TTL电平到EIA电平的转换)和MCl489(完成EIA电平到TTL电平的转换)等芯片。,14,MAX232电平转换电路如图所示,能实现两路TTL电平到EIA电平、两路EIA电平到TTL电平的转换。,15,10.2通用可编程串行通信接口芯片NS8250,10.2.1NS8250概述1基本功能支持串行异步通信协议支持全双工通信数据位可选58位,停止位可选1、15或2位,可奇偶校验,具有奇偶、帧和溢出错误的检测。具有带优先级排序的中断系统,有多种中断源发送和接收均采用双缓冲器结构。使用单一的5V电源,40脚双列直插型封装。,16,2结构其中寄存器:THR、TSRRBR、RSRLCRLSRDLHDLLMCRMSRIERIIR,17,(1)串行数据的发送,CPU送来的并行数据存在发送保持寄存器THR中。只要发送移位寄存器TSR中没有正在发送的数据,发送保持寄存器的数据就送入TSR。与此同时,8250按照编程规定的起止式字符格式,加入起始位、奇偶校验位和停止位,从串行数据输出引脚SOUT逐位输出。因为THR、TSR采用双缓冲寄存器结构,所以在TSR进行串行发送的同时,CPU可以向8250提供下一个发送数据到THR,这样可以保证数据的连续发送。,18,(2)起始位的检测,必须确定起始位才能开始接收数据,即实现位同步。数据接收时钟RCLK使用16倍波特率的时钟信号。接收器用RCLK检测到串行数据输入引脚SIN由高电平变低后,连续测试8个RCLK时钟周期,若采样到的都是低电平,则确认为起始位。确认了起始位后每隔16个RCLK时钟周期对SIN输入的数据位进行采样一次,直至规定的数据格式结束。,19,(3)串行数据的接收,接收移位寄存器RSR对SIN引脚输入的串行数据进行移位接收。按规定的字符格式删除起始位、奇偶校验位和停止位,把移位输入的串行数据转换成并行数据。接收完一个字符后,把数据送入接收缓冲寄存器RBR。接收数据的同时,对接收数据的正确性和接收过程进行监视。如发现奇偶校验错、帧错、溢出错或接收到中止符,则在状态寄存器中置相应位,并通过中断控制逻辑请求中断,要求CPU处理。采用RSR、RBR双缓冲结构,所以在CPU未读取RBR中的数据前,8250可以继续串行接收下一个数据。,20,(4)接收错误的处理,奇偶错误PE(ParityError)若接收到的字符的“l”的个数不符合奇偶校验要求,则置这个标志,发出奇偶校验出错信息。帧错误FE(FrameError)若接收到的字符格式不符合规定(如缺少停止位),则置这个标志,发出帧错误信息。溢出错误OE(OverError)若接收移位寄存器接收到一个数据,在把它送至输入缓冲器时,CPU还未取走前一个数据,就会出现数据丢失,这时置溢出错误标志。,21,38250部分引脚说明,时钟信号:时钟信号输入引脚XTALl串行数据输入线SIN对应RxD,用于接收串行数据。串行数据输出线SOUT对应TxD,用于发送串行数据。调制解调器控制线中断请求信号线INTRPT处理器接口引脚:D0D7、读、写、片选、地址线A0A2等,22,8250的寄存器寻址,23,10.2.2寄存器详细说明,1.通信线路控制寄存器LCR,24,2.通信线路状态寄存器LSR,3.调制解调器控制寄存器MCR,25,MCR的D2D3位分别控制和脚的输出,可作为一般的输出信号使用。脚还具有中断控制作用,若脚输出低电平,允许8250的INTRPT发出中断请求信号,否则将屏蔽8250的中断请求信号。因此MCR的D3位可当作为8250的中断允许控制位。MCR的D4位可控制8250处于自测试工作状态。在自测试状态,引脚SOUT变为高,而SIN与系统分离,发送移位寄存器的数据回送到接收移位寄存器;4个控制输入信号(、)和系统分离,并在芯片内部与4个控制输出信号(、)相连。这样,发送的串行数据立即在内部被接收(循环反馈),故可用来检测8250发送和接收功能正确与否,而不必外连线。,26,在自测试状态,有关接收器和发送器的中断仍起作用,调制解调器产生的中断也起作用。但调制解调器产生中断的源不是原来的4个控制输入信号,而变成内部连接的4个控制输出信号,即MCR低4位。中断是否允许,则仍由中断允许寄存器控制,若中断是允许的,则将MCR低4位的某一位置位,产生相应的中断,好像正常工作一样。,4.调制解调器状态寄存器MSR,27,5.中断允许寄存器IER,28,6.中断识别寄存器IIR,29,10.2.3PC机的串行异步通信适配器,1.简介:COMl端口地址为3F8-3FFH,以IRQ4为中断请求线COM2端口地址为2F8-2FFH,以IRQ3为中断请求线基准时钟信号(XTAL):1.8432MHz,30,2异步通信适配器的初始化编程,(1)设置波特率MOVAL,80H;最高位DLAB=1MOVDX,3FBH;COM1的LCR地址为3FBHOUTDX,AL;写入LCR,使DLAB=1MOVAX,96;分频系数:1.8432MHz(120016)=96MOVDX,3F8H;DLL的地址为3F8HOUTDX,AL;写入除数寄存器低8位MOVAL,AHINCDX;DLH的地址为3F9HOUTDX,AL;写入除数寄存器高8位,31,(2)设置通信字格式写入LCR,设数据格式为1个起始位、7个数据位、1个停止位、1个奇校验。程序段如下:MOVAL,00001010B;DLAB=0MOVDX,3FBHOUTDX,AL;写LCR这段程序同时使DLAB=0,以方便后面的初始化程序。,32,(3)设置工作方式写MCR,设置查询通信方式MOVAL,03h;控制为高,和为低MOVDX,3FCHOUTDX,AL;写入调制解调控制寄存器设置中断通信方式MOVAL,0Bh;控制为低,允许INTRPT产生请求MOVDX,3FCHOUTDX,AL;写入调制解调控制寄存器,33,设置查询的循环测试通信方式MOVAL,13H;循环测试位设置为1MOVDX,3FCHOUTDX,AL,(4)设置中断允许/中断屏蔽,如果不采用中断工作方式,应设置中断允许寄存器为0,禁止所有的中断请求。否则,根据需要,允许相应的中断,不使用的中断则仍屏蔽。例如:MOVAL,0;禁止所有中断MOVDX,3F9HOUTDX,AL;写入中断允许寄存器(应保证此时DLAB0),34,【例题1】下面的例子实现两台PC机之间的异步串行通信,从一台PC机键盘输入的字符将在对方PC机屏幕上显示出来。每一PC台机都使用COM2口,使用相同的程序,程序采用查询工作的方式。,10.2.4应用举例,35,初始化编程时,应将03H写入调制解调器控制寄存器MCR,使环路检测位为0。初始化编程后,程序读取8250的LSR,若数据传输出错就显示一个问号“?”;若接收到对方送来的字符就将其显示在屏幕上;若从本机键盘输入字符,就将其发送给对方。如果按下Esc键就返回DOS。本例程序不使用联络控制信号,通信时不关心调制解调器状态寄存器的内容,而只要查询通信线路状态寄存器即可。,36,START:MOVAL,80H;初始化编程MOVDX,2FBH;波特率OUTDX,ALMOVAX,96MOVDX,2F8HOUTDX,ALMOVAL,AHINCDXOUTDX,AL,37,MOVAL,0AH;通信字格式(LCR)MOVDX,2FBHOUTDX,ALMOVAL,03H;设置工作方式(MCR)MOVDX,2FCHOUTDX,ALSTATUS:MOVDX,2FDHINAL,DX;读LSRTESTAL,1EH;接收有错误否?JNZERROR;有错则转错误处理TESTAL,01H;接收到数据吗?,38,JNZRECEIVE;有,则转接收处理TESTAL,20H;THR空(能输出数据)吗?JNZSTATUS;不能,则循环查询LSRMOVAH,0BH;能,检测键盘有无输入字符INT21HCMPAL,0JZSTATUS;无输入字符,则循环查询LSRMOVAH,0;有输入字符,读取字符INT16H,39,CMPAL,1BH;判是否EscJZDONE;是EscMOVDX,2F8H;否则,将字符输出给THROUTDX,ALJMPSTATUS;继续查询RECEIVE:MOVDX,2F8HINAL,DX;从RBR读取字符ANDAL,7FH;ASCII码7个数据位,保留低7位PUSHAX;保存数据MOVDL,AL;在屏幕上显示该字符MOVAH,2INT21HPOPAX;恢复数据,40,CMPAL,0DHJNZSTATUS;不是,则循环MOVDL,0AH;再发0AH到屏幕MOVAH,2INT21HJMPSTATUS;继续查询ERROR:MOVDX,2F8HINAL,DX;读出接收有误的数据,丢掉MOVDL,?;显示问号MOVAH,2INT21HJMPSTATUS;继续查询DONE:;返回DOS,41,【例题2】PC机串行口“自发自收”。例1中的程序稍作修改即可实现该操作。方法是在初始化编程中,向调制解调器控制寄存器MCR写入13H,即环路检测位为1,则8250工作于循环自测试方式。从键盘输入的字符,经8250发送后又由8250自身接收。这时,PC机后面板串行接口上无需连线,就实现了“自发自收“。上述程序可用于8250芯片的自检。,42,10.3通用可编程串行通信接口芯片8251A,10.3.18251A的基本功能能以同步方式或异步方式进行工作,自动完成帧格式。在同步方式中,每个字符可定义为5、6、7或8位,可以选择进行奇校验、偶校验或不校验。内部能自动检测同步字符实现内同步或通过外部电路获得外同步,波特率为064K。在异步方式中,每个字符可定义为5、6、7或8位,用1位作为奇偶校验(可选择)。时钟速率可用软件定义为通信波特率的1、16或64倍。能自动为每个被输出的数据增加1个起始位,并能根据软件编程为每个输出数据增加1个、1.5个或2个停止位。异步方式下,波特率为019.2K。,43,8251A能进行出错检测,具有奇偶、溢出和帧错误等检测电路。具有独立的接收器和发送器,因此,能够以单工、半双工或全双工的方式进行通信。并且提供一些基本控制信号,可以方便地与调制解调器连接。,44,10.3.28251A的结构,1.8251A的内部结构,45,2.8251A的引脚,TxD、RxD、与8280功能相同。,:控制数据信号。用来区分当前读写的是数据还是控制信息或状态信息,一般与地址总线的最低位A0相连。当为高电平时,选中控制端口或状态端口,为低电平时,选中数据端口。,TxRDY:发送器准备好信号,高电平有效。它通知CPU,8251A的发送器已经准备好,可以接收CPU送来的数据,当8251A收到一个数据后,TxRDY信号变为低电平。,46,RxRDY:接收器准备好信号,高电平有效。它表示当前8251A已经从外部设备或调制解调器上接收到一个字符,正等待CPU取走。在中断方式下,该信号可以作为中断请求信号;在查询方式下,该信号可以作为状态信号供CPU查询。当CPU从8251A的数据口读取了一个字符后,RxRDY变为低电平,表示无数据可取;当8251A又收到一个字符后,RxRDY再次变为高电平。,SYNDET/BD:同步和间断检测信号。SYNDET/BD既可以是输入(外同步方式),又可以是输出(内同步方式)。,TxE:发送器空信号,高电平有效。它表示8251A发送器已空,即当一个数据发送完成后TxE变高。当CPU向8251A写入一个字符时,TxE变成低电平。,47,10.3.38251A的编程命令,1.通信方式选择命令字,48,2.工作命令字,49,3.工作状态字,50,10.3.48251A初始化步骤,1.初始化编程步骤,(1)芯片复位后,第一个写入奇地址端口的是方式选择命令字。约定双方的通信方式(同步/异步),数据格式(数据位和停止位长度、校验特征、同步字符特征)及传输速率(波特率系数)等参数。(2)如果方式选择命令字规定了8251A工作在同步方式,那么,必须向奇地址端口写入规定的1个或2个同步字符。(3)只要不是复位命令,不论同步方式还是异步方式,需向奇地址端口写入工作命令字。初始化结束后,CPU就可通过查询8251A的状态字或采用中断方式,进行正常的串行通信发送/接收工作。因为方式字、命令字及同步字均无特征标志位,且都是写入同一个端口,所以在对8251A初始化编程时,必须按一定的顺序,若改变了这种顺序,8251A就不能识别。,51,2.内部复位命令,当8251A通过写入方式选择字,规定了8251A的工作方式后,可以根据对8251A工作状态的不同要求随时向控制端口输出工作命令指令字。若要改变8251A工作方式,应先使8251A芯片复位,内部复位命令字为40H(IR1)。8251A芯片复位后,又可重新向8251A输出方式选择字,以改变8251A的工作方式。,52,3.8251A初始化编程,(1)异步方式下初始化编程要求使8251A工作在异步方式,波特率系数为16,字符长度为8位,偶校验,2个停止位。则方式选择字为:11111110B0FEH。工作状态要求:复位出错标志、使请求发送信号有效、使数据终端准备好信号有效、发送允许TxEN有效、接收允许RxE有效。则工作命令字应为37H。假设8251A的两个端口地址分别为0C0H和0C1H,初始化编程如下:MOVAL,0FEHOUT0C1H,AL;设置方式选择字MOVAL,37HOUT0C1H,AL;设置命令字,53,(2)同步方式下初始化编程要求8251A工作在同步方式,两个同步字符(内同步)、奇校验、每个字符8位,则方式选择字应为1CH。工作状态要求:使出错标志复位,允许发送和接收、使CPU己难备好且请求发送,启动搜索同步字符,则工作命令指令应该是0B7H。又设第一个同步字符为0AAH,第二个同步字符为55H。还使用上例8251A芯片,这样要先用内部复位命令40H
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- xx集团票据管理制度
- 事项办理台帐管理制度
- 乡镇路面养护管理制度
- 基于AI的员工流动预测与优化策略
- xx社区印章管理制度
- vip开发与管理制度
- 伊利集团存货管理制度
- 乡镇工会小屋管理制度
- 企业公务用车管理制度
- 企业经营异常管理制度
- 从塔迪奇案看前南斯拉夫国际刑事法庭建立的合法性问题共3篇
- T梁运输与安装施工安全方案
- 连带责任担保借条(四篇)
- 2020年度全国专业技术人员职称英语等级考试卫生类ABC真题模拟及答案合集
- 数控系统外文翻译外文文献英文文献
- SPIN销售巨人(讲解)
- 2023年计算机图形学试题级考试A卷
- GB/T 42104-2022游乐园安全安全管理体系
- 八年级下册人教版英语单项选择(50题)练习题含答案含答案
- 河北省大众滑雪等级标准(试行)
- 公安派出所日常消防监督检查记录模板
评论
0/150
提交评论