第十章-串行通信接口SCI课件_第1页
第十章-串行通信接口SCI课件_第2页
第十章-串行通信接口SCI课件_第3页
第十章-串行通信接口SCI课件_第4页
第十章-串行通信接口SCI课件_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

第十章串行通信接口SCI

TMS320LF240x内部有一个串行通信(SCI)接口模块,来实现与其它外设之间的串行数据通信。波特率可编程。SCI的发送器与接收器都是双缓冲的。各自有工作使能和中断控制。可工作于全双工模式波特率可编程。10.1串行通信接口的结构10.1.1串行通信接口的物理描述(1)两个I/O引脚:SCIRXD与SCITXD(2)通过对一个16位的波特率选择寄存器编程,可得到65000种的不同速率。第十章串行通信接口SCITMS320LF240x内部1第十章串行通信接口SCI(3)1-8位的可编程数据位。(4)长度为1位或2位的可编程停止位。(5)内部产生的串行时钟。(6)四个错误的检测标志:奇偶性错误、超限错误、帧错误、间断检测(7)两种唤醒多处理器模式:空闲线唤醒、位寻址唤醒(8)半双工或全双工。(9)双缓冲接收和发送功能。(10)发送和接收操作均可通过中断或查询操作进行(11)非归零格式(NRZ)第十章串行通信接口SCI(3)1-8位的可编程数据位。2第十章-串行通信接口SCIppt课件3第十章串行通信接口SCI10.1.2SCI模块的结构模块主要包括以下部件:(1)发送器-TX:SCITXBUF-发送数据缓冲寄存器,存发送数据。

TXSHF

-发送移位寄存器,每次1位送到SCITXD引脚(2)接收器-RX:RXSHF

-接收移位寄存器,每次1位将SCITXD引脚上的数据移入。

SCIRXBUF-接收数据缓冲寄存器,存RXSHF接收到数据(3)一个可编程的波特率发生器。(4)控制和状态寄存器(映射在数据存储器区)第十章串行通信接口SCI10.1.2SCI模块的结构4第十章串行通信接口SCI10.1.3SCI模块的寄存器地址

7050hSCICCRSCI控制寄存器7051hSCICTRL1SCI控制寄存器17052hSCIBAUD波特率选择寄存器高8位7053hSCIBAUD波特率选择寄存器低8位7054hSCICTRL2SCI控制寄存器27055hSCIRXSTSCI接收器状态寄存器7056hSCIRXEMUSCI仿真数据缓冲寄存器7057hSCIRXBUFSCI接收器数据缓冲寄存器7059hSCITXBUFSCI发送数据缓冲寄存器第十章串行通信接口SCI10.1.3SCI模块的寄存器地5第十章串行通信接口SCI10.1.4多机异步通信模式

SCI有两种多处理器协议,即空闲线路多处理器模式和地址位多处理器模式,这些协议允许在多个处理器之间进行有效的数据传输。

SCI提供了与许多流行的外围设备接口的通用异步接收器发送器(UART)通信模式。异步模式需要两条钱与标准设备接口,如使用RS-232C格式的终端和打印机等。

数据发送的字符包括:

•一个起始位•1-8个数据位•一个奇偶校验位或无奇偶校验位•1-2个数据位第十章串行通信接口SCI10.1.4多机异步通信模式610.2可编程的数据格式

串行通信接口可的数据无论是接收还是发送都采用NRZ(非归零)格式,

NRZ包括以下组成部分:

•一个起始位•1-8个数据位.•一个奇偶校验位或无奇偶校验位•1-2个停止位

•一个从数据中识别地址的附加位(仅用于地址模式)。第十章串行通信接口SCI10.2可编程的数据格式第十章串行通信接口SCI7第十章串行通信接口SCI

数据的基本单位被称作一个字符,为1-8位的字长。数据的每个字符格式化为1个起始位,1-2个停止位和可选的奇偶校验位和地址位,如图8-2所示。

注意:带有格式化信息数据的一个字符称为一个帧。第十章串行通信接口SCI数据的基本单位被称作一个字8第十章串行通信接口SCI第十章串行通信接口SCI9第十章串行通信接口SCI8.3SCI多处理器通信

多处理器通信即一条串行线上只能有一个信息源。地址字节:

