第7.3节 串行通信接口(SCI)_第1页
第7.3节 串行通信接口(SCI)_第2页
第7.3节 串行通信接口(SCI)_第3页
第7.3节 串行通信接口(SCI)_第4页
第7.3节 串行通信接口(SCI)_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

第7章DSP片上串行通信外设7.3串行通信接口(SCI)7.3串行通信接口(SCI)7.3.1SCI模块概述

串行通信接口(SCI)是一个两线制异步串行接口,即通常所说的UART口。SCI模块支持CPU和其他使用标准不归零码(NRZ)的异步外设之间的数字通信。SCI的接收器和发送器各自具有一个16级深度的FIFO,从而减小了CPU开销,并且它们都有独立的使能位和中断位。两者可以独立地进行半双工通信,或者同时进行全双工通信。SCI模块与CPU的连接如图7-29所示。

SCI模块具有以下特征:两个外部引脚(不用于SCI通信时,可作为通用I/O口):SCITXD:SCI发送-输出引脚;SCIRXD:SCI接收-输入引脚;可编程为多达64K种不同的波特率;可编程的数据字格式;四个错误检测标志:奇偶校验、溢出、帧错误和间断检测;两种多处理器唤醒模式:空闲线和地址位;半双工或者全双工操作;双缓冲接收或发送功能;发送器和接收器操作的完成可以通过中断驱动或者软件查询状态标志来确定;独立的发送器中断使能位和接收器中断使能位(BRKDT除外);不归零码NRZ数据格式;13个位于控制寄存器帧中的SCI控制寄存器,起始地址为7050h,这些寄存器均是8位长,连接到外设帧2;增强功能:自动波特率检测硬件逻辑和16级深度的发送/接收FIFO。7.3串行通信接口(SCI)2.SCI模块结构

在全双工操作中所使用的主要功能单元如图7-30所示。7.3串行通信接口(SCI)7.3串行通信接口(SCI)

全双工操作中所使用的主要功能单元包括:发送器(TX)及其主要寄存器(图7-30的上半部分)。SCITXBUF:发送数据缓冲寄存器,存放等待发送的数据。TXSHF:发送器移位寄存器,从SCITXBUF中载入数据,并将数据逐位移至SCITXD引脚。接收器(RX)及其主要寄存器(图7-30的下半部分)。RXSHF:接收器移位寄存器,将SCIRXD引脚上的数据逐位移入。SCIRXBUF:接收器数据缓冲寄存器。存放数据供CPU读取。来自一个远端处理器的数据,先载入接收器移位寄存器(RXSHF),然后装入接收数据缓冲寄存器(SCIRXBUF)和接收仿真缓冲寄存器(SCIRXEMU)。可编程的波特率发生器。数据存储器映射的控制和状态寄存器。(1)SCI模块信号概述

表7-36所列为SCI模块信号概述7.3串行通信接口(SCI)信号类型信号名称描述外部信号SCIRXDSCI异步串行接收数据端口SCITXDSCI异步串行发送数据端口控制信号BaudclockLSPCLK预分频时钟中断信号TXINT发送中断RXINT接收中断(2)SCI的可编程数据格式SCI支持两种多处理器协议,空闲线多处理器模式和地址位多处理器模式。SCI提供了常用的通用异步接收/发送(UART)通信模式,该通信模式需要两根线与标准的RS-232-C设备进行通信,通信的数据格式为:1个起始位,1~8个数据位、1个可选的奇偶校验位;1或2个停止位,如图7-31所示。接收和发送采用不归零(NRZ)格式时,数据格式包含:1个起始位,1~8位数据位,1个可选的奇偶校验位,1或2个停止位,1个用于区分数据的地址(仅用于地址位模式)的附加位,如图7-31所示。基本单元的数据称作一个字符,其长度为1~8位。带有格式化信息数据的一个字符称作一个帧,如图7-31所示。可以使用SCI通信接口控制寄存器(SCICCR)对数据格式进行配置。7.3串行通信接口(SCI)(3)SCI多处理器通信

多处理器通信格式允许一个处理器在同一串行线路中将数据块有效地传给其它处理器。在一条串行线上每次只有一个处理器发送数据地址字节:休眠位:识别地址字节:两种多处理器模式的接收顺序如下:1)在接收一个地址块时,SCI端口被唤醒并请求中断(SCICTL2寄存器的RX/BKINTENA位必须使能以发送中断请求)。读取包含目的地址的第一帧数据。2)通过中断进入一个软件服务程序,检测即将到来的地址,将接收到的地址字节与存储在内存中的器件地址进行比对。3)如果检测结果表明数据块的地址与该设备CPU地址一致,则CPU清零SLEEP位,并读取数据块的其余部分;如果不是则退出子程序,SLEEP仍然保持置位,并且在下一个数据块开始之前不会产生接收中断。7.3串行通信接口(SCI)

