草庐IT

ES8311 - 音频编解码芯片调试

FANG_YISHAO 2023-07-12 原文

目录

前言

ES8311 codec芯片介绍

调通的配置

软件配置

ID 验证

回环测试

注意事项:


前言

最近因任务需求,需要将一款codec 芯片配合TTS调通,做某款云喇叭播放设备。

这款codec的驱动已经适配过多次,但在此系统上却是第一次调试,谨做记录。

ES8311 codec芯片介绍

System
High performance and low power multi-bit delta-sigma audio ADC and DAC
• I2S/PCM master or slave serial data port
• 256/384Fs, USB 12/24 MHz and other non standard audio system clocks
• I2C interface


ADC
• 24-bit, 8 to 96 kHz sampling frequency
• 100 dB signal to noise ratio, -93 dB THD+N
• One pair of analog input with differential input option
• Low noise pre-amplifier
• Noise reduction filters
• Auto level control (ALC) and noise gate
• Support analog and digital microphone


DAC
• 24-bit, 8 to 96 kHz sampling frequency
• 110 dB signal to noise ratio, -80 dB THD+N
• One pair of analog output with headphone driver and differential output option
• Dynamic range compression
• Pop and click noise suppression
Low Power
• 1.8V to 3.3V operation
• 14 mW playback and record
• Low standby current

以上摘自ES8311的芯片手册。这里重点关注几个地方:

1. 播放和录音的最大功率为14mW。这意味着直接接喇叭可能带不动,笔者也是在这里遇到了问题,最后将喇叭的P接到耳机的 [左/右] 声道进行测试的。

2. 供电电平1.8-3.3v。注意这里是一个宽容性较大的电压范围,要保持供数字电电压等级、I2C的上拉电压、保持一致,否侧影响通信。

调通的配置

目前使用这款codec调通了播放,录音没有测试。

当前配置:

8K 采样率、16bit采样深度、单通道输出、1.8v通信逻辑电平、mclk为256fs(默认256倍,可调)。

从机地址:0x18(7bit)

pin2,MCLK:2.048MHz

pin3,PVDD、pin4,DVDD:1.8V

pin6,SCLK:位时钟,256KHz

pin8,LRCLK:左右声道指示信号,等于采样率。8KHz

pin12,OUTP:接耳机的左/右声道进行测试。

———————————————————————————————————————————

———————————————————————————————————————————

Codec 初始化配置

    {0x45, 0x00},
    {0x01, 0x30},
    {0x02, 0x10},
    {0x02, 0x00},
    {0x03, 0x10},
    {0x16, 0x24},
    {0x04, 0x10},
    {0x05, 0x00},
    {0x0B, 0x00},
    {0x0C, 0x00},
    {0x10, 0x1F},
    {0x11, 0x7F},
    {0x00, 0x80},
    {0x0D, 0x01},
    {0x01, 0x3F},
    {0x14, 0x10},
    {0x12, 0x00},
    {0x13, 0x00},
    {0x09, 0x0C},
    {0x0A, 0x0C},
    {0x0E, 0x02},
    {0x0F, 0x44},
    {0x15, 0x00},
    {0x1B, 0x0A},
    {0x1C, 0x6A},
    {0x37, 0x08},
    {0x44, 0x00}, //loopback test。on:0x88; off:0x00; mic-->speak
    {0x17, 0xBF}, //(0x17,ADC_Volume);
    {0x32, 0xBF}, //(0x32,DAC_Volume);

———————————————————————————————————————————

读取ID验证

一般判断从机是否启动,可以读取一些出厂的ID,如下图

ES8311 ID 寄存器

———————————————————————————————————————————

回环测试

回环测试可以验证,codec 是否能正常工作。

原理:将mic捕捉到的声音,直接通过spk输出出来。

这里通过写 0x44,0x88,打开回环测试的开关。

———————————————————————————————————————————

注意事项:

1. 检查数字供电、I2C的逻辑电平已经寄存器配置的逻辑电平(0x10和0x11寄存器),这几个需要保持一致。

2. 读取ID, 确保codec 芯片启动正常。

3. 工作模式【I2S或PCM】选择(0x09)、采样位深配置(0x09和0x0A),需要配置正确。

4. 主从模式,codec一般作为SOC的从机,需要将codec配置为从机slave模式(0x80)。

0x80寄存器:bit7,1: master(default); 0: slave

5. 最大功率输出较小,一般需要配合PA使用。如果没有PA,可以使用耳机测试。

满树玉瓣多傲然,江南烟雨却痴缠

