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.

[参考译文] TLV320AIC3105:将左侧 DAC 路由到 HPLOT/HPLCOM、将右侧 DAC 路由到 HPROUT/HPRCOM 问题

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1233269/tlv320aic3105-routing-left-dac-to-hplout-hplcom-and-right-dac-to-hprout-hprcom-issue

器件型号:TLV320AIC3105

您好!  

我执行以下命令。  

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//======PHONES OUT ========//
//Table 53. Page 0/Register 47: DAC_L1 to HPLOUT Volume Control Register
writeRegister(wires, dev, Page_00, 47, 0x80);
//Table 70. Page 0/Register 64: DAC_R1 to HPROUT Volume Control Register
writeRegister(wires, dev, Page_00, 64, 0x80);
// Table 57. Page 0/Register 51: HPLOUT Output Level Control Register
writeRegister(wires, dev, Page_00, 51, 0b10011101);
// Table 71. Page 0/Register 65: HPROUT Output Level Control Register
writeRegister(wires, dev, Page_00, 65, 0b10011101);
//===========RCA OUT===============//
//Table 60. Page 0/Register 54: DAC_L1 to HPLCOM Volume Control Register
writeRegister(wires, dev, Page_00, 54, 0b10000000);
// Table 77. Page 0/Register 71: DAC_R1 to HPRCOM Volume Control Register
writeRegister(wires, dev, Page_00, 71, 0b10000000);
//Table 64. Page 0/Register 58: HPLCOM Output Level Control Register
writeRegister(wire1, 0x18, Page_00, 58, 0b10011101);
//Table 78. Page 0/Register 72: HPRCOM Output Level Control Register
writeRegister(wire1, 0x18, Page_00, 72, 0b10011101);
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

但出于某种原因、我只能在 HPLOT/HPROUT 上看到左侧、只能在 HPLCOM/HPRCOM 上看到右侧。 你能想象我做错了什么吗?

我知道我在 DAC>DACVolume 寄存器上得到立体声分离、因为我可以在左侧和右侧确认。 不是每对都是左/右...

有没有人可以查看我可以查看的内容?  谢谢!

