ADAU1452的开发教程10:逻辑算法模块

作者的话

查看以前写的文章,竟然漏了ADAU1452的教程,这个系列补上。

硬件准备

ADAU1452EVB开发板 一块

产品链接:https://item.taobao.com/item.htm?id=39289236798\&mi_id=0000wqoRr6-98ywbCw8ZTr0mE6q1cknIFCl463Z2sUYdsks\&spm=a21xtw.29178619.0.0

USBi仿真器 一个

产品链接:https://item.taobao.com/item.htm?id=38242936768\&ltk2=17537807781694bl3w9jzvg4i3etpojyy4\&spm=a21xtw.29178619.0.0

5V2A电源适配器一个

3.5mm音频线两条

MINI USB线一根

模拟音频输入音源:手机

模拟音频输出设备:耳机

软件准备

首选需要安装 SigmaStudio 软件,这个软件是开发 ADAU1452 的唯一工具,你的所有功能都依赖这个软件来实现,所以请随时关注 ADI 官网上的软件更新情况,确保自己安装的是最新的 SigmaStudio 软件,已获得更多更稳定的功能。

目前最新的SigmaStudio软件版本是4.7,而且应该不会再有更新了,所以我们如果用SigmaStudio,就固定在4.7版。

这个软件是完全免费的,直接下载安装即可。

特别注意,安装 SigmaStudio 时,有可能需要你安装 Microsoft.NET Framework Ver4.0,如果你的机器之前没有安装过此类软件包。 最新版本的.net Framework 可到网站下载。

软件都装好了,就可以正式开启我们的 ADAU1452 的开发之旅了!

开发平台搭建示意图

ADAU1452 的进阶例程 1:USBi 仿真器自检程序

大家在使用 USBi 调试 SigmaDSP 的时候,通常是下载程序后,看程序是否能正常出声,来判断 usbi 和板子是否工作正常。不过这里我们提供一个简单的小程序,也能来测试一下。

这是可以当作一个 USBi 通讯测试程序,当 USBi 和 PC 以及 SigmaStudio 通讯正常的时候,SS 下载程序,打开 1XRTA1 的开关,鼠标调节 Single1,则 1XRTA1 的电平随之变化。

可将此程序置入原理图设计中,随时可验证 USBi 是否工作正常。 如:

ADAU1452 的进阶例程 2:BasicDSP- DC Input、Adder 和 AB in/Out Condition 的组合使用

SigmaStudio 软件里有一个 BasicDSP 的类,所有的 SigmaDSP 都有可能会用到,下面做几个例程来简单说一说。

例程采用 "直流输入"(DC Input)模块、"加法器"(Adder)和一个 " AB 输入/输出条件"(AB in/Out Condition)模块,用于比较两个输入 VCO 源的电平,其中,这两个源均加上了一个直流值。"条件"模块的输出通过一个" T 形连接" T Connection)分路并传送至"输出"(Output)端。

在当前配置中,条件为假,信号 B 将传送至输出模块。如果单击" AB 输入/输出条件"模块中的"条件" (Condition)图标,使其显示大于符号(>),然后重新编译,则条件为真,结果输出信号 A。

ADAU1452 的进阶例程 3:Delay 延迟和Feedback 反馈的组合使用

这个例程中,来自"延迟" (Delay)模块的输出在一个" T 形连接"处分路,然后传送至"输出"端,同时馈入"反馈" (Feedback)模块,然后传回"多控制混频器" (Multiple Control Mixer)的第二输入端。

ADAU1452 的进阶例程 4:Linear Gain 线性增益和 Divide 除法和 DSP Readback 模块的组合使用

该例程显示的是如何通过"线性增益"(Linear Gain)模块来实现纯增强,如何通过"除法" (Divide)模块来用一个值除以另一个值,以及" DSP 回读" (DSP Readback)模块是如何从 DSP 中读回值的。

ADAU1452 的进阶例程 5:DC Input 和 Tone (lookup/sine)和 Voltage-Controlled Delay 模块的组合使用

该原理图采用"直流输入" (DC Input)模块、"信号音(查找/正弦)" (Tone (lookup/sine))模块、 " T 形连接" (T Connection)、"电压控制延迟" (Voltage-Controlled Delay)模块和"输出" (Output)模块,展示了电压控制延迟算法在其中的工作方式。当延迟处于最大允许范围之内时,直流输入将延迟采样发送至输入信号;如果超过最大允许值或设为 0,则输出未定义。其中,电压控制延迟的最大延迟设为 2001 个采样。直流输入的最大值设为 3013。

ADAU1452 的进阶例程 6:限幅器 (Limiter)的用法

该设计采用 "信号音 (查找/正弦)"(Tone (lookup/sine))模块、"单音量 (共享)"(Single Vol (shared))模块、"限幅器" (Limiter)、" DSP 回读" (DSP Readback)模块、"端子" (Terminal)和输出模块。其中,输入信号的阈值点设为-24 dB,当输入的均方根值超过该值时,则依据"限幅器"帮助页面上给出的比例降低增益。

相关推荐
xingzhemengyou12 小时前
C语言 查找一个字符在字符串中第i次出现的位置
c语言·算法
小六子成长记4 小时前
【C++】:搜索二叉树的模拟实现
数据结构·c++·算法
汉克老师4 小时前
GESP2025年9月认证C++二级真题与解析(编程题1(优美的数字))
c++·算法·整除·枚举算法·求余·拆数
Zevalin爱灰灰4 小时前
现代控制理论——第二章 系统状态空间表达式的解
线性代数·算法·现代控制
菜鸟233号5 小时前
力扣377 组合总和 Ⅳ java实现
java·数据结构·算法·leetcode
我是大咖5 小时前
二级指针与指针数组搭配
c语言·数据结构·算法
葫三生5 小时前
三生原理范畴语法表明中国哲学可为算法母语
人工智能·深度学习·算法·transformer
D_FW5 小时前
数据结构第五章:树与二叉树
数据结构·算法
WHS-_-20226 小时前
Tx and Rx IQ Imbalance Compensation for JCAS in 5G NR
javascript·算法·5g