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,当输入的均方根值超过该值时,则依据"限幅器"帮助页面上给出的比例降低增益。

相关推荐
AI成长日志14 小时前
【笔面试算法学习专栏】哈希表基础:两数之和与字母异位词分组
学习·算法·面试
abant214 小时前
leetcode 239 单调队列 需要一些记忆
算法·leetcode·职场和发展
漫霂14 小时前
二叉树的统一迭代遍历
java·算法
炽烈小老头14 小时前
【每天学习一点算法 2026/04/08】阶乘后的零
学习·算法
Mr_Xuhhh14 小时前
算法刷题笔记:从滑动窗口到哈夫曼编码,我的算法进阶之路
开发语言·算法
MicroTech202514 小时前
突破虚时演化非酉限制:MLGO微算法科技发布可在现有量子计算机运行的变分量子模拟技术
科技·算法·量子计算
hssfscv14 小时前
软件设计师下午题六——Java的各种设计模式
java·算法·设计模式
珂朵莉MM14 小时前
第七届全球校园人工智能算法精英大赛-算法巅峰赛产业命题赛第3赛季优化题--多策略混合算法
人工智能·算法
罗西的思考15 小时前
【OpenClaw】通过 Nanobot 源码学习架构---(6)Skills
人工智能·深度学习·算法
枫叶林FYL15 小时前
【自然语言处理 NLP】7.2 红队测试与对抗鲁棒性(Red Teaming & Adversarial Robustness)
人工智能·算法·机器学习