文件名称:
RK312X_CODEC_开发说明文档V1.0.pdf
开发工具:
文件大小: 535kb
下载次数: 0
上传时间: 2019-10-08
详细说明:rk312x codec 开发说明,比如dts配置解析,tinyplay ,tinycap使用,和常见问题分析。瑞芯微电子
福州瑞芯微电子有限公司
日录
1RK3128 CODEC和RK3126 CODEC区别.
2关于RK312X的耳机检测…
21RK3128耳机检测
22RK3126的耳机检测
2.3RK3128的四段耳机检测
RK3128使用外部 CODEC
CODEC常见问题
0
4.1声卡的配置
10
4.2放音问题…
…12
4.2.1完全无声
4.2.2破音…
12
4.2.3音指标测试失真.…
12
4.3录音问题.…
12
4.3.1录音有杂音
中*···
4.3.2信号发生器物入正弦波信号到MC端增益少
4.3.3skpe通话硎m声问题
4.3.4POP音问题
13
耳机图标问题
14
RockalL
瑞芯微甩于
福州瑞芯微电子有限公司
1RK3128 CODEC和RK3126 CODEC区别
RK312X包含rk3128和rk3126,coec都是内置的冋一芯片的不同封装
RK3128比RK3126多耳机检测脚 CODEC HPDET
左声道麦克风输入 CODEC MIC
以及模拟输入 CODEC AIL CODEC AIR
如下图所示
RK3128 CODEC引脚图:
RK3128-F
U1000F
ICU RK3128
Codec
CODEC AO
CODEC_ AOL FB15 CODEC AOR
CODEC AOR
DEC AOMS
CODEC AOMS
CODEC AOM
CODEC AOM
CODEC HPDET C14 HP DET
CODEC AIL
CODEC AR K016
MICBIAS
CODEC MICBIASAB18
c142
CODEC MICL
E16 MIC2IN
CODEC MICR
A17
CODEC VCM
c1447
c0603
013
CODEC AVDD
CCA CODEC
CODEC AVSS
D14
c155
7uF
c0603
Racks
瑞芯微甩于
福州瑞芯微电子有限公司
RK3126 codec引脚图:
MCU RK3126
C603
ODEC
132
CODEC_VCM E T3 MICN
CODEC AOL FK- CODEC AOL
CODEC AOR
CODEC AVDD
CODEC AVDO33
CODEC- AVSS1 138
C127
CODEC AVS52
c19
c42
C60
VCCA 33
OODEC AVDD33
R152
M18PG181SN1
c137
2关于RK312X的耳机检测
RK3128可以通过codc自带的 hpdct来完成耳机检测,rk3126cdcc没有像RK3128带有 hpdct
因此如果需要则需要GPIO来做耳机检测。
Racks
瑞芯微甩于
福州瑞芯微电子有限公司
21RK3128耳机检测
WCc p
R235
0603
Q
WNM2021
Ro4025
2s12271
DET
NCAOR
Q11
WNI021
c140
7uF=047F
D985V
R~^R402
CODEC AOM
c0402
SPK CTL
AOMS
c309
0.1uF
R69
c0402
Ro402
电路如图所示,插入耳机 hpdet低电平,拔掉耳札 hpdet为高电平。需要注意的是芯片内部有防抖
设计。 HPDET的翻转电平要大于1011AVDD才有效,
例如 codec电源使用的AVDD=3.3V那么拔掉耳机时候的电平应大于3.3*10/1=3V
dts中的配置,需要 codec hp det=<1>;
arch/arm/boot/ dts/rk3128-sdk dts
87
spk ctl io =&gpiol GPIo B3 GPIo ACTIVE HIgh>;
spk-mute-delay =<200>
hp-mute-delay -<100>
90
rk312x for mid=<1>
91
isrk3128=<0);
spk volume =<25>
93
hp volume=<25〉
94
capture volume
pio debug <1>
96
codec hp det =<1>
97};
且机检测状态的调试
Racks
瑞芯微甩于
福州瑞芯微电子有限公司
通过命令 cat sys/ class/ switch/h2 w/state查看耳机插入状态是否正常
0:无耳机插入
l:带Mic耳机插入(四段耳机)
2、不带Mic耳札插入(三段耳札)
如果 sys/class/switch/h2 w/state没有这个节点则要确认拔dts中是否已经配置∫ codec hp det=<1>
如果 state没有变化,则硬件上要确认 hpdet电平在插入耳机的时候是低电平,拔掉耳机的时候是
高电平且电平幅度大于10/11AVDD
22RK3126的耳机检测
目前RK3126SDK没有做耳机检测,如果需要耳机检测的话则需要GPIO来检测,可以参考RK3288
的耳机检测电路,同时在ds中配置即可
rockchip headset
compatible =rockchip headset
headset gpio=<&gpio GPIO C2 GPIO ACTIVE LOW
23RK3128的四段耳机检测
四段耳机和三段耳机的区别是四段耳机比三段耳机上多了耳机MIC和按键
如图下图所示:
RockalL
瑞芯微甩于
福州瑞芯微电子有限公司
MICBIAS
uF020163v
2K2015%
MIC1IN R6130
FB13\
SXMIC_ADC B
1uF020163v
1c12
TES TEST
HP DET R1702
R04025%
10NM221
Da30001A
0421%
L口UTA
0421%
ROUT A
SPK CT
CODEC AOMS
0402
1uF C402
耳机上的MIC接到 codec的 CODEC MICL声道,由于检测耳机 HP DET接到音频通道,所以上
图的Rl不能太小,否则会串电流到声道导致插拔耳机有比较大的异响,按照常规的三段耳机切
换耳机功放电路不合适,所以需要耳机功放各用·个IO∏控制如下图:
耳机部分
VCC 10/ R
P38P37
R15
NC/OR
TESTTEST
HP DET R1702
R0402
Go
0R04025%
WNM 2021
LOUT
R30
NC/OR
2
ROUT A
Q02
VNM2021
g
R133
SPK CTL
14
0.1uF040216v
c0402
功放部分:
RockalL
瑞芯微甩于
福州瑞芯微电子有限公司
⊥
c08
1uF020163V
HPDE不济里
A2
VDD
VO
P
R07
63V
A1
VON
63c口N
10 PA_CTL > X
AGND1FE
CTRL AGND2
PGND
R14+100K02015%N2145B|F09E
接到一个下拉的0口
R0201
耳机按键的adc需要连接到主控的adc2
按键adc的参考电压接到 MICBIAS的参考电压
Dts中的配置需要把adc配置加上io- channels=<&adc2>;
如下所示:
&codec t
spk ctl io-<&gpio GPIO D6 GPIO ACTIVE HIGH>: / SPK CTL- GP IOO D6 *
spk-mute-delay =<200>
hp-mute-delay =<100>
rk312x for mid =<1>
isrk3128=<1>;/*isrk3128=<0〉半
spk volume =(25>
hp volume =(25>
capture volume =(26>
gpio debug =<1>
codec hp det = <1>
io-channe ls =<&adc 2>
Racks
瑞芯微甩于
福州瑞芯微电子有限公司
3RK3128使用外部 codec
RK328一共有两组I2S,分别是连接 codec内部的is-8 channel,以及外部使用的s-2 channel
其中外部I2S对应的PIN是与 GPIOOB有复用关系,其对应的复用寄存器控制为
GRF GPIOOB IOMUX 0x200080ac
调试可通过命令io-410x3000x20008000
回读寄仔器确认IO复用是否是配置为I2S信号包括I2SCLK,2 S MCLKI2SSDI,I2SSDO
录音数据要注意
GRF SOC CON 1[5]0时,I2S2 CH SDI选择 GPIOIA5
GRE SOC CON I[5=1是,2S2CHSD选择GPIO0B[6
同时需要开启I2 S MCLK,对应的时钟为 clk i2s2 ch out,
12s->clk i2s 2ch out clk get(&pdev->dev,clk i2s 2ch out")
I if (IS ERR(i2s >clk i2s 2ch out))(
dev err(&pdev->dev, Can't retrieve clk i2s 2ch out\n)
ret= PTR ERR(i2s->clk 12s 2ch out)
goto err,
clk prepare enable(i2s->clk i2s 2ch out
此时开机I2 S MCLK应有CLK输出可通过如下命令查看clk是否开启同时使用示波器确认下
shellrk312x: /d/clk cat clk summary
lock
enable cnt prepare cnt rate
clk i2s 2ch pll
594000000
i 2s 2ch frac
1
11289600
clk i2s 2ch
11289600
i2s clkout
11289600
clk i2s 2ch out o
11289600
使用 GPIOOB口上的I2S的完整补丁如下,
diff --git a/arch/ arm/boot/dts/rk312x dtsi b/arch/arm/boot/dts/rk3 12x. dtsi
index fbOa437. 2f62fc9 100755
a/arch/arm/boot/ dts/rk312x dtsi
111 b/ arch/arm/boot/dts/rk312x dtsi
-480,10+480,12
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.