多通道缓冲串口_第1页
多通道缓冲串口_第2页
多通道缓冲串口_第3页
多通道缓冲串口_第4页
多通道缓冲串口_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

1、第八章第八章 多通道缓冲串口多通道缓冲串口(McBSP) 第八章第八章 多通道缓冲串口多通道缓冲串口(McBSP)8.1 信号接口信号接口 8.2 控制寄存器控制寄存器8.3 时钟和帧同步信号时钟和帧同步信号 8.4 标准模式传输操作标准模式传输操作 8.7 SPI接口接口 8.1 信号接口信号接口McBSP是是多通道缓冲串口多通道缓冲串口(Multi-channel Buffered Serial Port)RSR-数据接收移位寄存器数据接收移位寄存器RBR-数据接收缓冲寄存器数据接收缓冲寄存器DRR-数据接收寄存器数据接收寄存器DXR-数据发送寄存器数据发送寄存器XSR-数据发送移位寄存器

2、数据发送移位寄存器引脚引脚输入输出状态输入输出状态说明说明CLKRI/O/Z接收时钟接收时钟CLKXI/O/Z发送时钟发送时钟CLKSI外部时钟外部时钟DRI接收串行数据接收串行数据DXO/Z发送串行数据发送串行数据FSRI/O/Z接收帧同步接收帧同步FSXI/O/Z发送帧同步发送帧同步8.1 信号接口信号接口CPU或或EDMA控制器向数据发送寄存器控制器向数据发送寄存器(DXR)写写入待发送的数据,从数据接收寄存器入待发送的数据,从数据接收寄存器(DRR)读取读取接收到的数据。接收到的数据。McBSP的接收操作采取的接收操作采取3级缓存方式,数据到达级缓存方式,数据到达DR管脚后移位进入管脚

3、后移位进入RSR。一旦整个数据单元。一旦整个数据单元(8位、位、12位、位、16位、位、20位、位、24位或位或32位位)接收完毕,接收完毕,若若RBR寄存器为空,则寄存器为空,则RSR将数据复制到将数据复制到RBR中。如果中。如果DRR中旧的数据已经被中旧的数据已经被CPU或或EDMA控控制器读走,则制器读走,则RBR进一步将新的数据复制到进一步将新的数据复制到DRR中。中。发送操作采取发送操作采取2级缓存方式,发送数据首先由级缓存方式,发送数据首先由CPU或或EDMA控制器写入控制器写入DXR。如果。如果XSR寄存器寄存器为空,则为空,则DXR中的值被复制到中的值被复制到XSR准备移位输出

4、;准备移位输出;否则,否则,DXR会等待会等待XSR中旧数据的最后中旧数据的最后1位被移位被移位输出到位输出到DX管脚后,才将数据复制到管脚后,才将数据复制到XSR中。中。这种多级缓冲结构使片内的数据读写和外部的数这种多级缓冲结构使片内的数据读写和外部的数据通信可以同时进行。据通信可以同时进行。EDMA事件的触发,事件的触发,PaRAM的设置的设置McBSP 术语术语 u位位(Bit):位是串行数据流中的最小组成部分。每个位的开始和结束都是用:位是串行数据流中的最小组成部分。每个位的开始和结束都是用一个串行时钟的边沿作为标志。一个串行时钟的边沿作为标志。u字字(Word):字是一组位,它组成了

5、在:字是一组位,它组成了在DSP和外部器件之间传输的数据。和外部器件之间传输的数据。 u单元单元(Slot):一个单元包括组成字的那些位。有时为了将字填充到对于:一个单元包括组成字的那些位。有时为了将字填充到对于DSP和外部器件接口来说合适的位数,单元也包括那些用来填充字的附加位。和外部器件接口来说合适的位数,单元也包括那些用来填充字的附加位。u帧帧(Frame):一帧可以包括一个或多个单元,这由具体协议确定:一帧可以包括一个或多个单元,这由具体协议确定8.2 控制寄存器控制寄存器缩缩 写写McBSP寄存器名寄存器名RSR接收移位寄存器接收移位寄存器RBR接收缓冲寄存器接收缓冲寄存器DRR数据