杰伊

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

    您好、Jay、

    在进一步调试之前、我想确认使用"wire"而不是"wires"作为最后两个 writeRegister 调用的第一个参数是有意的(第18行和第20行)。 由于它与其他行不匹配、我认为这可能是一个简单的复制/粘贴错误。

    此致、
    卢卡斯

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

    尊敬的 Lukas:  

    感谢您指出这一点、但遗憾的是、这与我的问题无关。  

    我有一个3.5mm 插孔连接到 HPLOUT 和 HPROUT、RCA 插孔连接到 HPLCOM 和 HPRCOM。 在耳机插孔上我得到了正确的和 RCA 插孔,我只得到了左边。 因此、我可以确认两个 DAC 均已启用并正常工作。 我的数据线能够正常工作。 HP 驱动程序或混频器配置错误。  

    我注意到数据表中的一些地方不正确、我想知道这可能是为什么我在努力获取正确的设置。  

    以下是更新后的相关代码。  

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    bool AudioControlTLV320AIC3105::enableTLV320AIC3105(select_wire wires, device dev, AudioMode mode, int slot){
    Serial.println("AudioControlTLV320AIC3105::enableTLV320AIC3105");
    aic3105_hardReset();
    aic3105_softReset(wires, dev);
    aic3105_initCLK(wires, dev);
    aic3105_initDAC(wires, dev);
    Serial.println("====END: AudioControlTLV320AIC3105::enableTLV320AIC3105===="); Serial.println();
    return true;
    }
    bool AudioControlTLV320AIC3105::aic3105_hardReset() {
    // hardware reset
    Serial.println("-----Hardware reset starting-----");delay(1000);
    pinMode(RESET_PIN,OUTPUT);
    digitalWrite(RESET_PIN,HIGH);delay(1000); //not reset
    digitalWrite(RESET_PIN,LOW);delay(1000); //reset
    // Serial.println("-----Hardware reset, the following should fail-----");
    // writeRegister(0, 0x18, Page_00, 0x01, 0x01);
    // Serial.println("-----now turning it back on-----");
    digitalWrite(RESET_PIN,HIGH);delay(1000);//not reset
    Serial.println("-----Hardware reset complete-----");delay(1000);
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

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

    您好、Jay、

    您是对的;这个数据表表格有点混乱。 我将提交一份修订请求。

    同时、我已经从此处下载了 EVM GUI、以便检查寄存器表配置: https://www.ti.com/tool/TLV320AIC3105EVM-K

    您也可以下载此文件并验证寄存器配置、如果您没有 EVM、则可以在演示模式下运行软件。

    您是否愿意尝试这些更改并查看它是否能解决您的问题?:

    页0/寄存器38:00010000 (或 00010100使用短路保护)。


    此致、
    卢卡斯·哈赞-布什贝克

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

    我一直在对 PDF 进行"评论"、因为我发现了不一致之处。  

    表42. 页0/寄存器37:DAC 功率和输出驱动器控制寄存器

    D3-D0 |计数4位、显示3位"000"。

    表43。 页0/寄存器38:高功率输出驱动器控制寄存器

    D5–D3 |位的指定方式令人困惑。 需要101还是001???

    表95。 页0/寄存器95:输出驱动器短路检测状态寄存器

    D1-D0 |应为2位、显示为一个"0"。  

    我希望这对文档有所帮助。  

    我还想展示我正在经历的其他事情。 出于某种原因 、P0_R47 发生故障(当其他任何东西都不发生时)。  

     

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    START: AudioControlTLV320AIC3105::volume
    Volume Value: 52
    Write: Wire:1 TLV320AIC3105:24 P0_R47 P0x00_R0x2F Value: 0xB4 180 0b10110100
    controlTLV320AIC3105: Received Error During writePage(): Error = 4
    controlTLV320AIC3105: Received Error During writePage(): Error = 4
    Write: Wire:1 TLV320AIC3105:24 P0_R64 P0x00_R0x40 Value: 0xB4 180 0b10110100
    Go to Page Successful.
    Write Reigster Successful.
    Write: Wire:1 TLV320AIC3105:24 P0_R71 P0x00_R0x47 Value: 0xB4 180 0b10110100
    Go to Page Successful.
    Write Reigster Successful.
    Write: Wire:1 TLV320AIC3105:24 P0_R82 P0x00_R0x52 Value: 0xB4 180 0b10110100
    Go to Page Successful.
    Write Reigster Successful.
    Write: Wire:1 TLV320AIC3105:24 P0_R92 P0x00_R0x5C Value: 0xB4 180 0b10110100
    Go to Page Successful.
    Write Reigster Successful.
    END: AudioControlTLV320AIC3105::volume
    START AudioControlTLV320AIC3105::readFlags
    Table 94. Page 0/Register 94: Module Power Status Register
    Read: Wire:1 TLV320AIC3105:24 P0_R94 P0x00_R0x5E Value: 0x0 0 0b0
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

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

    您也可以下载此文件并验证寄存器配置、如果您没有 EVM、则可以在演示模式下运行软件。

    [/报价]

    我在开发过程中一直使用它。 我有一个有关此项目的单独线程、我在其中定向到了此工具。 我希望该工具对页码使用十进制、对值使用二进制数字。 与从十六进制转换为二进制或十进制相比(正如我在代码中所做的用于调试目的)、读取操作要容易得多。 除了抽取值外、我还希望数据表中列出了每个寄存器##的 Hex 值。 不管怎样,我使它工作,工具是非常有帮助的。 我只是坚持这一点。 我显然 DAC 工作正常,只是将它们路由到 L1>HPL 和 R1>HPR 似乎对我不起作用。 我将继续测试。 感谢你的帮助。  

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

    尊敬的 Lukas:  

    我很高兴地宣布、在您的帮助下、我已经解决了我的问题。 结果表明您提到的注册表设置(注册表38至 0b00010000)。 这固定了 RCA 输出(LCOM/RCOM)。

    我还将其中一个输出引脚(HPL)短路、这是固定的。 现在它开始工作了。

    谢谢!

    杰伊

x 出现错误。请重试或与管理员联系。