如何制作Omega 2或I2S传奇

您说I2S有什么大不了的? 将接线连接到所需的引脚,一切正常。

Omega2小型机 我也这么认为,但是事实证明,使用Omega2微型计算机并不是那么简单。 所以我决定写这篇文章。

让我们从我最后取得的成就开始。 我将TDA1543芯片(振幅为16位的分辨率的立体声I2S DAC)连接到Omega 2微型计算机,声音很好,我喜欢听互联网广播电台(应该有关于发烧友和暖管声音的笑话)。 但是,我仍然不明白音频过载的原因,只是学会了使用拐杖方法绕过音频。 我非常想听听您对这个问题的想法。

也许有人不知道Omega2是什么。 这是Linux基于LEDE的微型计算机,LEDE本质上是OpenWRT的一个分支。 MT7688处理器,64 MB RAM和16 MB Flash。 通常,您可以在此处此处Wikipedia上阅读更多内容。

还需要注意的是,所有操作均在原始固件版本0.2.0上执行

现在,让我们谈谈我遇到的痛苦
首先,一切都是透明的,我们将I2S TDA'shki和Omega的所有线路连接在一起。 它们分别是CLK时钟线,WS通道同步线,DATA数据线和GND地。 另外,我们添加了一对电阻器和电容器,但主要的是TDA1543第七脚的调谐电阻。 我第一次入睡时,必须对这条腿施加零偏移。 事实是,TDA1543芯片是目前唯一的,它以单极电源运行。 好吧,声音信号是相对于0上下的振荡,因此您需要将此零移至电源电压范围的中间,并获得相对于该点的振荡。 一切都写在数据表中,但是最初,我用一个常规电阻器(来自您的Internet电阻)组装了一个电路,并收到了我很长一段时间不了解的失真。 在输入端没有信号(待机模式)为1.3-1.5 V(使用3.3 V电源)时,放置一个可变电阻器并实现零偏置。 事实证明以下方案。

TDA1543与Omega2的连接图

此外,按照洋葱官方网站上的步骤操作,我们已更新以开发固件版本,该固件版本增加了对I2S的支持(我想写不到一年的时间,但没有通过)。 我们更新并安装必要的声音包:

opkg update opkg install alsa-utils mpg123 

使用以下命令将GPIO切换为I2S模式:

 omega2-ctrl gpiomux set i2s i2s 

我们复制测试的wav文件,我使用了经典的Suzanne Vega-汤姆的晚餐。 并尝试使用aplay进行游戏:

 aplay za_sebya_i_za_sashky.wav 

而且我们听到失真。 只是很多硬过载。 如此之多,以至于您仿佛回到了2007年。但是这首歌的震撼力可以追溯到其中,所以在那里有些奏效吧?

我试图调低alsa混音器的音量-无济于事,因为驱动程序由MAX98090芯片锐化,该芯片由I2C控制,因此所有设置都直接发送到I2C,并且I2S数据本身不会改变。

好的,打开MAX98090的数据手册。 然后我们开始发光。 该微电路支持许多输入数据格式:I2S / LJ / RJ / TDM,并且可以消化大量数据。 MT7688处理器本身也可以比TDDA更大,更快。 也许是I2S中的数据问题?

我逐渐去修理示波器。

位16位? 是的 我将WS线挂在另一个通道的CLK线上。 我对WS-16脉冲长度的测量方法深信不疑。

工作频率错误? 不行 频率全部对应于工人。 WS-44100 Hz,CLK-1411200 Hz。

格式化数据中的类型数字? 使用正确的字符格式(是的,我认为需要unsigned)。 他通过创建人工正弦并在大胆的基础上相对于0上下移动来进行检查,并更改了振幅。 没有质的变化。
反正有I2S吗? 很可能是。 首先,因为随后一切都对我有用(嗯,或者在我看来是这样),其次,我尝试使用示波器进行检查,尽管没有逻辑分析仪当然很困难。 进行更准确的测试并将您的Beaglebone带到这里可能是值得的。

似乎所有事情都是对的,对于洋葱论坛上的人来说,一切都可以,但是事实在其他芯片上:MAX98357A和PCM5102。 通常,我放弃播放wav'ki的想法,而让mpg123播放mp3。 我用-C标志将其剪切并开始降低音量。 在这里我坐了下来。 将mpg123程序中的音量设置为大约1%时,我会得到很好的声音。 芯片摆动到最大幅度。 我从-f 128标志开始广播:

 mpg123 -f 128 http://us2.internet-radio.com:8443/ 

轻松的美国布鲁斯的声音让我感到满足。 顺便说一句,到收音机的链接可能不起作用, 取自此处

图片 我开始锯齿状信号并逐渐增加幅度。 结果,我看到失真是从0到电源电压的混沌跳跃,并且电平越高,这些跳跃越多。 我花了几个星期才让欧米茄说话。 我非常疲倦,因此,此刻我决定停止-它起作用了!

但是,我知道这是不可能的,因此,我很高兴听到您的想法和建议。 好吧,对于那些试图在痛苦中进行欧米茄讲话的人,希望我能对您有所帮助!

谢谢大家!

Source: https://habr.com/ru/post/zh-CN413623/


All Articles