- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
图9-30 典型的同步通信接口结构 接口中设有发送FIFO和输出移位寄存器,用来把并行数据转化成串行数据发送出去;设有接收移位寄存器和接收FIFO用来将外部输入的串行数据转化成并行数据并进行数据缓冲,以便CPU读取。同步通信采用同步字符同步,即发送时发送器发送数据字符之前先发送同步字符;在另一端,接收器检出同步字符,紧跟着就接收数据;这样,就能达到字符同步。由于同步字符(序列)是在数据块的开始,所以能够在建立字符与字符同步的同时达到块与块的同步。 异步发送或接收往往使用一个缓冲寄存器,而同步接口为缓冲接收到或发送出去的数据,常常使用排列成先进先出(FIFO)的缓冲寄存器队列,数据遵照先进先出的原则自动通过缓冲器队列,这样,CPU仅与发送器的FIFO的输入端寄存器及接收器的FIFO的输出端寄存器有接口。而发送器(或接收器)的移位寄存器的输入端(或输出端)仅与发送器(或接收器)的FIFO的输出端(或输入端)寄存器相连接。每当发送器有一个新的字符要发送出去时,发送器的移位寄存器就从它的FIFO寄存器队列再装入。 由于有了FIFO寄存器队列,发送时CPU一次可以将几个字符预先装入,以降低实现恒定输出字符流对它提出的要求。同样,接收FIFO寄存器队列允许CPU一次读取几个字符,进一步降低了为接收器服务所需的辅助操作。同步接口大多具有控制选择,当FIFO寄存器队列需要CPU读取或写入时,就产生READY指示或发出中断请求,请求CPU服务。 另外,同步接口往往能进行CRC(循环冗余)校验,即在发送部分设有CRC发生器,在接收部分设有CRC校验器,这一点类似于UART中的奇偶校验,不难理解,故为了便于讲清同步接口原理,我们在给出的典型同步接口中没有画出这部分。 目前,广泛使用的同步接口芯片有MC6852,MC6854,Intel8251,Intel8273,Z80SIO等。 使用同步接口进行同步通信目前用的较多的通信规程是HDLC,DDCMP,以前则SDLC,BISYNC用的较多。 习题与思考题 现在我们来回顾一下本节串行接口及应用的主要内容 动画演示 同学们,下次课再见! ——华北电力大学 (五)INS8250的初始化 在使用INS 8250进行串行异步通信之前,应按照通信的要求,初始化上述8250的各内部寄存器,给其设置相应的参数。 首先要设置波特率除数,8250内的波特率发生器将用这个除数值对INS8250的XTALl引脚输入的时钟脉冲分频,产生用来接收和发送数据的时钟脉冲。其实现方法是:先用OUT指令将通信线控制寄存器的最高位DLAB置成1,再用OUT指令将除数值写入除数锁存器中(分高、低字节两次写入)。上述设置完成后, 再将DLAB置成0,以便CPU以后可以将发送数据写入THR,或从RBR中读取数据。 接着设置通信线控制寄存 器,以便确定通信的格式:字符代码的长度、停止位的位数、是否进行奇偶校验以及奇偶校验的类型等。通常情况下,通信线控制寄存器的高3位应设定为0,这样,波特率除数寄存器的值设定好后,CPU就不要再改变它。 其次要设置调制解调器控制寄存器,通常情况下,这个寄存器设定的值为03H,它将使8250输出DTR、CTS调制解调器控制信号。若想对接口诊断测试,可将MCR的LOOP位置1。 再后要设置的寄存器是中断允许寄存器IER,以便确定用四种事件的哪一种来产生中断,若不采用中断,这个寄存器的值应设置成0。 经过了上述的寄存器初始化后,就可以用8250进行异步通信了,发送时用OUT指令将数据写到发送保持寄存器中,接收时则用IN指令将接收缓冲寄存器中的接收数据取走。数据通信过程中,可以用IN指令读取通信线状态寄存器LSR、调制解调器状态寄存器中的状态,以了解通信情况,并采取相应的措施,保证通信正常地进行。 二、INS8250的应用举例 下面,我们通过一个实例,说明如何用8250进行串行异步通信。 在IBM PC/XT及其兼容机中,使用异步通信适配器与外界进行串行异步通信,其采用的物理接口标准是EIA—RS—232C和20mA电流环。 IBM PC/XT的异步通信适配器中采用了INS8250异步通信控制器,由它来完成发送数据时的并一串转换和接收数据时的串一并转换。 (一)INS8250与CPU系统的接口 上图给出了异步通信适配器中INS8250同IBM PC系统总线的接口。 异步通信适配器就是一块串行接口卡,它起着微型计算机与外设串行通信的控制作用。该接口卡与微型计算机的连接是通过IBM PC总线来实现的
原创力文档


文档评论(0)