第10章串行通信接口模块(SCI)_第1页
第10章串行通信接口模块(SCI)_第2页
第10章串行通信接口模块(SCI)_第3页
第10章串行通信接口模块(SCI)_第4页
第10章串行通信接口模块(SCI)_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

1、第第1010章章 串行通信接口(串行通信接口(SCI)SCI)SCISCI接口模块接口模块: :实现与其它外设之间的异步串行实现与其它外设之间的异步串行数据通信数据通信。波特率可编程。波特率可编程。SCISCI的发送器与接收器都是双缓冲的。各自有的发送器与接收器都是双缓冲的。各自有工工作使能作使能和和中断控制中断控制。可工作于。可工作于全双工模式全双工模式。10.1 10.1 串行通信接串行通信接口概述口概述内部结构如图所示。内部结构如图所示。(1 1)两个两个I/OI/O引脚引脚:SCIRXDSCIRXD与与SCITXDSCITXD(2 2)一个)一个1616位的位的波特率选择波特率选择寄存

2、器寄存器可编程,可可编程,可得到得到6553665536种种的不同速率的不同速率。帧格式帧格式寄偶校验特性寄偶校验特性WUTSCICTL1.3唤醒方式唤醒方式选择选择TXBUF发送缓冲器发送缓冲器SCITL2.7TXRDYTXRDY位位TXEMPTYSCICTL2.6TXINTENA(SCICTL2.0)移位发送器移位发送器TXENATXENA发送使能发送使能SCICTL1.1SCITXD优先级优先级TXTXRXRX优先级优先级Clock波特率选择波特率选择RXWAKE接收唤醒标志接收唤醒标志SCIRXST.1RXSHF接收移位器接收移位器接收缓冲器接收缓冲器 RXBUFRXENA(接收使能)

3、(接收使能)SCICTL1.0SCIRXST.7.4-2错误标志错误标志奇偶错奇偶错帧出错帧出错超时错超时错接收中断使能接收中断使能RXERRINTENA(SCICTL1.6)SCI RXRDYBRKDT间断检测(没有停止位)间断检测(没有停止位)(RX/BRKDT)INTENASCIRXD(3 3)1-81-8位位的的可编程可编程数据位数据位。(4 4)长度为)长度为1 1位位或或2 2位位的的可编程可编程停止位停止位。(5 5)内部内部产生的产生的串行时钟串行时钟。(6 6)四个四个错误的检测标志错误的检测标志: 奇偶性错误、超限错误、帧错误、间断检测奇偶性错误、超限错误、帧错误、间断检测

4、(7 7)两种两种唤醒唤醒多处理器模式多处理器模式: 空闲线唤醒空闲线唤醒、位寻址唤醒位寻址唤醒(8 8)半双工半双工或或全双工全双工。(9 9)双缓冲双缓冲接收和发送功能。接收和发送功能。(1010)发送和接收操作均可通过)发送和接收操作均可通过中断中断或或查询查询进行。进行。(1111)非归零格式非归零格式(NRZNRZ)。)。10.110.1串行通信接口概述串行通信接口概述模块主要包括以下部件:模块主要包括以下部件:(1 1)发送器)发送器-TX-TX SCITXBUF SCITXBUF- -发送数据缓冲寄存器,存发送数据。发送数据缓冲寄存器,存发送数据。 TXSHFTXSHF发送移位寄

5、存器,每次发送移位寄存器,每次1 1位送到位送到SCITXDSCITXD 引脚。引脚。(2 2)接收器)接收器-RX-RX RXSHF RXSHF接收移位寄存器,每次接收移位寄存器,每次1 1位将位将SCIRXDSCIRXD引引 脚上的数据移入。脚上的数据移入。 SCIRXBUF SCIRXBUF- -接收数据缓冲寄存器,存接收数据缓冲寄存器,存RXSHFRXSHF接收接收 到数据。到数据。(3 3)一个)一个可编程的波特率发生器可编程的波特率发生器。(4 4)控制和状态寄存器)控制和状态寄存器( (映射在数据存储器区)。映射在数据存储器区)。10.10.7 7 SCI SCI模块的寄存器地址

