This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] C5515/AIC3204配置、输入中带有环回

Guru**** 2546020 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/600540/c5515-aic3204-configuration-with-loopback-in-input

大家好、我正在尝试从 AIC3204获取信号、并使用 C5515 eZdsp SoC 中的 C5515对其进行处理。

我有这个问题。

我的输入似乎是由函数发生器生成的、回路到编解码器 DAC 输出中。

这是我的编解码器配置(192Khz 单声道)

;********
;配置 AIC3204
;********
;指向第0页
AC1 =#0
AR1 =#0x0
调用 i2c_WriteData8

;重置编解码器
AC1 =#1
AR1 =#0x1
调用 i2c_WriteData8

;指向第1页
AC1 =#0
AR1 =#0x1
调用 i2c_WriteData8

;禁用从 DVDD 生成粗 AVDD
AC1 =#1
AR1 =#0x08
调用 i2c_WriteData8

;启用模拟块和 LDO
AC1 =#2
AR1 =#0x01
调用 i2c_WriteData8

;*********
;* PLL 和时钟配置及上电
;*********
;指向第0页
AC1 =#0
AR1 =#0x0
调用 i2c_WriteData8

;AIC 是运行在12MHz 晶振上的主器件
;BCLK 和 WCLK 被设置为 AIC3204 (主器件)的运算
AC1 =#27
AR1 =#0x0D
调用 i2c_WriteData8

;PLL 设置:PLLCLK <- MCLK 和 CODEC _CLKIN <-PLL CLK
AC1 =#4
AR1 =#0x03
调用 i2c_WriteData8

;聚合
AC1 =#5
AR1 =#0x91
调用 i2c_WriteData8

;PLL 设置:J=8
AC1 =#6
AR1 =#0x08
调用 i2c_WriteData8

;PLL 设置:hi_byte (D),表示 D=0x0780 (或1920十进制)
AC1 =#7
AR1 =#0x07
调用 i2c_WriteData8

;PLL 设置:对于 D=0x0780、LO_BYTE (D)
AC1 =#8
AR1 =#0x80
调用 i2c_WriteData8

;聚合
AC1 =#11
AR1 =#0x82
调用 i2c_WriteData8

;聚合
AC1 =#12
AR1 =#0x84
调用 i2c_WriteData8

;聚合
AC1 =#13
AR1 =#0x0
调用 i2c_WriteData8

;聚合
AC1 =#14
AR1 =#64
调用 i2c_WriteData8

;
AC1 =#30
AR1 =#0x87
调用 i2c_WriteData8

;AOSR = 128十进制,或0x0080调用抽取滤波器1至6
AC1 =#20
;AR1 =#0x80
AR1 =#64
调用 i2c_WriteData8

;为 NADC 加电并将 NADC 值设置为8
AC1 =#18
AR1 =#0x82
调用 i2c_WriteData8

;加电 mAdc 并将 mAdc 值设置为2.
AC1 =#19
AR1 =#0x84
调用 i2c_WriteData8


;*********
;* DAC 路由和上电
;*********
;选择第1页
AC1 =#0
AR1 =#0x01
调用 i2c_WriteData8

;路由到 HPL 的 LDAC AFIR
AC1 =#0xC
AR1 =#0x0A
调用 i2c_WriteData8

;RDAC AFIR 路由至 HPR
AC1 =#0xD
;AR1 = 0x08
AR1 =#0x00
调用 i2c_WriteData8

;选择第0页
AC1 =#0
AR1 =#0x00
调用 i2c_WriteData8

;左容积=右容积
AC1 =#64
AR1 =#0x06
调用 i2c_WriteData8

;左 DAC 增益至0dB VOL;右轨左
AC1 =#65
AR1 =#0x00
调用 i2c_WriteData8

;向左、右加电数据路径并设置通道
AC1 =#63
;AR1 =#0x92
AR1 =#0xB2
调用 i2c_WriteData8

;选择第1页
AC1 =#0
AR1 =#0x01
调用 i2c_WriteData8

;取消 HPL 静音,0dB 增益
AC1 =#0x10
AR1 =#0x00
调用 i2c_WriteData8

;静音 HPR,0dB 增益
AC1 =#0x11
AR1 =#0x7A;#0x40
调用 i2c_WriteData8

;加电 HPL
AC1 =#9
;AR1 = 0x28 --精密
AR1 =#0x22;MAL 加电
调用 i2c_WriteData8

;选择第0页
AC1 =#0
AR1 =#0x00
调用 i2c_WriteData8

@BRC0_L =#0x02FF || mmap ()
localrepeat{
repeat (#0xFFFF)
NOP_16
NOP_16
}

;*******
;* ADC 路由和上电
;*********
;选择第1页
AC1 =#0
AR1 =#0x01
调用 i2c_WriteData8

.if 0;立体声2插孔未在板 A15
上正确连接;通过40千欧将 in3_L 连接到 LADC_P
AC1 =#0x34
AR1 =#0x0C
将 i2c_WriteData8

;in3_R 调用到 RADC_P、直到40kohmm
AC1 =#0x37
AR1 =#0x00;#0x0C
调用 i2c_WriteData8
.else;立体声1插孔
;IN2_L 到 LADC_P,阻值为40千欧
AC1 =#0x34
AR1 =#0x30
将 i2c_WriteData8

;IN2_R 更改为 RADC_P、直到40kohmm
;AC1 =#0x37
;AR1 =#0x30
;调用 i2c_WriteData8
.endif

;CM_1 (共模)到 LADC_M (40千欧)
AC1 =#0x36
AR1 =#0x03
通过

40千欧将 i2c_WriteData8;CM_1 (共模)调用到 RADC_M
;AC1 =#0x39
;AR1 =#0xC0
;调用 i2c_WriteData8

;MIC_PGA_L 取消静音
AC1 =#0x3B
AR1 =#0x5D
调用 i2c_WriteData8

;MIC_PGA_R 取消静音
AC1 =#0x3C
AR1 =#0x80
调用 i2c_WriteData8

;选择第0页
AC1 =#0
AR1 =#0x00
调用 i2c_WriteData8

;上电左侧 ADC
AC1 =#0x51
AR1 =#0x80
;AR1 =#0x8A
调用 i2c_WriteData8

;取消左 ADC 的静音并将右 ADC 静音
AC1 =#0x52
;AR1 = 0x00 --精密
AR1 =#0x08
调用 i2c_WriteData8

;虚拟读取
AC1 = 9
AR1 = 0xABAB
; 调用 i2c_ReadData8
.endif 

有什么想法吗?

我的信号为什么会环回?

提前感谢

Paolo

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Paolo、

    我已通知软件团队。 他们的反馈将在此处发布。

    此致、
    Yordan
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    通过禁用到 MAL 的 ADC 输入来求解。

    Paolo