6、接收寄存器数据接收寄存器XSR发送移位寄存器发送移位寄存器DXR数据发送寄存器数据发送寄存器SPCR串口控制寄存器串口控制寄存器RCR接收控制寄存器接收控制寄存器XCR发送控制寄存器发送控制寄存器SRGR采样率发生器寄存器采样率发生器寄存器PCR管脚控制寄存器管脚控制寄存器MCR多通道控制寄存器多通道控制寄存器RCER接收通道使能寄存器接收通道使能寄存器XCER发送通道使能寄存器发送通道使能寄存器串口控制寄存器串口控制寄存器(SPCR)8.2 控制寄存器控制寄存器8.2 控制寄存器控制寄存器接收控制寄存器接收控制寄存器(RCR)发送控制寄存器发送控制寄存器(XCR)8.2 控制寄存器控制寄存器

7、采样率发生器寄存器采样率发生器寄存器(SRGR)管脚控制寄存器管脚控制寄存器(PCR)8.3 时钟和帧同步信号时钟和帧同步信号时钟时钟CLKR/CLKX是接收发送串行数据流的同步时钟,帧同步信号是接收发送串行数据流的同步时钟,帧同步信号FSR和和FSX则定义了一则定义了一批数据传输的开始。批数据传输的开始。McBSP的数据时钟以及帧同步信号可以设置的参数包括:的数据时钟以及帧同步信号可以设置的参数包括:uFSR、FSX、CLKX和和CLKR的极性的极性u选择单相帧或二相帧选择单相帧或二相帧u定义每相中数据单元的个数定义每相中数据单元的个数u定义每相中个数据单元的位数定义每相中个数据单元的位数u

8、帧同步信号是否触发开始新的串行数据流帧同步信号是否触发开始新的串行数据流u帧同步信号与第个数据位之间的延迟,可以是帧同步信号与第个数据位之间的延迟,可以是0位、位、1位或位或2位延迟位延迟u接收数据的左右调整,进行符号扩展或是填充接收数据的左右调整,进行符号扩展或是填充01. 采样率发生器采样率发生器uCLKG频率频率 = 输入时钟的频率输入时钟的频率(CLKGDV+1)uFPER和和FWID位分别控制帧脉冲的周期和脉冲宽度位分别控制帧脉冲的周期和脉冲宽度 2. 帧同步和时钟信号的有效逻辑帧同步和时钟信号的有效逻辑/边沿边沿u可以通过可以通过PCR寄存器的寄存器的FS(R/X)M位设置帧同步脉

9、位设置帧同步脉冲由内部采样率发生器输出或是由外部输入;冲由内部采样率发生器输出或是由外部输入;u通过通过PCR中的中的CLK(R/X)M位选择收发时钟信号是位选择收发时钟信号是外部输入还是输出。外部输入还是输出。3. 帧同步信号帧同步信号u帧同步有效表示帧同步有效表示1帧串行数据传输的开始帧串行数据传输的开始 u帧可以包括帧可以包括2个相位个相位 u相位中的数据单元个数定义为相位中的数据单元个数定义为 (R/X)FRLEN(1/2)+1 u数据单元的位数如表所示数据单元的位数如表所示 例子中参数设置为例子中参数设置为(R/X)FRLEN1=0000001b,(R/X)FRLEN2=000001

10、0b,(R/X)WDLEN1=001b,(R/X)WDLEN2=000b 双相帧双相帧(Dual-Phase Frame)的例子的例子(R/X)WDLEN(1/2)数据单元的字长数据单元的字长(位位)00080011201016011201002410132其他其他保留保留3. 帧同步信号帧同步信号4个个8位数据单元的单相帧传输例子:位数据单元的单相帧传输例子:u(R/X)PHASE=0,表示单相帧,表示单相帧u(R/X)FRLEN1=0000011b,表示每帧,表示每帧4个个数据单元数据单元u(R/X)WDLEN1=000b,表示数据字长,表示数据字长8位位1个个32位数据单元的单相帧传输例

11、子:位数据单元的单相帧传输例子:u(R/X)PHASE0,表示单相帧,表示单相帧u(R/X)FRLEN10b,表示每帧中含,表示每帧中含1个数个数据单元据单元u(R/X)WDLEN1=101b,表示数据单元字,表示数据单元字长长32 位位4. 数据延迟数据延迟收收/发控制寄存器中的发控制寄存器中的RDATDLY位和位和XDATDLY位可分别设置位可分别设置接收和发送的数据延迟,延迟范围可以是接收和发送的数据延迟,延迟范围可以是02个传输时钟周个传输时钟周期,一般是在其后的第期,一般是在其后的第1个时钟周期启动该帧的数据传输个时钟周期启动该帧的数据传输 8.4 标准模式传输操作标准模式传输操作下