(4)串行通信接口的中断

SCI接收器和发送器可以通过中断控制。SCICTL2寄存器中有一个表示有效中断条件的标志位TXRDY;SCIRXST寄存器包含RXRDY和BRKDT中断标志位,及接收错误中断标志RXERROR(该中断标志是FE、OE和BRKDT的逻辑或)。发送器和接收器有各自的中断使能位,当被禁止时,不会产生中断,但条件标志仍有效,用以反映发送和接收的状态。SCI的发送器和接收器有自己独立的外设中断向量如果RX/BKINTENA位(SCICTL2.1)置位,则发生以下事件之一时将产生接收中断:SCI接收到一个完整的帧并将RXSHF寄存器中的数据传送到SCIRXBUF寄存器中,该操作将RXRDY标志位(SCIRXST.6)置位,并产生一个中断。间断检测条件发生(在一个丢失的停止位之后,SCIRXD引脚为低电平保持10个周期)。该事件会将BRKDT标志位(SCIRXST.5)置位,并启动一个中断。7.3串行通信接口(SCI)

(5)SCI增强功能28x系列DSP中的SCI具有自动波特率检测功能和发送/接收FIFO。1)SCIFIFO简介,下面介绍FIFO的特点:复位。标准SCI模式。FIFO使能。当前工作(active)寄存器。中断。FIFO模式有两个中断:TXINT中断用于发送FIFO,RXTINT中断用于接收FIFO。缓冲器。发送和接收缓冲器具有两个16级深度FIFO。延时发送。FIFO状态位。可编程中断等级。发送和接收FIFO都能向CPU发出中断。7.3串行通信接口(SCI)非FIFO模式和FIFO模式下,SCI中断的操作和配置。

7.3串行通信接口(SCI)图7-32SCIFIFO中断标志和使能逻辑

FIFO选择SCI中断源中断标志中断使能FIFO使能SCIFFENA中断线非FIFO模式接收错误RXERRRXERRINTENA0RXINT接收间断BRKDTRX/BKINTENA0RXINT数据接收RXRDYRX/BKINTENA0RXINT发送器空TXRDYTXINTENA0TXINTFIFO模式接收错误和接收间断RXERRRXERRINTENA1RXINTFIFO接收RXFFILRXFFIENA1RXINT接收FIFO溢出RXFFOVFRXFFIENA1RXINT发送器空TXFFILTXFFIENA1TXINT自动波特率自动波特率检测ABD任意xTXINT非FIFO模式和FIFO模式下,SCI中断的操作和配置。7.3串行通信接口(SCI)

2)SCI自动波特率

SCI模块的增强功能支持硬件上的自动波特率检测逻辑。自动波特率检测的流程如下:①使能自动波特率检测模式:设置CDC位(SCIFFCT.13)为1并通过向ABDCLR位(SCIFFCT.14)写1清除ABD位(SCIFFCT.12)。②初始化波特率寄存器为1或配置波特率小于500kbps。③允许SCI从主机接收字符“A”或“a”。若接收到的第一个字符为“A”或“a”,自动波特率检测硬件将检测输入的波特率并置位ABD位。④自动波特率检测硬件将更新波特率寄存器的值,使之与输入的波特率一致。同时,自动波特率逻辑将向CPU产生中断。⑤在中断服务程序中,通过向ABDCLR位写1清除ABD位,并向CDC位写0以禁止后续的自动波特率锁定。⑥读取接收缓冲寄存器(“A”或“a”),以清空缓冲器及更新缓冲器的状态标志位。当CDC位为1,若ABD位置位,表明自动调整了波特率,将产生SCI发送FIFO中断。在中断服务后,CDC位必须手动清除。7.3串行通信接口(SCI)7.3.2SCI模块寄存器说明

1.SCI通信控制寄存器(SCICCR)2.SCI控制寄存器1(SCICTL1)3.SCI波特率选择寄存器(SCIHBAUD,SCILBAUD)4.SCI控制寄存器2(SCICTL2)5.SCI接收状态寄存器

温馨提示

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

评论

0/150

提交评论