手把手教你使用ADI的音频DSP:ADAU1788的进阶例程3

这篇具有很好参考价值的文章主要介绍了手把手教你使用ADI的音频DSP:ADAU1788的进阶例程3。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

作者的话

ADAU1788是ADAU1787的阉割版,他们同内核,都有SigmaDSP和FastDSP,模拟到模拟的延时都是5us,只不过1788只有2进2出,1787却有4进2出。这个系列我就来说一说这颗ADAU1788的硬件和软件都应该怎么做设计。

OP我是把ADI所有型号的DSP全部都做过,对就是所有型号。所以后面每个型号我都计划写一个专题来讲。

硬件准备

ADUA1788开发板一块:

产品简介:https://item.taobao.com/item.htm?id=611967214868&spm=a1z10.5-c.w4002-5192690539.11.4dc8751aeC9yWu

USBi仿真器一个:

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

软件准备

SigmaStudio4.6

硬件链接示意图

手把手教你使用ADI的音频DSP:ADAU1788的进阶例程3,ADI DSP资料下载,ADI DSP,ADI DSP技术中心,ADI DSP中文资料,ADI DSP

ADAU1788 的进阶例程 6:带压摆的算法

在 SigmaDSP 的算法模块中,会发现很多都有带 SW 的模块,拖出来跟不带的一模一样,这个是干嘛的?注意,非常重要,这个带 SW 的就叫带压摆的模块!

以静音这个模块来讲,见下面的图示:

手把手教你使用ADI的音频DSP:ADAU1788的进阶例程3,ADI DSP资料下载,ADI DSP,ADI DSP技术中心,ADI DSP中文资料,ADI DSP

压摆什么意思?这个得从这个模块的算法来讲了:

No Slew:不带压摆的静音,启用时,可立即使信号静音,不存在增益调节。相对于压摆算法,这种算法需要较少资源;但是实时切换时,可能导致不连续现象(滴答声和爆裂声)

SW:压摆类算法,可从 0dB 增益平滑过渡至静音,并从静音过渡至 0dB 增益。这种压摆算法由
软件(故称为“SW”)实现,比“无压摆”算法要求更多指令。

所以综上所述,无压摆的模块,在音效框架很复杂的时候,实时切换,有可能会出现爆破音。用带压摆的模块就可以很好的解决这个问题。有些用户可能就要说了,那就全都用带 SW 的模块不就好了?不是这样的,DSP 的内部资源是很有限的,带压摆的算法会占用更多的资源,全都用SW,可能会导致你用不了太多的算法模块了,这里就要有一个权衡,如果用不带压摆的模块,实测没有爆破音,那就放心大胆的用,如果发现爆破音,再换带压摆的模块来解决吧,我们还是希望 DSP 能用更多的算法模块的。

下面这个例程就是带压摆的静音,因为程序简单,跟普通静音没什么区别,但这个章节技术点一定要掌握。

手把手教你使用ADI的音频DSP:ADAU1788的进阶例程3,ADI DSP资料下载,ADI DSP,ADI DSP技术中心,ADI DSP中文资料,ADI DSP
ADAU1788 的进阶例程 7:2 进 1 出-开关选择声道输入

音源进来后,有选择的输入,这个常用的功能,在 ADAU1788 上是怎么做的,下面这个例程就来说一说 DSP 的开关选择功能。

手把手教你使用ADI的音频DSP:ADAU1788的进阶例程3,ADI DSP资料下载,ADI DSP,ADI DSP技术中心,ADI DSP中文资料,ADI DSP

SigmaDSP 提供了各种各样的开关模块供你使用,我们来看一个最简单的 2 进 1 出,自己通过开关控制,选择是从哪路输入的例程:

手把手教你使用ADI的音频DSP:ADAU1788的进阶例程3,ADI DSP资料下载,ADI DSP,ADI DSP技术中心,ADI DSP中文资料,ADI DSP
程序通过 USBi 下载后,鼠标点开关选择上面,就是 0 输入,选择下面,就是 1 口输入。

ADAU1788 的进阶例程 8:混音-2 进 1 出

混音是我们做音效时非常常见的功能,在音频框架内,讲音频进行各种特效处理后,再混音输出,会得到想要的效果,这里简单的做几个混音的程序,让大家能了解这个功能是如何在SigmaDSP 里实现的。(在第一个文档的例程里已经有混音,这里再单独拿出来加强一下)

手把手教你使用ADI的音频DSP:ADAU1788的进阶例程3,ADI DSP资料下载,ADI DSP,ADI DSP技术中心,ADI DSP中文资料,ADI DSP

看下面这个程序:

手把手教你使用ADI的音频DSP:ADAU1788的进阶例程3,ADI DSP资料下载,ADI DSP,ADI DSP技术中心,ADI DSP中文资料,ADI DSP

01 输入,0 通过一个增益模块,1 通过另一个增益模块,进行混音后,通过 0 通道输出到耳机。

特别注意,开发板的例程旨在教会用户怎么去用模块,至于模块怎么组合才能达到想要的效果,这个就需要用户专业的声学知识,以及慢慢的调试了。

ADAU1788 的进阶例程 9:分频器-高低音分频-低音输出

DSP 可以支持把高低音分离出来,高音走高音通道,低音走低音通道,我们来看一下是怎么做的。

手把手教你使用ADI的音频DSP:ADAU1788的进阶例程3,ADI DSP资料下载,ADI DSP,ADI DSP技术中心,ADI DSP中文资料,ADI DSP

程序很简单,0 输入,经过高低音分频,低音推到 0 输出口。这个时候 0 输出的就是低音,接到板子上对应的接口听一下吧。

