调试笔记 : ES8323 基础知识

Codec Block Diagram

codec硬件框图如下(ES8323)

在这里插入图片描述

录音过程(ADC data)

模拟输入从LIN1/RIN1,经过MUX到ADC,通过ASDOUT发送给对端(CPU I2S控制器)

放音过程(DAC data)

数字信号从DSDIN进入(对端CPU I2S控制器),发送到DAC,DAC通过DACL/DACR连接到MixL/MixR,最后输出到LOUT1/ROUT1

基础知识
Frame & Period

在这里插入图片描述

Sample          样本长度,音频数据最基本的单位,常见的有8位和16位
Channel         声道数,分为单声道mono和立体声stereo
Frame            帧,构成一个完整的声音单元,所谓的声音单元是指一个采样样本,Frame = Sample * channel
Rate               又称 sample rate,采样率,即每秒的采样次数,针对帧而言
Period Size    周期,每次硬件中断处理音频数据的帧数,对于音频设备的数据读写,以此为单位
Buffer Size     数据缓冲区大小,这里指runtime的buffer size一般来说 buffer_size = period_size * period_count, period_count 相当                        于处理完一个 buffer 数据所需的硬件中断次数
下面一张图直观的表示buffer/period/frame/sample之间的关系

在这里插入图片描述

这个buffer中有4个period,每当DMA搬运完一个period的数据就会出生一次中断,因此搬运这个buffer中的数据将产生4次中断.ALSA为什么这样做?

因为数据缓存区可能很大,一次传输可能会导致不可接受的延迟,为了解决这个问题,alsa 把缓存区拆分成多个周期,以周期为单元传输数据首先看asoc的总体框图:
在这里插入图片描述

Codec驱动(es8323.c)

硬件连接

在这里插入图片描述

SPK_CTL连接GPIO7_B7

在这里插入图片描述

HP_CTL连接GPIO7_A4

在这里插入图片描述

HP_DET连接GPIO0_B5

在这里插入图片描述

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值