音频---数字mic

news2024/11/21 2:38:37

一、常见的数字mic

  • pdm麦
  • 通过codec芯片将数字麦转换为i2s信号输入到SOC

纯pdm麦就是直接进入SOC的pdm接口,走的是PDM信号,PDM信号就是两个线,一根数据线一根时钟线(如顺芯ES7201/7202把MIC信号转换成PDM)。

二、DMIC和AMIC介绍和区分

2.1 介绍

AMIC

驻极体麦克风(ECM:Electret Condenser Microphone(电容式静电麦克风))是一种使用驻极体电容器作为电介质的麦克风。驻极体是一种能够长时间保持电极化状态的高分子聚合物。一般情况下,ECM是指模拟麦克风(AMIC)。

硅麦克风(MEMS MIC)是一种基于微电子机械系统(MEMS)技术制造的麦克风。它将电容器(如ECM)集成在微型硅晶片上。如果集成了模数转换器(ADC)功能,那么它可以制作成数字麦克风(DMIC);如果没有集成ADC功能,那么只能制作成模拟麦克风(AMIC)。

DMIC

数字麦克风(DMIC)相对于模拟麦克风(AMIC),内部集成了模数转换器(ADC),因此输出的是数字信号。一般情况下,输出的数字信号采用脉密度调制(PDM)编码或者I2S信号格式。如果输出的是PDM格式的数据,需要使用微控制器(MCU)或者解码器(codec)进行PDM解码。

2.2 amic和dmic区别

AMIC和DMIC都是数字麦克风的类型,它们的主要区别在于其工作原理和应用场景不同。

AMIC是一种模拟式麦克风,它通过将声音信号转换为模拟电信号的方式来捕捉声音。它通常用于音频录制和通信系统中,并且需要外部音频信号处理器。

DMIC是一种数字式麦克风,它通过将声音信号转换为数字信号的方式来捕捉声音。它通常用于数字信号处理器中,它可以通过数字信号处理器直接进行信号处理,这使得DMIC在噪声消除和语音识别等方面具有更好的性能。

因此,AMIC通常用于音频录制和通信系统,而DMIC通常用于数字信号处理器中,用于语音识别、噪声消除等方面。

三、PDM编码

脉冲密度调制(Pulse Density Modulation),简称 PDM,是一种使用二进制数 0,1 表示模拟信号的调制方式。在 PDM 信号中,模拟信号的幅值使用输出脉冲对应区域的密度表示

在实际输出的一位数据流中,只存在 1 和 0,1 的密度越大,代表该区域对应的模拟信号幅值越大,反之,0 的密度越大,代表该区域的模拟信号幅值越小。1 和 0 连续转换的区域对应中间幅值。

类似的PCM、I2S、PCM、TDM接口.
 

四、数字MIC应用

        数字mic--》PDM---》A2B PDM接口---》A2B 同轴电缆---》A2B Master TDM---》SOC/AUDIO DSP

        顺便介绍一些A2B:

        A2B 技术是 Analog Devices 公司开发的一种汽车音频总线技术,全称为 "Automotive Audio Bus".

        A2B技术可提供50Mbps的总线带宽,上下行支持最多32个音频通道。A2B具有小于50 μs的确定性延迟,这使其成为延迟敏感型应用的非常有吸引力的解决方案,例如主动降噪(ANC)、路噪降噪(RNC)、回声消除和降噪(AEC-NR)、波束成型(BF)等。

        A2B支持多种不同拓扑结构,例如点对点、菊花链和分支,因而它适合广泛的汽车应用——从具有音响主机和麦克风模块的入门级信息娱乐系统,到更复杂的音频系统,例如兼具ECU、多个麦克风、扬声器和加速度计的RNC。

        A2B网络由一个主节点和最多16个子节点组成,节点之间的最大电缆长度为15 m,主节点和最终子节点之间的最大电缆长度为80 m(包括分支)。主节点包含一个连接到主机处理器的A2B收发器,它能将音频、控制数据和I2C/SPI数据发送到A2B音频总线上。子节点的复杂程度不一,复杂的如具有强大处理能力的音频功放,简单的如麦克风节点。子节点中的A2B收发器与各种外设接口,例如麦克风、数字信号处理器(DSP)、扬声器、传感器(如加速度计)或D类放大器。

        主节点和子节点收发器器件支持多种增值功能,例如时分复用(TDM)和脉冲密度调制(PDM)麦克风输入。A2B收发器的低成本衍生产品具有优化的特性组合,例如末端点子节点收发器(不支持TDM)和优化的主节点收发器(电缆长度更短、子节点更少)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1609556.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

等保合规:保护企业网络安全的必要性与优势

前言 无论是多部网络安全法律法规的出台,还是最近的“滴滴被安全审查”事件,我们听得最多的一个词,就是“等保。” 只要你接触安全类工作,听得最多的一个词,一定是“等保。” 那么,到底什么是“等保”呢…

Docker部署SpringBoot服务(Jar包映射部署)

介绍 项目在docker部署运行以后,每次需更新jar包时,都得重新制作镜像,再重新制作容器。流程及其繁琐,效率极低。 以下步骤是在不更新镜像和容器的前提下,直接更新jar完成项目更新的操作。 不重新制作镜像部署 1. 创…

Python简化远程部署和系统管理的工具库之fabric使用详解

概要 Python Fabric库是一个用于简化远程部署和系统管理的工具库。它提供了一组简洁而强大的函数和工具,可以帮助开发者轻松地在多台远程主机上执行命令、上传文件、下载文件等操作,从而实现自动化部署和管理。 安装 要使用Python Fabric库,首先需要安装Fabric模块。可以通…