12、面的讨论中,假设串口的设置为:下面的讨论中,假设串口的设置为:u(R/X) PHASE0,单相帧,单相帧u(R/X) FRLEN10b,每帧一个数据单元,每帧一个数据单元u(R/X) WDLEN1=000b,数据单元字长,数据单元字长8位位u(R/X) FRLEN2和和(R/X) WDLEN2字段无效,可以设为任意值字段无效,可以设为任意值uCLK(R/X)P=0,时钟下降沿处接收数据,上升沿处发送数,时钟下降沿处接收数据,上升沿处发送数uFS(R/X)P=0,帧同步信号高有效,帧同步信号高有效u(R/X)DATDLY=01b,1位数据延迟位数据延迟数据的接收数据的接收(FSR)有效后,有效后

13、,DR管脚上的数据在经过一定的数据延迟后依次移管脚上的数据在经过一定的数据延迟后依次移位进入位进入(RSR)。若。若RBR为空,则在每个数据单元接收的末尾,为空,则在每个数据单元接收的末尾,CLRK时钟上升沿处,时钟上升沿处,RSR中的内容会被复制到中的内容会被复制到RBR中。这一个中。这一个复制操作会在下一个时钟下降沿处触发状态位复制操作会在下一个时钟下降沿处触发状态位RRDY置置1,标志,标志接收数据寄存器接收数据寄存器(DRR)已准备好,已准备好,CPU或或DMA控制器可以读取控制器可以读取数据。当数据被读走后,数据。当数据被读走后,RRDY自动变无效。自动变无效。 数据的发送数据的发送

14、(FSX)有效后,有效后,(XSR)中的数据经过一定的数据延迟,开始依次中的数据经过一定的数据延迟,开始依次移位输出到移位输出到DX管脚上。在每个数据单元发送的末尾,管脚上。在每个数据单元发送的末尾,CLRK时时钟上升沿处,如果钟上升沿处,如果DXR中已经准备好新的数据,中已经准备好新的数据,DXR中的新数中的新数据会自动复制到据会自动复制到XSR中。中。DXR-XSR复制操作会在下一个复制操作会在下一个CLKX下降沿处激活下降沿处激活XRDY位,表示可以向发送数据寄存器位,表示可以向发送数据寄存器(DXR)写入写入新的数据。新的数据。CPU或或DMA控制器写入数据后,控制器写入数据后,XRD

15、Y变为无效。变为无效。 帧信号的最高频率帧信号的最高频率u帧频率帧频率=传输时钟频率帧同步信号之间的传输时钟周期数传输时钟频率帧同步信号之间的传输时钟周期数u最大帧频率最大帧频率=传输时钟频率每帧数据的位数传输时钟频率每帧数据的位数忽略帧同步的传输忽略帧同步的传输u(R/X) FIG=0时数时数据单元据单元B被多余的帧被多余的帧同步信号中断的例子同步信号中断的例子 u(R/X) FIG=1时时McSBP忽略多余的忽略多余的帧同步信号的操作帧同步信号的操作 忽略帧同步的传输忽略帧同步的传输利用利用(R/X) FIG位设置,进行数据打包位设置,进行数据打包(Data Packing)多通道传输接口

16、多通道传输接口1帧串行数据流也可看成是帧串行数据流也可看成是1组时分复用的数据传输通道,组时分复用的数据传输通道,“数数据单元据单元”就等同于就等同于“数据通道数据通道” (a) XMCM=00b,多通道操作被禁止。发送的,多通道操作被禁止。发送的4个数据单元都经个数据单元都经过了过了“写入写入DXR”,和,和“DXR-XSR拷贝拷贝”阶段,最后出现在阶段,最后出现在DX管脚上管脚上 多通道传输接口多通道传输接口(b) XMCM=01b,使能多通道工作模式。首先禁止并屏蔽所,使能多通道工作模式。首先禁止并屏蔽所有数据单元的发送输出。有数据单元的发送输出。XPABLK选择选择A组子帧中的组子帧中

