请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
部件号:TAS2505 尊敬的所有人:
我在这个项目上使用了TAS2505。 采样率为16K。 我的配置如下。 SPK的声音有噪音,音质不是很好。 请帮助我了解寄存器配置有什么问题?谢谢!
静态 const unsigned char TxData[] = // 要传输的数据表
{
//A2DP 接收器 - 启用 扬声器 播放 D类 ///
//////////////////// 初始化 ////////////////////
// Px, P0 切换到 第 0页
0x00, 0x00,
// 软件 重置 寄存器
// p0, r1, b0。 Reset = SW Reset - 内部 寄存器
0x01, 0x01,
// Px, P1 切换到 第 1页
0x00, 0x01,
// LDO 控制 寄存器
// P1, R2, B5-4。 AVDD LDO 输出 = 1.8V
// P1, R2, B3。 PLL 和 HP 电平 转换器 = 通电
0x02, 0x04,
//////////////// 数字 配置 ////////////////
// Px, P0 切换到 第 0页
0x00, 0x00,
// 时钟 设置 寄存器 1 - 多路复用器
// -> PLL_CLK = (PLL_CLKIN x R x J.D)/P
// -> 84.672MHz = (3.528MHz x 1 x 24.0 )/1 --> 对于 FS = 44.1kHz
// -> XX.XXXMHz = (XXXXMHz x X x XX.0)/1 --> 对于 FS = 48kHz
// P0, R4, B3-2。 PLL_CLKIN = BCLK (01)
// P0, R4, B1-0。 CODEC _CLKIN = PLL_CLK (11)
0x04, 0x07,
// 时钟 设置 寄存器 2 - PLL P 和 R 值
// P0, R5, B7。 PLL = 通电 (1)
// P0, R5, B6-4。 PLL 分隔器 P = 1
// P0, R5, B3-0。 PLL 分隔器 R = 1
0x05, 0x91,
// 时钟 设置 寄存器 3 - PLL J 值
// P0, R6, B5-0。 PLL 分隔器 J = 24
0x06, 0x18,
// 时钟 设置 寄存器 4 - PLL D 值
// P0, R7, B5-0。 (MSB) PLL 分隔 器D = 0
// P0, R8, B7-0。 (LSB)
0x07, 0x00,
0x08, 0x00,
// 时钟 设置 寄存器 11 - NDAC 值
// P0, R11, B7。 NDAC = 通电
// P0, R11, B6-0。 NDAC = 3 (DAC_CLK = CODCOD_CLKIN / NDAC)
0x0B, 0x83,
// 时钟 设置 寄存器 12 - MDAC 值
// P0, R12, B7。 MDAC = 开机
// P0, R12, B6-0。 MDAC =8 (DAC_MOD_CLK = DAC_CLK / MDAC)
0x0C, 0x88,
// DAC 设置 寄存器 1-2 - DOSR 值
// -> dac_fs = codec_clk_in / (NDAC.MDAC.DOSR)
// -> 44.1kHz = 84.672MHz / (3.8 .80)
// -> 48kHz = TBD KHz / (X.X.80) TBD
// -> DOSR 必须 是 8的倍数 - slaa404c.pdf
// -> MDAC * DOSR >= ResourceClass * 32
// -> DOSR = 64, 用于 低功耗 模式
// -> DOSR = 128, 表示 高性能 模式
// P0, R13, B1-0。(MSB) DOSR = 80 (DAC_FS = DAC_MOD_CLK / DOSR)
// P0, R14, B7-0。(LSB)
0x0D, 0x00,
0x0E, 0x50,
// 音频 接口 设置 寄存器 1- 配置
// P0, R27, B7-6。 接口 模式 = DSP 模式 (01)
// P0, R27, B5-4。 数据 长度 =16位 (00)
// P0, R27, B3。 BCLK = 输入 (0)
// P0, R27, B2。 WCLK = 输入 (0)
0x1b, 0x00,
// 音频 接口 设置 寄存器 2- 数据 偏移
// P0, R28, B7-0。 数据 偏移 = 1
0x1C, 0x01,
// DAC 指令 集
// 筛选 器A - 最佳 性能, PRB_P1
// p0, r60, b4-0。 处理 块: PRB_P1
0x3c, 0x01,
//////////////// 模拟 配置 //////////////////
// Px, P1 切换到 第 1页
0x00, 0x01,
// REF, POR 和 LDO BGAP 控制 寄存器
// p1, r1, b4。 主 参考 = 通电
// P1, R1, B3。 POR 电源 控制 = 开机
// P1, R1, B1。 LDO Bandgap = 通电
0x01, 0x10,
// 共 模 控制 寄存器
// P1, R10, B6。 模拟 输出 共 模 = 0.9V
0x0A, 0x00,
// P1, R3, B5。 DAC 模式 = 已启用/低功耗
// P1, R3, b4-2。 DAC PTM 控制 = PTM_P3
0x03, 0x00,
// 扬声 器音量 控制 1? 最佳 值 = 0dB
// P1, R46, B6-0。 SPK 模拟 增益 = 0dB
0x2E, 0x00,
// 扬声 器音量 控制 2? 调谐 至 最佳 值
// P1, R48, B6-4。 SPK 驱动 器增益 = 12.0dB
0x30, 0x50,
// 扬声器 放大 器控制 1.
// P1, R45, B1。 SPK 驱动 程序= 开机 /重置
0x2D, 0x02,
//////////////////////// 打开 ////////////////////////
// Px, P0 切换到 第 0页
0x00, 0x00,
// DAC 通道 设置 寄存器 1
// P0, R63, B7。 DAC 电源 = 通电
// P0, R63, B5-4。 DAC 路径 = L+R混合
// P0, R63, B1-0。 软步进 控制 = 1 步进/WCLK
0x3F, 0xB4,
// DAC 通道 数字 音量 控制 寄存器
// 最大 值 = 0dB, 最小 值 = -63dB。 不建议 使用 + 值
// P0, R65, B7-0。 DAC 音量 = 0dB (0)
0x41, 0x00,
// DAC 通道 设置 寄存器 2
// P0, R64, B6-4。 自动 静音 = 已启用 / 直流 >100 个连续 输入
// P0, R64, B3。 静音 控制 = 取消静音
0x40, 0x14
};