DA7217的SRM模式使用
这几天在调试一颗codec DA7217,不知道有没有人用过,我遇到下面的问题使用单片机的I2S接口进行通信,单片机做主机,codec做从机,16K采样率,16bit数据
使用codec的SRM模式,我看手册有点不太明白,ST的单片机输出的MCLK是256*16K=4.096M
这个信号到codec的MCLK引脚,CODEC的PLL怎么配置才能正常工作,目前单片机I2S输出一个1K的正弦波
codec输出的是8K,不知道为什么,有没有大神用过这个codec,配置如下
{0x09, 0x80}, // reset codec
{0x00, 0x01}, // Enable ACTIVE mode
{0x01, 0x01}, // Enable repeat mode register access (register address and data is sent for each write)
{0xDC, 0x08}, // Enable Master BIAS and VMID (VMID and Bandgap enabled on BIAS_EN)
{0x91, 0x02}, // PLL Disabled, PLL INDIV= 10-20MHz
{0xE0, 0x00}, // IO Level 2.5-3.6V
{0xE1, 0x80}, // Digital LDO Enabled, 1.05V
{0x0C, 0x02},
{0x0D, 0x01},
{0x92, 0x00}, // PLL FRAC_TOP=00
{0x93, 0x00}, // PLL FRAC_BOT=00
{0x94, 0x20}, // PLL INTEGER=20- PLL Set-up for 12.288MHz MCLK
{0x0B, 0x55}, // 16kHz sample rate for ADC and DAC
{0x91, 0xA0}, // PLL Enabled, SRM Mode, PLL INDIV= 10-20MHz
{0x8C, 0xA0}, // DAI Enabled, DAI Channel 1L and 1R enabled, 16bit, I2S
{0x90, 0x00}, // Slave Mode DAI
{0x8E, 0x00}, // No Offset on DAI (lower)
{0x8F, 0x00}, // No Offset on DAI (upper)
{0xAC, 0xF0}, // CP Enabled, Signal Magnitude tracking mode
{0xAD, 0x35}, // CP Delay 64ms
{0xAE, 0x36}, // CP Volume threshold = 0x36
{0x6C, 0x20}, // OUTFILT_1L_SOURCE = DAI INPUT L
{0x74, 0x40}, // OUTFILT_1R_SOURCE = DAI INPUT R
{0x72, 0x1C}, // DAI INPUT L GAIN = 0dB
{0x7B, 0x1C}, // DAI INPUT R GAIN = 0dB
{0xF8, 0x6F}, // OUT_1L_DIGITAL_GAIN GAIN = 0dB
{0xF9, 0x6F}, // OUT_1R_DIGITAL_GAIN GAIN = 0dB
{0xCD, 0x03}, // MIXOUT_L GAIN = 0dB
{0xCF, 0x03}, // MIXOUT_R GAIN = 0dB
{0x20, 0x80}, // Enable OUT_1L_FILTER (also enables DACREF)
{0x21, 0x80}, // Enable OUT_1R_FILTER
{0xCC, 0x80}, // MIXOUT_L Enable
{0xCE, 0x80}, // MIXOUT_R Enable
{0xD0, 0xE8}, // HP_L Enable, Muted, Ramped
{0xD2, 0xE8}, // HP_R Enable, Muted, Ramped
{0x5A, 0x00}, // DGS SIGNAL and ANTICLIP level to 0dB
{0x54, 0x27}, // Enable DGS
{0xD5, 0x01}, //
{0xD0, 0xA8}, // HP_L Enable, Un-muted, Ramped
{0xD2, 0xA8}, // HP_R Enable, Un-muted, Ramped
页:
[1]