信息源发送的数据块的第一个字节包括一个地址字节,它被所有的接收器读取,但只有地址正确的接收器才能被紧随地址字节后面的数据字节中断,地址不正确的接收器不被中断,直到下一个地址字节。SLEEP位:

串行线路上的所有处理器将它们的串行通信接口的SLEEP位(SClCTL1.2)设置为1,这样当仅在检测到地址字节时才被中断。第十章串行通信接口SCI8.3SCI多处理器通信10第十章串行通信接口SCI当一个处理器读取到的一个数据块地址与软件设置的CPU器件地址相一致时,用户程序必须清除SLEEP位来确保串行通信接口在收到每个数据字节时产生一个中断。尽管当SLEEP位为1时,接收器仍能工作,但它不会使RXRDY、RXINT或任何接收错误状态位设置为1,除非检测到地址字节,且接收到的帧的地址位是1。SCI不会改变SLEEP位,必须由用户软件改变。第十章串行通信接口SCI当一个处理器读取到的一个数据11识别地址字节处理器根据多处理器的模式来识别一个地址字节,例如:

•空闲线模式在地址字节前留有一段静空间。该模式没有一个附加的地址/数据位,在处理包含多于10个字节的数据块的情况下,其效率比地址位模式更高。

空闲线模式应用于典型的非多处理器的SCI通信。

第十章串行通信接口SCI识别地址字节第十章串行通信接口SCI12第十章串行通信接口SCI•地址位模式为每个字节增加一个附加位(地址位)来从数据中识别地址。该模式在处理多个小数据块时更有效。

与空闲线模式不一样,因为它在数据块之间不需要等待。当处于高速传送时,空闲模式的程序速率不足以避免传送中的一个10位空闲位。第十章串行通信接口SCI•地址位模式为每个字节增加一个附13第十章串行通信接口SCI控制SCITx和Rx特性

多处理器的模式可通过ADDR/IDLEMODE位(SCICCR.3)来设置。两种模式都使用TXWAKE(发送唤醒标志)位(SCICTL1.3),RXWAKE(接收唤醒标志)位(SCIRXST.1)和SLEEP标志位(SCICTL1.3)来控制串行通信接口发送器和接收器的工作状态。

接收顺序:在两种多处理器模式中,接收顺序如下:(1)在接收一个地址块时,串行通信接口唤醒并请求一个中断(RX/BKINTENA-SCICTL2.1必须被使能以请求中断)。它读取地址块的第一帧数据,其中包括目的地址.第十章串行通信接口SCI控制SCITx和Rx特性14第十章串行通信接口SCI(2)通过中断和检查程序引入的地址进入一个软件服务程序,并且该地址字节与保存在内存中的器件地址再次进行校对。(3)如果检查表明此块是DSP控制器的地址,则CPU清除SLEEP位并读块的其余部分,如果不是,则退出软件子程序,SLEEP位设置为1,并在下一个块开始之前不接收中断。第十章串行通信接口SCI(2)通过中断和检查程序引入的地15第十章串行通信接口SCI10.3.1空闲线多处理器模式第十章串行通信接口SCI10.3.1空闲线多处理器模式16第十章串行通信接口SCI10.3.2地址位多处理器模式第十章串行通信接口SCI10.3.2地址位多处理器模式17第十章串行通信接口SCI10.3.2地址位多处理器模式第十章串行通信接口SCI10.3.2地址位多处理器模式18第十章串行通信接口SCI10.4SCI通信模式第十章串行通信接口SCI10.4SCI通信模式19第十章串行通信接口SCI10.4.1通信模式中的接收器信号第十章串行通信接口SCI10.4.1通信模式中的接收器信20第十章串行通信接口SCI10.4.2通信模式中的发送器信号第十章串行通信接口SCI10.4.2通信模式中的发送器信21第十章串行通信接口SCI10.5串行通信中断10.6SCI波特率计算10.7SCI模块寄存器