6、模块的寄存器地址 地址地址 寄存器寄存器 名称名称7050h7050h SCICCR SCICCR SCISCI通信控制通信控制寄存器寄存器7051h7051h SCICTRL1 SCICTRL1 SCISCI控制控制寄存器寄存器1 17052h7052h SCIBAUD SCIBAUD 波特率选择波特率选择寄存器高寄存器高8 8位位7053h7053h SCIBAUD SCIBAUD 波特率选择波特率选择寄存器低寄存器低8 8位位 7054h7054h SCICTRL2 SCICTRL2 SCI SCI控制控制寄存器寄存器2 2 7055h7055h SCIRXST SCIRXST SCIS

7、CI接收器状态接收器状态寄存器寄存器7056h7056h SCIRXEMU SCI SCIRXEMU SCI仿真数据仿真数据缓冲寄存器缓冲寄存器7057h7057h SCIRXBUF SCIRXBUF SCI SCI接收器数据缓冲接收器数据缓冲寄存器寄存器 7059h7059h SCITXBUF SCI SCITXBUF SCI发送数据缓冲发送数据缓冲寄存器寄存器705Fh705Fh SCIPRI SCIPRISCISCI优先级控制优先级控制寄存器寄存器10.2 10.2 可编程的数据格式可编程的数据格式串行口的数据无论是收、发都采用串行口的数据无论是收、发都采用NRZ(NRZ(非归零)非归零

8、)格式格式1 1个个起始位起始位1-81-8个个数据位数据位. .1 1个或无个或无奇偶校验位奇偶校验位1-21-2个个停止位停止位1 1个从数据中个从数据中识别地址识别地址的的附加位附加位( (仅用于地址模式仅用于地址模式) )基本单位基本单位为一个字符,其为一个字符,其长度长度为为1-81-8位。位。数据的每个字符格式化为数据的每个字符格式化为1 1个起始位,个起始位,1-21-2个停止位和个停止位和 可选的奇偶校验位和地址位,如图所示。可选的奇偶校验位和地址位,如图所示。注意:注意:带有格式化信息数据的一个字符称为一个带有格式化信息数据的一个字符称为一个字符字符帧帧NRZNRZ(非归零)

9、数据格式:(非归零)数据格式:空闲线模式空闲线模式地址位模式地址位模式 地址地址 校验校验001-81-8校验校验停止停止为了对数据格式化进行编程,要使用为了对数据格式化进行编程,要使用SCISCI通信控制通信控制 寄存器寄存器(SCICCR)(SCICCR)。用于对数据格式进行编程的用于对数据格式进行编程的 位如表所示。位如表所示。 位位 功功 能能 SCICCR.2-0 SCICCR.2-0 选择字符长度(选择字符长度(1-81-8位)位) SCICCR.5 SCICCR.5 是否选择奇偶校验功能是否选择奇偶校验功能 SCICCR.6 SCICCR.6 选择奇偶校验,选择奇偶校验,1-偶,

10、偶,0-奇奇 SCICCR.7SCICCR.7 停止位的个数,停止位的个数,1-1个,个,0- 2个个10.10.3 3 串行接口的多处理器通信串行接口的多处理器通信SCISCI提供了与许多外设的提供了与许多外设的UARTUART通信模式通信模式。异步模式需。异步模式需 要两条线与标准设备接口,如使用要两条线与标准设备接口,如使用RS-232CRS-232C格式的格式的 终端和打印机等。终端和打印机等。SCISCI有有两种多处理器两种多处理器协议协议: : (1) (1)空闲线路空闲线路多处理器模式。多处理器模式。 (2)(2)地址位地址位多处理器模式多处理器模式。协议协议允许在允许在多个处理

