多通道缓冲串口
时间:2025-04-04
时间:2025-04-04
DSP 多通道缓冲串口
第八章 多通道缓冲串口(McBSP)
DSP 多通道缓冲串口
第八章 多通道缓冲串口(McBSP)8.1 信号接口 8.2 控制寄存器
8.3 时钟和帧同步信号8.4 标准模式传输操作 8.7 SPI接口
DSP 多通道缓冲串口
8.1 信号接口McBSP是多通道缓冲串口(Multi-channel Buffered Serial Port)引脚CLKR CLKX CLKS DR DX FSR
输入输出状态I/O/Z I/O/Z I I O/Z I/O/Z
说明接收时钟 发送时钟 外部时钟 接收串行数据 发送串行数据 接收帧同步
FSX
I/O/Z
发送帧同步
RSR---数据接收移位寄存器 RBR---数据接收缓冲寄存器 DRR---数据接收寄存器 DXR---数据发送寄存器 XSR---数据发送移位寄存器
DSP 多通道缓冲串口
8.1 信号接口CPU或EDMA控制器向数据发送寄存器(DXR)写 入待发送的数据,从数据接收寄存器(DRR)读取 接收到的数据。 McBSP的接收操作采取3级缓存方式,数据到达 DR管脚后移位进入RSR。一旦整个数据单元(8 位、12位、16位、20位、24位或32位)接收完毕, 若RBR寄存器为空,则RSR将数据复制到RBR 中。如果DRR中旧的数据已经被CPU或EDMA控 制器读走,则RBR进一步将新的数据复制到 DRR中。 发送操作采取2级缓存方式,发送数据首先由 CPU或EDMA控制器写入DXR。如果XSR寄存器 为空,则DXR中的值被复制到XSR准备移位输出; 否则,DXR会等待XSR中旧数据的最后1位被移 位输出到DX管脚后,才将数据复制到XSR中。 这种多级缓冲结构使片内的数据读写和外部的数 据通信可以同时进行。 EDMA事件的触发,PaRAM的设置
DSP 多通道缓冲串口
McBSP 术语 位(Bit):位是串行数据流中的最小组成部分。每个位的开始和结束都是用
一个串行时钟的边沿作为标志。 字(Word):字是一组位,它组成了在DSP和外部器件之间传输的数据。 单元(Slot):一个单元包括组成字的那些位。有时为了将字填充到对于DSP
和外部器件接口来说合适的位数,单元也包括那些用来填充字的附加位。 帧(Frame):一帧可以包括一个或多个单元,这由具体协议确定
DSP 多通道缓冲串口
8.2 控制寄存器缩写 McBSP寄存器名
RSRRBR DRR XSR DXR SPCR RCR XCR
接收移位寄存器接收缓冲寄存器 数据接收寄存器 发送移位寄存器 数据发送寄存器 串口控制寄存器 接收控制寄存器 发送控制寄存器
SRGRPCR MCR RCER XCER
采样率发生器寄存器管脚控制寄存器 多通道控制寄存器 接收通道使能寄存器 发送通道使能寄存器
DSP 多通道缓冲串口
8.2 控制寄存器
串口控制寄存器(SPCR)
DSP 多通道缓冲串口
8.2 控制寄存器
接收控制寄存器(RCR)
发送控制寄存器(XCR)
DSP 多通道缓冲串口
8.2 控制寄存器
采样率发生器寄存器(SRGR)
管脚控制寄存器(PCR)
DSP 多通道缓冲串口
8.3 时钟和帧同步信号时钟CLKR/CLKX是接收/发送串行数据流的同步时钟,帧同步信号FSR和FSX则定义了一 批数据传输的开始。McBSP的数据时钟以及帧同步信号可以设置的参数包括: FSR、FSX、CLKX和CLKR的极性 选择单相帧
或二相帧 定义每相中数据单元的个数 定义每相中1个数据单元的位数 帧同步信号是否触发开始新的串行数据流 帧同步信号与第1个数据位之间的延迟,可以是0位、1位或2位延迟 接收数据的左右调整,进行符号扩展或是填充0
DSP 多通道缓冲串口
1. 采样率发生器
CLKG频率 = 输入时钟的频率/(CLKGDV+1) FPER和FWID位分别控制帧脉冲的周期和脉冲宽度
DSP 多通道缓冲串口
2. 帧同步和时钟信号的有效逻辑/边沿 可以通过PCR寄存器的FS(R/X)M位设置帧同步脉
冲由内部采样率发生器输出或是由外部输入; 通过PCR中的CLK(R/X)M位选择收发时钟信号是
外部输入还是输出。
DSP 多通道缓冲串口
3. 帧同步信号 帧同步有效表示1帧串行数据传输的开始
帧可以包括2个相位 相位中的数据单元个数定义为 (R/X)FRLEN(1/2)+1 数据单元的位数如表所示 例子中参数设置为 (R/X)FRLEN1=0000001b, (R/X)FRLEN2=0000010b, (R/X)WDLEN1=001b,(R/X)WDLEN2=000b
(R/X)WDLEN(1/2) 000 001 010 011
数据单元的字长(位) 8 12 16 20
100101 其他
2432 保留
双相帧(Dual-Phase Frame)的例子
DSP 多通道缓冲串口
3. 帧同步信号4个8位数据单元的单相帧传输例子: (R/X)PHASE=0,表示单相帧 (R/X)FRLEN1=0000011b,表示每帧4个
数据单元 (R/X)WDLEN1=000b,表示数据字长8位
1个32位数据单元的单相帧传输例子: (R/X)PHASE=0,表示单相帧 (R/X)FRLEN1=0b,表示每帧中含1个数
据单元 (R/X)WDLEN1=101b,表示数据单元字
长32 位
DSP 多通道缓冲串口
4. 数据延迟收/发控制寄存器中的RDATDLY位和XDATDLY位可分别设 置接收和发送的数据延迟,延迟范围可以是0~2个传输时钟 周期,一般是在其后的第1个时钟周期启动该帧的数据传输
DSP 多通道缓冲串口
8.4 标准模式传输操作下面的讨论中,假设串口的设置为: (R/X) (R/X) (R/X) (R/X)
PHASE=0,单相帧 FRLEN1=0b,每帧一个数据单元 WDLEN1=000b,数据单元字长8位 FRLEN2和(R/X) WDLEN2字段无效,可以设为任意值
CLK(R/X)P=0,时钟下降沿处接收数据,上升沿处发送数 FS(R/X)P=0,帧同步信号高有效 (R/X)DATDLY=01b,1位数据延迟
DSP 多通道缓冲串口
上一篇:海岸带和海岛资源的可持续利用
下一篇:海报广告创意及构图