17、的0号子帧,号子帧,然后由然后由XCER使能该子帧中的第使能该子帧中的第1、3号数据通道进行发送。只号数据通道进行发送。只有被选择并使能的通道,其对应数据有被选择并使能的通道,其对应数据(E1,E3)才会进行才会进行DXR-XSR拷贝,并出现在拷贝,并出现在DX管脚上管脚上 多通道传输接口多通道传输接口(c) XMCM=10b,使能多通道工作模式。所有的通道都被使能,使能多通道工作模式。所有的通道都被使能发送数据,因此可以看到发送数据,因此可以看到E0E3都完成了都完成了“写入写入DXR”“DXR-XSR拷贝拷贝”操作,但是只有操作,但是只有XPABLK和和XCER位选择的通道的位选择的通道的

18、数据数据(E1和和E3)才会真正出现在才会真正出现在DX管脚上,其余通道数据的输管脚上,其余通道数据的输出均被屏蔽出均被屏蔽 多通道传输接口多通道传输接口(d) XMCM=11b,使能多通道工作模式。首先禁止并屏蔽所有,使能多通道工作模式。首先禁止并屏蔽所有数据单元的发送输出,进入对称收发模式。对称收发模式是指数据单元的发送输出,进入对称收发模式。对称收发模式是指设备的收发操作在同一个子帧位置执行。此时由设备的收发操作在同一个子帧位置执行。此时由RPABLK统一统一选择发送和接收需要的子帧,选择发送和接收需要的子帧,XPABLK字段的设置值不再有效字段的设置值不再有效 8.7 SPI 接口接口

19、串行协议接口串行协议接口(Series Protocol Interface)定义了主定义了主/从两种模从两种模式,包括式,包括4根信号线根信号线u串行数据输入串行数据输入(MISO,主设备输入或从设备输出,主设备输入或从设备输出)u串行数据输出串行数据输出(MOSI,主设备输出或从设备输入,主设备输出或从设备输入)u移位时钟移位时钟(SCK)u从设备使能从设备使能(SS) SPI接口的最大特点是由主设备时钟信号的出现与否界定主接口的最大特点是由主设备时钟信号的出现与否界定主/从从设备间的通信设备间的通信 McBSP的数据同步时钟具有停止控制选项,因此可以与的数据同步时钟具有停止控制选项,因此

20、可以与SPI协协议兼容议兼容 SPI 接口时钟工作模式接口时钟工作模式 CLKSTP=10b时的时的SPI传输传输 CLKSTP=11b时的时的SPI传输传输 CLKSTP(SPCR)CLKXP(PCR)时钟工作模式时钟工作模式0 xx禁止时钟停止模式,使能为非禁止时钟停止模式,使能为非SPI模式模式100传输无效期间时钟为低,没有延迟。传输无效期间时钟为低,没有延迟。McBSP在在CLKX上升沿发送数据,在上升沿发送数据,在CLKX的的下降沿接收数据下降沿接收数据110传输无效期间时钟为低,有延迟。传输无效期间时钟为低,有延迟。McBSP在在CLKX上升沿前半个周期发送数据,在上升沿前半个周

21、期发送数据,在CLKX的上升沿接收数据的上升沿接收数据101传输无效期间时钟为高,没有延迟。传输无效期间时钟为高,没有延迟。McBSP在在CLKX下降沿发送数据,在下降沿发送数据,在CLKX的的上升沿接收数据上升沿接收数据111传输无效期间时钟为高,有延迟。传输无效期间时钟为高,有延迟。McBSP在在CLKX下降沿前半个周期发送数据,在下降沿前半个周期发送数据,在CLKX的下降沿接收数据的下降沿接收数据CLKSTP=10,CLKXP=0CLKSTP=10,CLKXP=1CLKSTP=11,CLKXP=0CLKSTP=11,CLKXP=1CLKGDV=250,时钟周期,时钟周期=40ns*250=10us,(CPU/2)=25MHzMcBSP作为作为SPI主控端主控端(Master)由于由于McBSP产生产生CLKX和和FSX信号输出,因此需设置信号输出,因此需设置CLKXM= FSXM = 1。此外,还需要设置。此外,还需要设置SRGR寄存器中的寄存器中的FSMG=0,即每次进行,即每次进行DXR到到XSR的拷贝操作时要产生的拷贝操作时要产生FSX信号信号 McBSP作为作为SPI从属端从属端(Slave) 当当McBSP作为作为SPI从设备时,由外部主设备产生接口时钟和从设备时,由外部主设备产生接口时钟和从设备使能信号。

温馨提示

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

评论

0/150

提交评论