如后图第十章串行通信接口SCI10.5串行通信中断10.7S22第十章-串行通信接口SCIppt课件23第十章串行通信接口SCI10.7.1SCICommunicationControlRegister(SCICCR)Bit7STOPBITS.SCInumberofstopbits.0-Onestopbit1-TwostopbitsBit6PARITY.SCIparityodd/evenselection.0-Oddparity1-EvenparityBit5PARITYENABLE.SCIparityenable.0-Paritydisabled1-Parityisenabled第十章串行通信接口SCI10.7.1SCICommun24第十章串行通信接口SCIBit4LOOPBACKENA.LoopBacktestmodeenable.0-LoopBacktestmodedisabled1-LoopBacktestmodeenabledBit3ADDR/IDLEMODE.SCImultiprocessormodecontrolbit.0-Idle-linemodeprotocolselected1-Address-bitmodeprotocolselectedBits2–0SCICHAR2–0.Character-lengthcontrolbits2–0.第十章串行通信接口SCIBit4LOOPBACKE25第十章串行通信接口SCI第十章串行通信接口SCI2610.7.2SCIControlRegister1(SCICTL1)

SCICTL1controlsthereceiver/transmitterenable,TXWAKEandSLEEPfunctions,andtheSCIsoftwarereset.第十章串行通信接口SCI10.7.2SCIControlRegister2710.7.3Baud-SelectRegisters(SCIHBAUD,SCILBAUD)

ThevaluesinSCIHBAUDandSCILBAUDspecifythebaudratefortheSCI.第十章串行通信接口SCI10.7.3Baud-SelectRegisters(28第十章串行通信接口SCI第十章串行通信接口SCI2910.7.4SCIControlRegister2(SCICTL2)SCICTL2enablesthereceive-ready,break-detect,andtransmit-readyinterruptsaswellastransmitter-readyand-emptyflags.第十章串行通信接口SCIBit7

TXRDY.Transmitterbufferregisterreadyflag.0-SCITXBUFisfull1-SCITXBUFisreadytoreceivethenextcharacter10.7.4SCIControlRegister230第十章串行通信接口SCIBit6TXEMPTY.Transmitteremptyflag.0-Transmitterbufferorshiftregisterorbothareloadedwithdata1-TransmitterbufferandshiftregistersarebothemptyBits5–2Reserved.Bit1RX/BKINTENA.Receiver-buffer/breakinterruptenable.0-DisableRXRDY/BRKDTinterrupt1-EnableRXRDY/BRKDTinterruptBit0TXINTENA.SCITXBUF-registerinterruptenable.0-DisableTXRDYinterrupt1-EnableTXRDYinterrupt第十章串行通信接口SCIBit6TXEMPTY.T3110.7.5ReceiverStatusRegister(SCIRXST)第十章串行通信接口SCIBit7RXERROR.SCIreceiver-errorflag.0-Noerrorflagsset1-Errorflag(s)setBit6RXRDY.SCIreceiver-readyflag.0-NonewcharacterinSCIRXBUF1-CharacterreadytobereadfromSCIRXBUF10.7.5ReceiverStatusRegiste32第十章串行通信接口SCIBit5BRKDT.SCIbreak-detectflag.0-Nobreakcondition1-BreakconditionoccurredBit4FE.SCIframing-errorflag.0-Noframingerrordetected1-FramingerrordetectedBit3OE.SCIoverrun-errorflag.0-Nooverrunerrordetected1-Overrunerrordetected第十章串行通信接口SCIBit5BRKDT.SCI33第十章串行通信接口SCIBit2PE.SCIparity-errorflag.0-Noparityerrororparityis1-ParityerrorisdetectedBit1RXWAKE.Receiverwakeup-detectflag.Bit0Reserved.Readsreturnzero;writeshavenoeffect.第十章串行通信接口SCIBit2PE.SCIpar34第十章串行通信接口SCI10.7.6ReceiverDataBufferRegisters(SCIRXEMU,SCIRXBUF)10.7.6.1EmulationDataBufferThisistheregisterwhichshouldbeusedinanemulatorwatchwindowtoviewthecontentsofSCIRXBUFregister.

SCIRXEMUisnotphysicallyimplemented,itisjustadifferentaddresslocationtoaccesstheSCIRXBUFregisterwithoutclearingtheRXRDYflag.第十章串行通信接口SCI10.7.6ReceiverD35第十章串行通信接口SCI10.7.6.2ReceiverDataBuffer(SCIRXBUF)10.7.7TransmitDataBufferRegister(SCITXBUF)第十章串行通信接口SCI10.7.6.2Receiver3610.7.8PriorityControlRegi

温馨提示

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

评论

0/150

提交评论