OpenHarmony实战开发-如何使用text组件的enableDataDetector属性实现文本特殊文字识别。

介绍 本示例介绍使用text组件的enableDataDetector属性实现文本特殊文字识别。 效果图预览 使用说明 1.进入页面,输入带有特殊文字的信息并发送,对话列表中文本会自动识别并标识特殊文字。目前支持识别的类型包括电话号码、链接、邮箱和地址&#xff…

Zynq7000系列中PL时钟使用

可编程逻辑(PL)具有自己的时钟管理生成和分配功能,并从处理器系统(PS)中的时钟发生器接收四个时钟信号(如图25-10所示)。 在嵌入式系统中,PL时钟的管理和分配对于确保逻辑电路的正确…

协程的意义(二)

1.协程的意义 在一个线程中,如果遇到IO等待,线程不会一直在等待,而是利用空余时间去完成别的任务(充分利用线程)。 示例:下载图片 ①普通的方式下载图片(同步方式) ②使用协程的方…

发泡机液压站比例阀放大器

发泡机液压站是提供动力和压力以驱动发泡机工作的系统。 发泡机是一种用于制备聚氨酯发泡材料的设备,而液压站则扮演着为发泡机提供必要动力的角色。具体来看,液压站的主要组成包括: 液压油箱:存储液压油,为系统提供液…

【Applied Algebra】隐藏子群问题和Shor算法的新视角

隐藏子群问题和Shor算法的新视角 隐藏子群问题是指给定一个群和一个函数,该函数对于群的一个子群是常数,并且对于子群的任何两个不同的左陪集有不同的值,问题是找到这个子群.HSP是许多量子算法的基础,其中最著名的是Shor的算法,它可以用来分解大整数和计算离散对数,这直接威胁到…

小目标检测——鸟类数据集

引言 亲爱的读者们,您是否在寻找某个特定的数据集,用于研究或项目实践?欢迎您在评论区留言,或者通过公众号私信告诉我,您想要的数据集的类型主题。小编会竭尽全力为您寻找,并在找到后第一时间与您分享。 …

nvidia-smi CUDA Version:N/A

问题 nvidia-smi显示:CUDA Version:N/A nvidia-smi -a显示:CUDA Version: Not Found 解决方法 查看Nvidia驱动版本 nvidia-smi如下图,版本为530.41.03 搜索cuda库 apt search libcuda注:不同的源,同一个库的命…

轻量级SQLite可视化工具Sqliteviz

什么是 Sqliteviz ? Sqliteviz 是一个单页面离线优先的渐进式网络应用(PWA),用于完全客户端的 SQLite 数据库或 CSV 文件的可视化。 所谓完全客户端,就是您的数据库永远不会离开您的计算机。使用 sqliteviz&#xff0c…

PyQt程序:实现新版本的自动更新检测及下载(FTP服务器实现)

一、实现逻辑 本实例采用相对简单的逻辑实现,用户在客户端使用软件时点击“检测升级”按钮,连接至FTP服务器检索是否有新版本的.exe,如果有,下载最新的.exe安装升级。 本实例服务端待下载.exe所在目录结构 本实例客户端待更新.exe所在目录结构 二、搭建服务器 可以参考…

IMUGNSS的误差状态卡尔曼滤波器(ESKF)的数学模型

IMU&GNSS的误差状态卡尔曼滤波器(ESKF)的数学模型 把IMU视为运动模型,把GNSS观测视为观测模型,推导整个滤波器 设状态变量为 x [ p , v , R , b g , b a , g ] T x[p,v,R,b_{g},b_{a},g]^{T} x[p,v,R,bg​,ba​,g]T 所有变…

泛型的初步认识(2)

前言~🥳🎉🎉🎉 hellohello~,大家好💕💕,这里是E绵绵呀✋✋ ,如果觉得这篇文章还不错的话还请点赞❤️❤️收藏💞 💞 关注💥&#x…

【深度学习实战(11)】搭建自己的dataset和dataloader

一、dataset和dataloader要点说明 在我们搭建自己的网络时,往往需要定义自己的dataset和dataloader,将图像和标签数据送入模型。 (1)在我们定义dataset时,需要继承torch.utils.data.dataset,再重写三个方法…

LeetCode in Python 55. Jump Game (跳跃游戏)

跳跃游戏的游戏规则比较简单,若单纯枚举所有的跳法以判断是否能到达最后一个下标需要的时间复杂度为O(),为此,本文采用贪心策略,从最后一个下标开始逆着向前走,若能跳到第一个元素则表明可以完成跳跃游戏,反…

Python基础学习之数据切片

数据切片介绍: 切片的基本语法是data[start:stop:step],其中: start 是切片开始的索引(包括该索引处的元素)。 stop 是切片结束的索引(不包括该索引处的元素)。 step 是切片的步长&#xff0…

Go小技巧易错点100例(十五)

本期看点: 正文开始: Go程序跟踪函数的执行时间 在Go程序中我们经常会对接口执行的耗时做一个记录,特别是针对核心或复杂业务的时候,我们需要关注该业务的执行耗时,可以具体到某个方法,有一个简单有效的技…

Linux:常用软件、工具和周边知识介绍

上次也是结束了权限相关的知识:Linux:权限相关知识详解 文章目录 1.yum-管理软件包的工具1.1基本介绍1.2yum的使用1.3yum的周边生态1.4软件包介绍 2.vim-多模式的文本编辑器2.1基本介绍2.2基本模式介绍2.2.1命令模式(Normal mode)…

Python数据可视化库—Bokeh与Altair指南

👽发现宝藏 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 在数据科学和数据分析领域,数据可视化是一种强大的工具,可以帮助我们…