分频点是可以自己设置的,点击这个分频模块中间的蓝色小方块,出现下面的页面就可以自己设了。

手把手教你使用ADI的音频DSP:ADAU1788的进阶例程3,ADI DSP资料下载,ADI DSP,ADI DSP技术中心,ADI DSP中文资料,ADI DSP

PS:题外话,如果找不到模块,可以直接复制我工程里的模块,SigmaStudio 软件支持开多个工程,以及相同处理器的工程之间的程序互相拷贝。

ADAU1788 的进阶例程 10:分频器-高低音分频-高音输出

手把手教你使用ADI的音频DSP:ADAU1788的进阶例程3,ADI DSP资料下载,ADI DSP,ADI DSP技术中心,ADI DSP中文资料,ADI DSP

输出的时候选择一下,让 HI 接 0,就是 0 输出高音啦。文章来源地址https://www.toymoban.com/news/detail-803898.html

到了这里,关于手把手教你使用ADI的音频DSP:ADAU1788的进阶例程3的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 手把手教你使用ADI的音频降噪DSP:ADAU1772的软件开发详解

    作者的话 ADAU1772是ADI公司的一颗音频DSP,主要用来做降噪耳机,我们就用这一篇文章来说一说,ADAU1772怎么去做开发。 纯新手入门,简单讲讲。 硬件准备 ADAU1772开发板:一块 产品链接:https://item.taobao.com/item.htm?spm=a1z10.5-c.w4002-5192690539.11.7ff82f8a2o93Z9id=576376577952 USBi仿真器:一个

    2024年02月01日
    浏览(43)
  • 手把手教你使用ADI的音频降噪DSP:ADAU1772的更多例程讲解

    作者的话 ADAU1772是ADI公司的一颗音频DSP,主要用来做降噪耳机,我们就用这一篇文章来说一说,ADAU1772怎么去做开发。 纯新手入门,简单讲讲。 硬件准备 ADAU1772开发板:一块 产品链接:https://item.taobao.com/item.htm?spm=a1z10.5-c.w4002-5192690539.11.7ff82f8a2o93Z9id=576376577952 USBi仿真器:一个

    2024年01月16日
    浏览(46)
  • 手把手教你如何使用SimiliarWeb

    在之前的“手把手教你如何使用Google Trends”文章中我们讲到从事跨境电商的卖家第一步遇到的问题是“客户在哪里?”该如何推广我的产品?因此若想自己的店铺做大做好,则需要工具来帮助分析市场行情,根据市场行情调整自己的业务状况。小编在上篇中已经讲解了三个特

    2024年02月09日
    浏览(67)
  • 手把手教你如何使用Docker

    我们在公司开发中,会有开发环境,测试环境,上线环境, 比如我们开发人员开发好了一个项目,在开发环境中运行正常,但测试人员拉到测试环境就跑不起来【jdk版本等】,或者上线的时候运行不起来,这时候就要为每个机器配置一个环境,那运维人员不得累死?【哈哈,

    2024年02月10日
    浏览(72)
  • 【码农教程】手把手教你Mockito的使用

    1)Mockito:简单轻量级的做mocking测试的框架; 2)mock对象:在调试期间用来作为真实对象的替代品; 3)mock测试:在测试过程中,对那些不容易构建的对象用一个虚拟对象来代替测试的方法就叫mock测试; 4)stub:打桩,就是为mock对象的方法指定返回值(可抛出异常); 5)

    2024年02月05日
    浏览(60)
  • 单元测试利器——手把手教你使用Mockito

    作者:京东零售 秦浩然 从你成为开发人员的那一天起,写单元测试终究是你逃不开的宿命!那开发人员为什么不喜欢写单元测试呢?究其原因,无外乎是依赖。依赖其他的服务、依赖运行的环境、等等,各种依赖都成为了我们写单元测试的绊脚石。那现在有个单元测试利器

    2024年02月08日
    浏览(67)
  • 手把手教你 iconfont 导入使用及相关配置

    iconfont是阿里旗下的一套图标库,UI设计师设计号图标后,会将图标上传到iconfont的项目库中。前端开发人员需要下载项目图标,并在项目中使用。 iconfont相对于传统的直接导入图标进入页面,有以下几点优势: 体积更小,页面加载速度更快 解决图片像素点会随页面变化而模

    2024年02月07日
    浏览(63)
  • 手把手教你使用gdb调试器

    所谓调试,指的是对编好的程序用各种手段进进行查错和排非错的过程。进行这种查错处理时,下面将讲解如何使用gdb进行程序的调试。  gdb 简介 gdb是一个功能强大的调试工具,可以用来调试C程序或C++程序。在使用这个工具进行程序调试时,主要涉及下面四个方面的操作。

    2024年02月16日
    浏览(50)
  • 怎么用AI绘画?手把手教你使用

    与传统的绘画方式不同,AI绘画软件采用了人工智能算法和计算机视觉技术,使艺术作品的创作变得更加智能化和自动化。这样,即使一个看不懂颜料,也毫无绘画经验的业余者也能创作出可圈可点的艺术品了。AI绘画软件因此被越来越多的创作者和爱好者所使用。那你们知道

    2024年02月15日
    浏览(71)
  • 手把手教你使用gtest写单元测试

    开源框架:gtest,它主要用于写单元测试,检查真自己的程序是否符合预期行为。这不是QA(测试工程师)才学的,也是每个优秀后端开发codoer的必备技能。 本期博文内容及使用的demo,参考: Googletest Basic Guide[1] Googletest Samples [2] 构建依赖环境 按照惯例,先介绍下怎么基于

    2024年02月16日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包