多通道缓冲串口课件

上传人:94****0 文档编号:241613445 上传时间:2024-07-09 格式:PPT 页数:35 大小:990.56KB
返回 下载 相关 举报
多通道缓冲串口课件_第1页
第1页 / 共35页
多通道缓冲串口课件_第2页
第2页 / 共35页
多通道缓冲串口课件_第3页
第3页 / 共35页
点击查看更多>>
资源描述
第八章第八章 多通道缓冲串口多通道缓冲串口(McBSP)第八章 多通道缓冲串口(McBSP)第八章第八章 多通道缓冲串口多通道缓冲串口(McBSP)8.1 信号接口信号接口 8.2 控制寄存器控制寄存器8.3 时钟和帧同步信号时钟和帧同步信号 8.4 标准模式传输操作标准模式传输操作 8.7 SPI接口接口 第八章 多通道缓冲串口(McBSP)8.1 信号接口 8.1 信号接口信号接口McBSP是是多通道缓冲串口多通道缓冲串口(Multi-channel Buffered Serial Port)RSR-数据接收移位寄存器数据接收移位寄存器RBR-数据接收缓冲寄存器数据接收缓冲寄存器DRR-数据接收寄存器数据接收寄存器DXR-数据发送寄存器数据发送寄存器XSR-数据发送移位寄存器数据发送移位寄存器8.1 信号接口McBSP是多通道缓冲串口(Multi-ch8.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的设置的设置8.1 信号接口CPU或EDMA控制器向数据发送寄存器(DXMcBSP 术语术语 u位位(Bit):位是串行数据流中的最小组成部分。每个位的开始和结束都是用:位是串行数据流中的最小组成部分。每个位的开始和结束都是用一个串行时钟的边沿作为标志。一个串行时钟的边沿作为标志。u字字(Word):字是一组位,它组成了在:字是一组位,它组成了在DSP和外部器件之间传输的数据。和外部器件之间传输的数据。u单元单元(Slot):一个单元包括组成字的那些位。有时为了将字填充到对于:一个单元包括组成字的那些位。有时为了将字填充到对于DSP和外部器件接口来说合适的位数,单元也包括那些用来填充字的附加位。和外部器件接口来说合适的位数,单元也包括那些用来填充字的附加位。u帧帧(Frame):一帧可以包括一个或多个单元,这由具体协议确定:一帧可以包括一个或多个单元,这由具体协议确定McBSP 术语 位(Bit):位是串行数据流中的最小组成部8.2 控制寄存器控制寄存器8.2 控制寄存器串口控制寄存器串口控制寄存器(SPCR)8.2 控制寄存器控制寄存器串口控制寄存器(SPCR)8.2 控制寄存器8.2 控制寄存器控制寄存器接收控制寄存器接收控制寄存器(RCR)发送控制寄存器送控制寄存器(XCR)8.2 控制寄存器接收控制寄存器(RCR)发送控制寄存器(X8.2 控制寄存器控制寄存器采采样率率发生器寄存器生器寄存器(SRGR)管脚控制寄存器管脚控制寄存器(PCR)8.2 控制寄存器采样率发生器寄存器(SRGR)管脚控制寄存8.3 时钟和帧同步信号时钟和帧同步信号时钟时钟CLKR/CLKX是接收发送串行数据流的同步时钟,帧同步信号是接收发送串行数据流的同步时钟,帧同步信号FSR和和FSX则定义了一则定义了一批数据传输的开始。批数据传输的开始。McBSP的数据时钟以及帧同步信号可以设置的参数包括:的数据时钟以及帧同步信号可以设置的参数包括:uFSR、FSX、CLKX和和CLKR的极性的极性u选择单相帧或二相帧选择单相帧或二相帧u定义每相中数据单元的个数定义每相中数据单元的个数u定义每相中个数据单元的位数定义每相中个数据单元的位数u帧同步信号是否触发开始新的串行数据流帧同步信号是否触发开始新的串行数据流u帧同步信号与第个数据位之间的延迟,可以是帧同步信号与第个数据位之间的延迟,可以是0位、位、1位或位或2位延迟位延迟u接收数据的左右调整,进行符号扩展或是填充接收数据的左右调整,进行符号扩展或是填充08.3 时钟和帧同步信号时钟CLKR/CLKX是接收发送串1.采样率发生器采样率发生器uCLKG频率频率=输入时钟的频率输入时钟的频率(CLKGDV+1)uFPER和和FWID位分别控制帧脉冲的周期和脉冲宽度位分别控制帧脉冲的周期和脉冲宽度 1.采样率发生器CLKG频率=输入时钟的频率(CLK2.帧同步和时钟信号的有效逻辑帧同步和时钟信号的有效逻辑/边沿边沿u可可以以通通过过PCR寄寄存存器器的的FS(R/X)M位位设设置置帧帧同同步步脉脉冲由内部采样率发生器输出或是由外部输入;冲由内部采样率发生器输出或是由外部输入;u通通过过PCR中中的的CLK(R/X)M位位选选择择收收发发时时钟钟信信号号是是外部输入还是输出。外部输入还是输出。2.帧同步和时钟信号的有效逻辑/边沿可以通过PCR寄存器3.帧同步信号帧同步信号u帧同步有效表示帧同步有效表示1帧串行数据传输的开始帧串行数据传输的开始 u帧可以包括帧可以包括2个相位个相位 u相位中的数据单元个数定义为相位中的数据单元个数定义为 (R/X)FRLEN(1/2)+1 u数据单元的位数如表所示数据单元的位数如表所示 例子中参数设置为例子中参数设置为(R/X)FRLEN1=0000001b,(R/X)FRLEN2=0000010b,(R/X)WDLEN1=001b,(R/X)WDLEN2=000b 双相双相帧(Dual-Phase Frame)的例子的例子3.帧同步信号帧同步有效表示1帧串行数据传输的开始 双相帧3.帧同步信号帧同步信号4个个8位数据单元的单相帧传输例子:位数据单元的单相帧传输例子:u(R/X)PHASE=0,表示单相帧,表示单相帧u(R/X)FRLEN1=0000011b,表示每帧,表示每帧4个数个数据单元据单元u(R/X)WDLEN1=000b,表示数据字长,表示数据字长8位位1个个32位数据单元的单相帧传输例子:位数据单元的单相帧传输例子:u(R/X)PHASE0,表示单相帧,表示单相帧u(R/X)FRLEN10b,表示每帧中含,表示每帧中含1个数个数据单元据单元u(R/X)WDLEN1=101b,表示数据单元字长,表示数据单元字长32 位位3.帧同步信号4个8位数据单元的单相帧传输例子:4.数据延迟数据延迟收收/发控制寄存器中的发控制寄存器中的RDATDLY位和位和XDATDLY位可分别设位可分别设置接收和发送的数据延迟,延迟范围可以是置接收和发送的数据延迟,延迟范围可以是02个传输时钟个传输时钟周期,一般是在其后的第周期,一般是在其后的第1个时钟周期启动该帧的数据传输个时钟周期启动该帧的数据传输 4.数据延迟收/发控制寄存器中的RDATDLY位和XDAT8.4 标准模式传输操作标准模式传输操作下面的讨论中,假设串口的设置为:下面的讨论中,假设串口的设置为: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位数据延迟位数据延迟8.4 标准模式传输操作下面的讨论中,假设串口的设置为:数据的接收数据的接收(FSR)有效后,有效后,DR管脚上的数据在经过一定的数据延迟后依次移管脚上的数据在经过一定的数据延迟后依次移位进入位进入(RSR)。若。若RBR为空,则在每个数据单元接收的末尾,为空,则在每个数据单元接收的末尾,CLRK时钟上升沿处,时钟上升沿处,RSR中的内容会被复制到中的内容会被复制到RBR中。这一个中。这一个复制操作会在下一个时钟下降沿处触发状态位复制操作会在下一个时钟下降沿处触发状态位RRDY置置1,标志,标志接收数据寄存器接收数据寄存器(DRR)已准备好,已准备好,CPU或或DMA控制器可以读取数控制器可以读取数据。当数据被读走后,据。当数据被读走后,RRDY自动变无效。自动变无效。数据的接收(FSR)有效后,DR管脚上的数据在经过一定的数据数据的发送数据的发送(FSX)有效后,有效后,(XSR)中的数据经过一定的数据延迟,开始依次移中的数据经过一定的数据延迟,开始依次移位输出到位输出到DX管脚上。在每个数据单元发送的末尾,管脚上。在每个数据单元发送的末尾,CLRK时钟时钟上升沿处,如果上升沿处,如果DXR中已经准备好新的数据,中已经准备好新的数据,DXR中的新数据中的新数据会自动复制到会自动复制到XSR中。中。DXR-XSR复制操作会在下一个复制操作会在下一个CLKX下下降沿处激活降沿处激活XRDY位,表示可以向发送数据寄存器位,表示可以向发送数据寄存器(DXR)写入新写入新的数据。的数据。CPU或或DMA控制器写入数据后,控制器写入数据后,XRDY变为无效。变为无效。数据的发送(FSX)有效后,(XSR)中的数据经过一定的数据帧信号的最高频率帧信号的最高频率u帧频率帧频率=传输时钟频率帧同步信号之间的传输时钟周期数传输时钟频率帧同步信号之间的传输时钟周期数u最大帧频率最大帧频率=传输时钟频率每帧数据的位数传输时钟频率每帧数据的位数帧信号的最高频率帧频率=传输时钟频率帧同步信号之间的传输时忽略帧同步的传输忽略帧同步的传输u(R/X)FIG=0时数时数据单元据单元B被多余的帧被多余的帧同步信号中断的例子同步信号中断的例子 u(R/X)FIG=1时时McSBP忽略多余的忽略多余的帧同步信号的操作帧同步信号的操作 忽略帧同步的传输(R/X)FIG=0时数据单元B被多余的帧忽略帧同步的传输忽略帧同步的传输利用利用(R/X)FIG位设置,进行数据打包位设置,进行数据打包(Data Packing)忽略帧同步的传输利用(R/X)FIG位设置,进行数据打包(多通道传输接口多通道传输接口1帧串行数据流也可看成是帧串行数据流也可看成是1组时分复用的数据传输通道,组时分复用的数据传输通道,“数据数据单元单元”就等同于就等同于“数据通道数据通道”(a)XMCM=00b,多通道操作被禁止。发送的,多通道操作被禁止。发送的4个数据单元都经个数据单元都经过了过了“写入写入DXR”,和,和“DXR-XSR拷贝拷贝”阶段,最后出现在阶段,最后出现在DX管管脚上脚上 多通道传输接口1帧串行数据流也可看成是1组时分复用的数据传输多通道传输接口多通道传输接口(b)XMCM=01b,使能多通道工作模式。首先禁止并屏蔽所,使能多通道工作模式。首先禁止并屏蔽所有数据单元的发送输出。有数据单元的发送输出。XPABLK选择选择A组子帧中的组子帧中的0号子帧,号子帧,然后由然后由XCER使能该子帧中的第使能该子帧中的第1、3号数据通道进行发送。只号数据通道进行发送。只有被选择并使能的通道,其对应数据有被选择并使能的通道,其对应数据(E1,E3)才会进行才会进行DXR-XSR拷贝,并出现在拷贝,并出现在DX管脚上管脚上 多通道传输接口(b)XMCM=01b,使能多通道工作模式多通道传输接口多通道传输接口(c)XMCM=10b,使能多通道工作模式。所有的通道都被使,使能多通道工作模式。所有的通道都被使能发送数据,因此可以看到能发送数据,因此可以看到E0E3都完成了都完成了“写入写入DXR”“DXR-XSR拷贝拷贝”操作,但是只有操作,但是只有XPABLK和和XCER位位选择的通道的数据选择的通道的数据(E1和和E3)才会真正出现在才会真正出现在DX管脚上,其余管脚上,其余通道数据的输出均被屏蔽通道数据的输出均被屏蔽 多通道传输接口(c)XMCM=10b,使能多通道工作模式多通道传输接口多通道传输接口(d)XMCM=11b,使能多通道工作模式。首先禁止并屏蔽所,使能多通道工作模式。首先禁止并屏蔽所有数据单元的发送输出,进入对称收发模式。对称收发模式是有数据单元的发送输出,进入对称收发模式。对称收发模式是指设备的收发操作在同一个子帧位置执行。此时由指设备的收发操作在同一个子帧位置执行。此时由RPABLK统统一选择发送和接收需要的子帧,一选择发送和接收需要的子帧,XPABLK字段的设置值不再有字段的设置值不再有效效 多通道传输接口(d)XMCM=11b,使能多通道工作模式8.7 SPI 接口接口串行协议接口串行协议接口(Series Protocol Interface)定义了主定义了主/从两种模从两种模式,包括式,包括4根信号线根信号线u串行数据输入串行数据输入(MISO,主设备输入或从设备输出,主设备输入或从设备输出)u串行数据输出串行数据输出(MOSI,主设备输出或从设备输入,主设备输出或从设备输入)u移位时钟移位时钟(SCK)u从设备使能从设备使能(SS)SPI接口的最大特点是由主设备时钟信号的出现与否界定主接口的最大特点是由主设备时钟信号的出现与否界定主/从从设备间的通信设备间的通信 McBSP的数据同步时钟具有停止控制选项,因此可以与的数据同步时钟具有停止控制选项,因此可以与SPI协协议兼容议兼容 8.7 SPI 接口串行协议接口(Series ProtocSPI 接口时钟工作模式接口时钟工作模式 CLKSTP=10b时的时的SPI传输传输 CLKSTP=11b时的时的SPI传输传输 SPI 接口时钟工作模式 CLKSTP=10b时的SPI传输CLKSTP=10,CLKXP=0CLKSTP=10,CLKXP=0CLKSTP=10,CLKXP=1CLKSTP=10,CLKXP=1CLKSTP=11,CLKXP=0CLKSTP=11,CLKXP=0CLKSTP=11,CLKXP=1CLKSTP=11,CLKXP=1CLKGDV=250,时钟周期周期=40ns*250=10us,(CPU/2)=25MHzCLKGDV=250,时钟周期=40ns*250=10us,McBSP作为作为SPI主控端主控端(Master)由于由于McBSP产生产生CLKX和和FSX信号输出,因此需设置信号输出,因此需设置CLKXM=FSXM=1。此外,还需要设置。此外,还需要设置SRGR寄存器中的寄存器中的FSMG=0,即每次进行,即每次进行DXR到到XSR的拷贝操作时要产生的拷贝操作时要产生FSX信号信号 McBSP作为SPI主控端(Master)由于McBSP产生McBSP作为作为SPI从属端从属端(Slave)当当McBSP作为作为SPI从设备时,由外部主设备产生接口时钟和从设备时,由外部主设备产生接口时钟和从设备使能信号。从设备使能信号。McBSP的的CLKX管脚和管脚和FSX管脚配置为输管脚配置为输入管脚入管脚(CLKXM=FSXM0)。输入串口的。输入串口的CLKX和和FSX同时也作同时也作为为McBSP接收端的接收端的CLKR信号和信号和FSR信号。在进行数据传输信号。在进行数据传输之前,外部主设备必须先置之前,外部主设备必须先置FSX信号有效信号有效(低电平低电平)McBSP作为SPI从属端(Slave)当McBSP作为SMcBSP 作为通用作为通用I/O口口 在下列在下列2种情况下,串口的管脚种情况下,串口的管脚(CLKX、FSX、DX、CLKR、FSR、DR以及以及CLKS)可以用做通用可以用做通用I/O:uSPCR寄存器中寄存器中(R/X)RST=0,接收端或发送端处于复位状态,接收端或发送端处于复位状态uPCR寄存器中寄存器中(R/X)IOEN=1,串口设置为通用,串口设置为通用I/O模式模式McBSP 作为通用I/O口 在下列2种情况下,串口的管脚(
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!