11、器之间多个处理器之间进行有效的数据传输。进行有效的数据传输。10.3 10.3 串行接口的多处理器通信串行接口的多处理器通信多多处理器通信处理器通信中一条串行线上中一条串行线上只能有一个信息源只能有一个信息源。地址字节地址字节 发送的数据块的发送的数据块的第一个字节第一个字节为为地址字节地址字节,它被所有,它被所有的接收器读取,但的接收器读取,但只有地址正确只有地址正确的的接收器接收器才能才能被紧被紧随地址字节后面的数据字节中断随地址字节后面的数据字节中断,地址不正确地址不正确的接的接收器不被中断,直到下一个地址字节。收器不被中断,直到下一个地址字节。SLEEPSLEEP位位 串行线路上的所有

12、处理器将它们的串行通信接口串行线路上的所有处理器将它们的串行通信接口 SLEEPSLEEP位位( (SClCTL1.2)SClCTL1.2)设置为设置为1 1,仅在检测到地址字,仅在检测到地址字节时才被中断。节时才被中断。当一个处理器读取到的一个数当一个处理器读取到的一个数据块据块地址与本器件地址相一致时,地址与本器件地址相一致时,用户程序必须清除用户程序必须清除SLEEPSLEEP位来位来确保确保串行通信接口在收到每个数据字节串行通信接口在收到每个数据字节时产生一个中断。时产生一个中断。尽管当尽管当SLEEPSLEEP位为位为1 1时,接收器仍能工作,但它不会使时,接收器仍能工作,但它不会使

13、RXRDYRXRDY、RXINTRXINT或任何接收错误状态位设置为或任何接收错误状态位设置为1 1,除,除非检测到地址字节,且接收到的帧的地址位是非检测到地址字节,且接收到的帧的地址位是1 1。SLEEPSLEEP位位必须必须由用户软件改变由用户软件改变。识别地址字节识别地址字节处理器根据多处理器的模式来识别一个地址字节,例处理器根据多处理器的模式来识别一个地址字节,例如:如: 空闲线模式空闲线模式在地址字节前留有一段在地址字节前留有一段静空间静空间。该模式。该模式没有一个附加的没有一个附加的地址数据位地址数据位,在处理包含,在处理包含多于多于1010个字节个字节的数据块的情况下,其的数据块

14、的情况下,其效率效率比地址位模式更比地址位模式更高。高。 地址位模式地址位模式为每个字节增加一个为每个字节增加一个附加位附加位( (地址位地址位) )来来从数据中识别地址从数据中识别地址。该模式在处理。该模式在处理多个小数据块多个小数据块时时更有效。更有效。与空闲线模式不一样,因为它在数据块之间不需要等与空闲线模式不一样,因为它在数据块之间不需要等待。但待。但在大数据块传输中在大数据块传输中效率效率不如空闲线模式不如空闲线模式。控制控制SCI TxSCI Tx和和RxRx特性特性多处理器的模式可通过多处理器的模式可通过ADDRADDRIDLE MODEIDLE MODE位位(SCICCR.3)

15、(SCICCR.3)来设置。来设置。两种模式都使用两种模式都使用TXWAKETXWAKE位位(SCICTL1.3)SCICTL1.3)、RXWAKERXWAKE位位(SCIRXST.1)(SCIRXST.1)和和SLEEPSLEEP标志位标志位(SCICTL1.3)(SCICTL1.3)来控制串行来控制串行通信接口发送器和接收器的工作状态。通信接口发送器和接收器的工作状态。接收顺序接收顺序:在两种多处理器模式中,接收顺序如下:在两种多处理器模式中,接收顺序如下:(1)(1)在接收一个地址块时,串行通信接口唤醒并请求一在接收一个地址块时,串行通信接口唤醒并请求一个中断个中断( (中断必须被使能中

16、断必须被使能) )。它读取地址块的第一帧。它读取地址块的第一帧数据,其中包括数据,其中包括目的地址目的地址。(2)(2)通过中断和通过中断和查询查询程序引入的地址程序引入的地址进入服务程序进入服务程序,并,并且该地址字节与且该地址字节与保存在内存中的本器件地址保存在内存中的本器件地址再次进再次进行校对。行校对。(3)(3)如果检查表明此块是如果检查表明此块是DSPDSP控制器的地址,则控制器的地址,则CPUCPU清除清除SLEEPSLEEP位并读块的其余部分,如果不是,则退出软件位并读块的其余部分,如果不是,则退出软件子程序,子程序,SLEEPSLEEP位设置为位设置为1 1,直到下一个地址块