有关ES8311 - 音频编解码芯片调试的更多相关文章

  1. ruby-on-rails - 无法让 rspec、spork 和调试器正常运行 - 2

    GivenIamadumbprogrammerandIamusingrspecandIamusingsporkandIwanttodebug...mmm...let'ssaaay,aspecforPhone.那么,我应该把“require'ruby-debug'”行放在哪里,以便在phone_spec.rb的特定点停止处理?(我所要求的只是一个大而粗的箭头,即使是一个有挑战性的程序员也能看到:-3)我已经尝试了很多位置,除非我没有正确测试它们,否则会发生一些奇怪的事情:在spec_helper.rb中的以下位置:require'rubygems'require'spork'

  2. ruby - JetBrains RubyMine 3.2.4 调试器不工作 - 2

    使用Ruby1.9.2运行IDE提示说需要gemruby​​-debug-base19x并提供安装它。但是,在尝试安装它时会显示消息Failedtoinstallgems.Followinggemswerenotinstalled:C:/ProgramFiles(x86)/JetBrains/RubyMine3.2.4/rb/gems/ruby-debug-base19x-0.11.30.pre2.gem:Errorinstallingruby-debug-base19x-0.11.30.pre2.gem:The'linecache19'nativegemrequiresinstall

  3. ruby-on-rails - 如何调试 cucumber 测试? - 2

    我有:When/^(?:|I)follow"([^"]*)"(?:within"([^"]*)")?$/do|link,selector|with_scope(selector)doclick_link(link)endend我打电话的地方:Background:GivenIamanexistingadminuserWhenIfollow"CLIENTS"我的HTML是这样的:CLIENTS我一直收到这个错误:.F-.F--U-----U(::)failedsteps(::)nolinkwithtitle,idortext'CLIENTS'found(Capybara::Element

  4. 使用canal同步MySQL数据到ES - 2

    文章目录一、概述简介原理模块二、配置Mysql使用版本环境要求1.操作系统2.mysql要求三、配置canal-server离线下载在线下载上传解压修改配置单机配置集群配置分库分表配置1.修改全局配置2.实例配置垂直分库水平分库3.修改group-instance.xml4.启动监听四、配置canal-adapter1修改启动配置2配置映射文件3启动ES数据同步查询所有订阅同步数据同步开关启动4.验证五、配置canal-admin一、概述简介canal是Alibaba旗下的一款开源项目,Java开发。基于数据库增量日志解析,提供增量数据订阅&消费。Git地址:https://github.co

  5. ES基础入门 - 2

    ES一、简介1、ElasticStackES技术栈:ElasticSearch:存数据+搜索;QL;Kibana:Web可视化平台,分析。LogStash:日志收集,Log4j:产生日志;log.info(xxx)。。。。使用场景:metrics:指标监控…2、基本概念Index(索引)动词:保存(插入)名词:类似MySQL数据库,给数据Type(类型)已废弃,以前类似MySQL的表现在用索引对数据分类Document(文档)真正要保存的一个JSON数据{name:"tcx"}二、入门实战{"name":"DESKTOP-1TSVGKG","cluster_name":"elasticsear

  6. ruby - Ruby 是否有类似于 Perl 的 "perl -d"的逐步调试器? - 2

    Ruby是否有逐步调试器,类似于Perl的“perl-d”? 最佳答案 ruby-debug(对于ruby1.8),debugger(对于ruby1.9),byebug(对于ruby​​2.0)以及trepanning系列都有一个-x或--trace选项。在调试器内部,命令setlinetrace将打开或关闭线路跟踪。这是themanualforruby-debug原来的答案已经修改,因为数据噪声文章的链接,唉,不再有效了。还添加了ruby​​-debug的后继者 关于ruby-Ruby

  7. Simulink方法总结和避坑指南(一)——Simulink入门与基本调试方法 - 2

    文章目录一、项目场景二、基本模块原理与调试方法分析——信源部分:三、信号处理部分和显示部分:四、基本的通信链路搭建:四、特殊模块:interpretedMATLABfunction:五、总结和坑点提醒一、项目场景  最近一个任务是使用simulink搭建一个MIMO串扰消除的链路,并用实际收到的数据进行测试,在搭建的过程中也遇到了不少的问题(当然这比vivado里面的debug好不知道多少倍)。准备趁着这个机会,先以一个很基本的通信链路对simulink基础和相关的debug方法进行总结。  在本篇中,主要记录simulink的基本原理和基本的SISO通信传输链路(QPSK方式),计划在下篇记

  8. ruby-on-rails - 使用 Pow 作为服务器在 RubyMine 中调试 - Ruby 2.1.1 + Rails 4 - 2

    我已经开始使用RubyMine6。我正在处理Rails4、Ruby2.1.1项目。我无法找到如何使用Pow作为服务器调试到RubyMine。你能给我指明正确的方向吗? 最佳答案 我能够使用远程调试从RubyMine进行调试。我正在使用RubyMine6、Rails3、Ruby2.1.1。首先创建一个.powenv文件并添加:exportRUBY_DEBUG_PORT=1234exportPOW_WORKERS=1将以下gem添加到您的Gemfile:gem'ruby-debug-ide'gem'debase'创建一个新的初始化器st

  9. ruby-on-rails - 放置调试语句 - 2

    当我编写代码时,我非常频繁地使用“puts”语句进行调试。它允许我查看服务器中发生的情况。在调试代码的时候,不知道是什么原因,我把这些“puts”语句去掉了。这是个好主意还是我应该保留它们以使我的服务器日志更加清晰? 最佳答案 您应该使用记录器而不是puts。使用这种语句:Rails.logger.debug"DEBUG:#{self.inspect}#{caller(0).first}"ifRails.logger.debug?如果您想(几乎)实时查看调试,只需在另一个终端窗口中使用tail命令:tail-Flog/develop

  10. ruby-on-rails - Rails 在记录 200 OK 后在做什么? (调试响应时间慢) - 2

    我试图在我的RubyonRails应用程序中调试一个极其缓慢的请求调用。我已设法根据自己的喜好优化Controller方法,Rails的日志告诉我它已在XX毫秒内完成操作(Completed200OKin5049ms(Views:34.9ms|ActiveRecord:76.3ms)).但是,在加载页面时,在浏览器中实际呈现任何内容之前打印此消息很长;最多约15秒的等待时间。Rackmini-profiler证实了这一点,告诉我GET操作(不计算完成Controller操作所花费的时间)花费了14秒左右。(分析器还确认Controller操作的执行时间约为5秒)。我可以接受Contro

随机推荐