作者的话

本章开始,讲一讲每个算法模块,挑有特点的讲,其他的以此类推。

硬件准备

ADAU1466EVB开发板:一块

产品链接:https://item.taobao.com/item.htm?spm=a1z10.5-c.w4002-5192690539.11.60aa7495koHttZ&id=568517158252

USBi仿真器:一个

产品链接:https://item.taobao.com/item.htm?spm=a1z10.5-c.w4002-5192690539.11.75f52dbdSUHRe6&id=38242936768

硬件链接示意图

在这里插入图片描述

  1. USBi仿真器和ADAU1466板插上;
  2. 开发板通过5V2A的电源上电;
  3. USBi仿真器通过USB线接PC;

ADAU1466的算法都在哪里?

在这里插入图片描述

红框内的就全部都是支持ADAU1466的算法了。有兄弟可能会问,那如果这里头没有我想要的算法怎么办?有两种方式,一种是用他现有的算法模块来搭组合算法,逻辑运算模块都在这里:

在这里插入图片描述
有兄弟用逻辑算法,在ADAU1701不支持混响的情况下,自己用逻辑算法加现有的滤波器算法,搭了一个自己的混响,效果还不错。

那如果这种方式还是得不到我想要的呢?比如ANC之类的,效果就是不好,我需要用C写我自己的算法,那就抱歉了,ADAU系列,SigmaDSP是不允许你用C自己写算法的,你可以考虑一下更高端的ADI音频DSP,SHARC系列,代表型号:ADSP-21489、ADSP-21569。

言归正传,我们回到ADU1466的开发中来。

输入输出的模块

在这里插入图片描述
IO就是这个DSP的输出输出,全部都在这个版块里,你会看到ASRC的输入输出,GPIO输入输出,常规的模拟输入输出(Input和Output)、MIC输入(数字麦克风)、SPDIF等。(其他的我不知道干啥的,不懂,没用过)

我这块ADAU1466的开发板上设计了模拟的输入输出、Dmic的输入、SPDIF的输入输出,所以我后面会用这几个来讲。

模拟的输入输出:

在这里插入图片描述
程序非常简单,把Input拖出来,再把output拖出来两个,0/1输入,0/1输出,玩连连看把他们连起来,这个从0/1模拟输入,经过AD后,进DSP,再由DSP送到DA,做数模转换后,过一个运放输出到耳机或者音响,这么一个逻辑就达成了。

软件里是0/1输入,对应的硬件看丝印:

在这里插入图片描述
IN1(0/1),这是不是就匹配上了。

软件里是0/1输出,对应的硬件看丝印:

在这里插入图片描述

OUT1(0/1),这是不是又匹配上了。

用USBi在线下载程序:

在这里插入图片描述
在这里插入图片描述
注意,下载完成后,软件是不会报任何错的,然后我们从绿色的模拟输入口输入模拟音乐(电脑声卡),黑色的模拟输出接口接耳机,通过耳机听到音乐。

在这里插入图片描述

就实现了模拟的输入到输出。

更多推荐