17、开始,直到下一个地址块开始才接收中断。才接收中断。10.3.1 10.3.1 空闲线多处理器模式空闲线多处理器模式ADDRADDRIDLE MODEIDLE MODE0 0,数据块被数据块被块间的时间间隔分开块间的时间间隔分开,该时间间隔该时间间隔比块中数据帧之间的时间间隔要长比块中数据帧之间的时间间隔要长。一帧后的空闲时间(十个或更多的高电平位)表明一帧后的空闲时间(十个或更多的高电平位)表明了一个新块的开始,了一个新块的开始,单个位的时间可以由波特率值单个位的时间可以由波特率值算出。算出。 帧的几个块帧的几个块块之间块之间10位或位或更多的空闲周期更多的空闲周期帧的一个块帧的一个块块内帧块

18、内帧块内的第一帧为地址,块内的第一帧为地址,其后面是其后面是10位或更多的空位或更多的空闲周期闲周期少于少于10位位的空闲周期的空闲周期10位或更多的位或更多的空闲周期空闲周期开始开始开始开始开始开始数据数据地址地址最后一个数据最后一个数据数据格式数据格式(引脚(引脚SCIRXD,SCITXD)展开的数据格式展开的数据格式10.3.2 10.3.2 地址位多处理器模式地址位多处理器模式ADDR/IDLE MODEADDR/IDLE MODE位位1 1,每帧中有,每帧中有一附加的地址位一附加的地址位紧跟紧跟在最后一个数据位后。在在最后一个数据位后。在数据块数据块的第一帧中,地址的第一帧中,地址位

19、设为位设为1 1,而在其它所有的帧中置成,而在其它所有的帧中置成0 0。空闲周期的。空闲周期的时间是不相连的。时间是不相连的。 帧的块帧的块无信号的空闲周期无信号的空闲周期一个块一个块块的第一帧为地址块的第一帧为地址(地址位设置为(地址位设置为1)块内的帧块内的帧(地址位设置为(地址位设置为0)下一个块的第一帧下一个块的第一帧为地址(地址位为地址(地址位设置为设置为1)空闲时间无信号空闲时间无信号地址位地址位地址位模式帧实例地址位模式帧实例开始开始奇偶奇偶停止停止数据格式数据格式(引脚(引脚SCIRXD、SCITXD)扩展的数据格式扩展的数据格式10.4 SCI10.4 SCI通信通信格式格式

20、SCISCI异步通信可使用异步通信可使用半双工半双工或或全双工全双工模式通信模式通信。在这种。在这种模式下,模式下,一个帧一个帧包括包括1 1个起始位个起始位、1-81-8个数据位个数据位、1 1个个可选的奇偶校验位可选的奇偶校验位以及以及1-21-2个停止位个停止位。每个数据每个数据占占8 8个个SCICLKSCICLK周期周期。接收器在接收到一个有效的起始位后开始工作。接收器在接收到一个有效的起始位后开始工作。一个一个有效的起始位有效的起始位由由4 4个个连续的内部连续的内部SCICLKSCICLK周期的零位来周期的零位来识别。如果任何一个位都不为识别。如果任何一个位都不为0 0,则处理器

21、重新启动,则处理器重新启动并开始寻找另一个起始位。并开始寻找另一个起始位。多数表多数表决原则决原则下降沿检测下降沿检测每个数据占每个数据占8个个SCICLK周期周期每个数据占每个数据占8个个SCICLK周期周期起始位起始位数据低位数据低位SCICLK(内部内部)SCIRXD对于起始位后的位,处理器通过在其中间进行对于起始位后的位,处理器通过在其中间进行三次采三次采样样来判定其位值。来判定其位值。采样点采样点位于位于第第4 4、5 5、6 6个个SCICLKSCICLK周期周期。如果如果三次采样三次采样有有两次两次为某值,则判定为该值。为某值,则判定为该值。10.5 SCI10.5 SCI中断中

22、断SCISCI的接收器和发送器可以由中断控制,的接收器和发送器可以由中断控制,SCICTL2SCICTL2寄存寄存器器中有一个中有一个标志位标志位(TXRDYTXRDY)表示有效的)表示有效的中断条件中断条件,SCIRXSTSCIRXST寄存器寄存器有有两个两个中断标志位(中断标志位(RXRDYRXRDY和和BRKDTBRKDT)和和接收错误标志位(接收错误标志位(RX ERRORRX ERROR),),其中其中RX ERRORRX ERROR是是FEFE、OEOE和和PEPE条件的逻辑或。条件的逻辑或。发送器发送器和和接收器接收器有各自有各自的中断使能位。的中断使能位。当中断被屏蔽时,不会产

23、生中断,但当中断被屏蔽时,不会产生中断,但条件标志位条件标志位仍有仍有效,效,该位反映了发送和接收的状态,可用于查询方该位反映了发送和接收的状态,可用于查询方式。式。串行通信接口(串行通信接口(SClSCl)的发送器和接收器有自己独立)的发送器和接收器有自己独立的的外设中断向量外设中断向量。外设中断请求可使用外设中断请求可使用高优先级高优先级或或低优先级,低优先级,中断优先中断优先级由级由SCIPRISCIPRI寄存器中相应的位来控制。当接收和发寄存器中相应的位来控制。当接收和发送中断都设置为送中断都设置为相同的优先级时相同的优先级时,接收中断接收中断往往具往往具有有更高的优先级更高的优先级,

24、这样可以减少接收超时错误。,这样可以减少接收超时错误。如果如果RXRXBK INT ENABK INT ENA位(位(SCICTL2.1SCICTL2.1)置)置1 1,则当发生,则当发生以下事件之一就产生一次以下事件之一就产生一次接收中断接收中断:(1 1)SCISCI接收到一个完整的帧接收到一个完整的帧并将并将RXSHFRXSHF寄存器中的内寄存器中的内容传送到容传送到SCIRXBUFSCIRXBUF寄存器,该操作会寄存器,该操作会置位置位RXRDYRXRDY(SCIRXST.6SCIRXST.6),并初始化中断。),并初始化中断。(2 2)间断检测条件发生间断检测条件发生(在一个丢失的停

25、止位之后,(在一个丢失的停止位之后,SCIRXDSCIRXD引脚保持引脚保持1010个周期的低电平)。该操作会设个周期的低电平)。该操作会设置置BRKDTBRKDT标志位,并初始化中断。标志位,并初始化中断。如果如果TX INT ENATX INT ENA位(位(SCICTL2.0SCICTL2.0)置位)置位,当,当SCITXBUFSCITXBUF寄寄存器中的数据传送到存器中的数据传送到TXSHFTXSHF寄存器时,将产生一个寄存器时,将产生一个发发送中断送中断请求,用以表示请求,用以表示CPUCPU可以写数据到可以写数据到SCITXBUFSCITXBUF寄存器中寄存器中,该操作会置位,该操作会置位TXRDYTXRDY标志标志-SCICTL2.7-SCICTL2.7,并,并初始化一个中断。初始化一个中断。 10.6 SCI10.6 SCI波特率计算波特率计算内部产生的串行时钟由系统时钟频率内部产生的串行时钟由系统时钟频率CLKOUTCLKOUT和和两个波两个波特率选择寄存器特率选择寄存

温馨提示

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

评论

0/150

提交评论