找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3639|回复: 0
打印 上一主题 下一主题
收起左侧

DMA缓冲区乒乓操作的处理

[复制链接]
跳转到指定楼层
楼主
ID:427171 发表于 2018-11-15 16:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

StarterWare音频示例应用程序使用EDMA进行音频数据传输和接收操作。 与EDMA传输相关的音频数据缓冲区是:
•        <b>4发送缓冲区</b>- TX buffer-0,TX buffer-1,TX buffer-2,和一个循环缓冲区。
•        <b>3接收缓冲区</b>-RX buffer-0,RX buffer-1,和RX buffer-2。
EDMA param集被编程为接收RX缓冲区中的数据并从TX缓冲区发送数据。 当一个RX缓冲区被填满时,内容被复制到TX缓冲区,然后它被发送。 如果没有收到数据,则用于传输的EDMA param集被编程为从循环缓冲器传输,该循环缓冲器是不包含有效音频数据的空缓冲器。
EDMA的参数初始化
在McASP发送/接收状态机退出复位之前,EDMA param集被初始化。 为RX设置的主param设置为0,为TX设置的主param设置为1.在主param设置过期后,数据发送/接收继续到链接的paRAM集。 由于EDMA将被链接的param设置为主param集并将其用于数据传输,所以被链接的param集不会过期。 因此,在关联的传输完成之后,不需要更新链接的param集合中的所有字段。

接收参数设置0被初始化为接受RX buffer-0中的第一音频采样。传输完成中断对于param set 0不启用。param set0被连接为param set 40。param set40开始接受RX buffer-0里的数据。param set 40被连接为param set 41(被初始化为接受RX buffer-1中的数据)。param set 41 被连接回param set 40。因此,接收参数设置初始化为0 --> 40 --> 41 --> 40。该链接在应用程序执行时不会更改。

所有的TX参数集初始化为从循环缓冲器传输。传输完成中断未启用param set 1。PARAM组1被链接到PARAM设定42. PARAM组42和43被连接到其自身。 因此,传输param设置链接被初始化为1→42→42,43→43。
从复位释放McASP TX和RX状态机
一旦McASP TX和RX状态机从复位状态释放,McASP就会触发EDMA事件进行发送和接收操作。 第一个音频采样通过主param set 0接收到RX buffer-0中。由于它连接到paRAM set 40,所以在接收到第一个采样后,EDMA通过paRAM set 40继续在
RX buffer -0中接收数据。同样,主 param set-1启用从循环缓冲区传输。 当主paramset到期时,param集合42不断地从循环缓冲器发送数据。
一旦接收缓冲区0中的EDMA接收完成,应用程序就会将接收缓冲区0复制到发送缓冲区0,并更新链接参数集42以从发送缓冲区0发送数据。 Param set 42也链接到param集合43.当正在发送TX buffer 0时,EDMA通过param set 41 接受RX buffer 1中的数据,EDMA通过paRAM集合41在RX缓冲器-1中接收数据。因此,param集合42被更新以接收RX缓冲器 – 2中的数据。
在RX缓冲器-1被填充之后,它复制到TX缓冲器-1并且paRAM组43被更新以从TX缓冲器-1发送。 在来自TX缓冲器-0的EDMA传输完成之后,由于paRAM组42连接到paRAM组43,EDMA立即开始从TX缓冲器-1发送。在此期间,EDMA在RX缓冲器-2中接收数据。
在接收缓冲器-2被填充之后,它被复制到TX缓冲器-2并且paRAM组42被更新以从TX缓冲器-2发送。 在来自TX缓冲器-1的EDMA传输完成之后,EDMA立即开始从TX缓冲器-2发送,因为paRAM组43连接到paRAM组42.在此期间,EDMA接收RX缓冲器-0中的数据。
RX缓冲区-0填充后,将其复制到TX缓冲区-0,并更新paRAM集43以从TX缓冲区-0发送。 在来自TX缓冲器-2的EDMA传输完成之后,由于paRAM集合42链接到paRAM集合43,所以EDMA立即开始从TX缓冲器-0传输。在此期间,EDMA在RX缓冲器-1中接收数据。
EDMA数据传输按照上述步骤中的相同顺序重新开始,因为param集合已被适当编程。


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表