查看: 1533|回复: 0

[原创] 【经验分享】RT600 4路音频同步输入1路TDM输出方案

[复制链接]

该用户从未签到

715

主题

6374

帖子

0

超级版主

Rank: 8Rank: 8

积分
25213
最后登录
2025-8-18
发表于 2024-7-22 20:01:01 | 显示全部楼层 |阅读模式
【经验分享】RT6004路音频同步输入1路TDM输出方案
一,     文章简介
   本篇文章旨在在RT685平台上实现4组48Khz 32bit2ch的音频数据同时输入,然后把收到的数据组装成一路48Khz 32bit 8ch的音频再通过I2S输出。这种方案用法,也是应客户要求去做的,因为客户那边做出来总是有谐波问题,分析客户的情况,发现客户的主要问题有两个:
(1)    谐波问题:收到4路8字节之后直接拷贝到发送buffer去做,这个就会导致时序上的问题,没有考虑到音频数据存储池去缓冲数据,等到接收足够音频数据,至少要大于拷贝发送所需要的时间的问题,所以最后问题体现在客户测试输出音频波形发现有谐波的问题。
(2)    音频同步问题:客户收取4路音频数据之后,测试接收buffer,发现4路数据存在不同步问题。
     所以,为了帮助客户,笔者帮客户直接做了这个应用demo,并且做了配套的测试音频源,用来循环发送一组48Khz采样率32bit双通道,固定递增的音频数据,比如0X00-0XFF循环发。
下面是本应用平台框图:
1.jpg

图1 系统框图
上图中,一块MIMXRT685-EVK实现输出48Khz,32bit*2ch的功能,发送数据循环发送:0X00,0X01….0XFF。
另外一块MIMXRT685-EVK是本文的重点,实现4组I2S分别收取数据48khz采样率32bit*2ch,然后把收到的数据,组装成48Khz采样率32bit*8ch的音频数据发送出去。
上图中,为了减少外部线的连接,对于BCLK,WS信号,直接只接一组到I2S3,其他的I2S2,I2S4,I2S5内部共享I2S3的信号。然后,对于DATA数据,在外部做了一根线一分4头的方式,分别接到各组音频接口的data引脚上。
下面就本方案,给出详细的描述。
【经验分享】RT600 4路音频同步输入组合成一路TDM输出方案.pdf (1.74 MB, 下载次数: 12)
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-8-20 03:45 , Processed in 0.240009 second(s), 20 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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