《串行通信接口》ppt课件2

《串行通信接口》ppt课件2

ID:26905798

大小:960.01 KB

页数:32页

时间:2018-11-29

《串行通信接口》ppt课件2_第1页
《串行通信接口》ppt课件2_第2页
《串行通信接口》ppt课件2_第3页
《串行通信接口》ppt课件2_第4页
《串行通信接口》ppt课件2_第5页
资源描述:

《《串行通信接口》ppt课件2》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第6章TMS320F2812串行通信接口(SCI)学习重点F2812串口通信SCI特点及结构。SCI模块寄存器各位的含义及配置。基于C语言的SCI程序设计实例。学习内容SCI概述SCI模块发送和接收数据的工作原理SCI数据格式SCI通信波特率SCI发送和接收数据的机制多处理器通信SCI的例程1、SCI概述SCI(SerialCommunicationInterface),即串行通信接口,是一个双线的异步串口,即具有接收和发送两根信号线的异步串口,一般可以看作是UART(通用异步接收/发送装置)。F2812的SCI模块支持DSP与采用NRZ(non-return-to-zero不归零

2、)标准格式的异步外围设备之间进行数字通信。2812内部具有两个相同的SCI模块,SCIA和SCIB,每一个SCI模块都各有一个接收器和发送器。SCI的接收器和发送器各具有一个16级深度的FIFO(Firstinfistout先入先出)队列,它们还都有自己独立的使能位和中断位,可以在半双工通信中进行独立的操作,或者在全双工通信中同时进行操作。串行通信的三种方式根据信息的传送方向,串行通信可以分为单工、半双工和全双工三种,其各自的定义如下图所示。SCI的CPU接口SCI模块具有两个引脚,SCITXDA和SCIRXDA,分别实现发送数据和接收数据的功能,分别对应于GPIOF模块的第4和第

3、5位,在编程初始化的时候,需要将GPIOFMUX寄存器的第4和第5位置为1,才能使得这两个引脚具有发送和接收的功能,否则就是普通的I/O引脚。CPU的系统时钟SYSCLKOUT经过低速预定标器之后输出低速时钟LSPCLK供给SCI。要保证SCI的正常运行,系统控制模块下必须使能SCI的时钟,也就是在系统初始化函数中需要将外设时钟控制寄存器PCLKCR的SCIAENCLK位置1。SCI可以产生两个中断,SCIRXINTA和SCITXINTA,即发送中断和接收中断。SCI模块的其他特点2、SCI模块发送和接收数据的工作原理SCI发送数据的过程:在FIFO功能使能的情况下,首先发送数据缓

4、冲寄存器SCITXBUF从TXFIFO中获取由CPU加载的需要发送的数据,然后SCITXBUF将数据传输给发送移位寄存器TXSHF,如果SCI的发送功能使能,TXSHF则将接收到的数据逐位的移到SCITXD引脚上。SCI接收数据的过程:首先接收移位寄存器RXSHF逐位接收来自SCIRXD引脚的数据,如果SCI的接收功能使能,RXSHF将这些数据传输给接收缓冲寄存器SCIRXBUF,CPU就能从SCIRXBUF读取外部发送来的数据。如果FIFO功能使能的话,SCIRXBUF会将数据加载到RXFIFO的队列中,CPU再从FIFO的队列读取数据。3、SCI数据格式在SCI中传输的数据格式

5、可以通过SCI的通信控制寄存器SCICCR来进行设置,规定通信过程中所使用的数据格式。SCI使用的是NRZ的数据格式,如下表所示:数据是1—8位,1个字符的长度。将带有格式信息的每一个数据字符叫做一帧。SCI有空闲线模式和地址位模式,若是在两个处理器之间的通信,例如2812和PC机或者2812和2812之间通信,更适合使用空闲线模式,而地址位模式一般用于多处理器之间的通信。在空闲线模式下,SCI发送或者接收一帧的数据格式如下图4所示,其中LSB是数据的最低位,MSB是数据的最高位。具体的定义上图所示数据格式的寄存器是通信控制寄存器SCICCR,其内容下图所示。使用SCICCR进行数

6、据格式编程如下表所示:使用SCICCR进行数据格式编程SciaRegs.SCICCR.bit.SCICHAR=7;//选择数据长度,为8个数据位SciaRegs.SCICCR.bit.PARITYENA=1;//开启极性功能,值为0的时候取消极性功能SciaRegs.SCICCR.bit.PARITY=0;//在开启极性功能的前提下,该位值为0时选择偶极性,值为1时选择奇极性SciaRegs.SCICCR.bit.STOPBITS=0;//选择停止位,该位为0时有1个停止位,该位为1时有2个停止位。上述这几个语句,我们也可以合并成如下的语句:SciaRegs.SCICCR.all=

7、0x23;4、SCI通信波特率SCI通信波特率就是指每秒所能发送的位数。2812的每个SCI都具有两个8位的波特率寄存器,SCIHBAUD和SCILBAUD,通过编程,可以实现达到64K不同的速率。波特率的计算公式如下所示:其中BRR=波特率选择寄存器中的值,从十进制转换成十六进制后,高8位赋值给SCIHBAUD,低8位赋值给SCILBAUD。注意:式1所示的波特率公式仅适用于1≤BRR≤65535,当BRR=0是,波特率如下:波特率计算方法举例例如外部晶振为30M,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。