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.

[参考译文] TAS2559:针对裸机应用的配置编程

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

https://e2e.ti.com/support/audio-group/audio/f/audio-forum/1028181/tas2559-configuration-programming-for-baremetal-application

器件型号:TAS2559
主题中讨论的其他器件:、 TAS2563

您好!  

我正在尝试准确地确定在裸机环境中必须对 TAS2559芯片编程的内容、以便启动它以及如何进行编程。 我使用 PPC3来描述我将使用的扬声器的特征、我已经完成了最终系统集成过程来生成所需的文件、但我无法确定如何以正确的方式使用这些文件。  

TAS2559将运行的应用包括一个 STM32裸机 MCU、该 MCU 将通过 I2C 与 TAS2559进行通信、以及一个已在 PPC3内确定特性的扬声器。 我需要在"智能放大器模式"下运行 TAS 以支持大型特性文件;我假设"智能放大器模式"和"RAM 模式"是相同的:  

在 RAM 模式下生成会生成以下文件:  

我不知道应该对这些文件中的任何一个执行什么操作。 根据 PPC3和 TAS2559文档、这些.cfg 文件包含 PPC3用户手册中指定的脚本语言的 I2C 编程指令、但如何使用它们? 我可以将.cfg 文件的内容复制粘贴到 PPC3的 I2C 通信框中、但在 PPC3之外、它们似乎并不非常有用。 我是否必须以某种方式将特定文件传输到 TAS? 或者.cfg 文件是否仅与 PPC3相关? 在这种情况下、我是否必须以某种方式使用.bin 或.json 文件?

此外、.cfg 文件本身都不足以在 TAS2559EVM 评估板上启用音频输出。 我已经尝试按照 TAS2559手册中的编程指南将使能指令附加到.cfg 文件中、但这不起作用。 我从评估板获取音频的唯一方法是在 PPC3中执行系统检查例程(这会导致在"检查设备 A...的音频回放和记录"过程中输出音频。 或通过按下"调优和音频处理"按钮并让 PPC3运行其自己的.cfg 文件。 我尝试使用 I2C 日志将生成的.cfg 文件中的指令与 PPC3在这些自动化过程中发送的指令进行比较、 但是、注册页面和书籍的参考太多、没有文档可供我识别正在发生的情况。  

总之、我希望只需将我的特色扬声器生成的文件编程到 TAS2559中的裸机非 Android/Linux 环境中、而该环境无法利用其他论坛页面上发布的 Android 驱动程序。 非常感谢您的帮助-提前感谢您!  

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

    尊敬的 Sam:

    我将在明天结束前查看您的问题并提供进一步的意见。 很抱歉耽误你的答复。

    此致、
    -Ivan Salazar
    应用工程师

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

    尊敬的 Sam:

    对于 TAS2563等较新的器件、终端系统集成面板会生成一个头文件、您可以将其与 C 代码一起使用以加载寄存器值。 您如何为您的应用选择 TAS2559?

    头文件是否适合您的应用? 如果确实如此、我将检查我们是否有任何可以为 TAS2559生成头文件的未发布 PPC3版本、或者是否有一个可以在 C 或 Python 中运行的脚本、以将 cfg 转换为.h

    此致、
    -Ivan Salazar
    应用工程师

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

    您好、Ivan、

    具有生成的 I2C 写入的头文件很好。 我在 PPC 文档附录 B 中注意到可以生成这样的标头、但我不知道如何生成-具有2559功能的 PPC3版本或脚本都很棒。 我不确定具体是如何选择2559的、但如果相关、我可以进一步调查。

    谢谢!

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

    尊敬的 Sam:

    我正在与我们的 PPC3开发团队一起进行这方面的工作、我将在下周初为您提供进一步的更新。

    此致、
    -Ivan Salazar
    应用工程师

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

    尊敬的 Sam:

    Attached 是一个简单的脚本、用于从可使用的 cfg 中生成头文件。 名为"组合型_configuration_0_TuningMode_48kHzcfg"的文件具有所有必需的寄存器设置。

    要使用解析器、请按照以下说明操作:

    • 将要转换的 cfg 文件复制到头文件
    • 将其粘贴到与解析器相同的文件夹中
    • 将文件重命名为"parse.cfg"
    • 运行"main"脚本; 您需要 Python
    • 应根据您的原始 cfg 文件生成一个名为"pareds.h"的新文件

    或者、您可以始终向我发送从 PPC3获取的输出文件、然后我可以发回报头文件。

    此致、
    -Ivan Salazar
    应用工程师

    e2e.ti.com/.../headerParser.zip

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

    非常好、我能够使用这些脚本生成头文件。 谢谢!  

    在我等待 产品硬件的构建过程中、我要验证此配置是否使用 TAS2559EVM 评估板和 PPC3正确初始化了 TAS 芯片。 如何在 PPC3中使用 combined_configuration....cfg 文件? 我已经尝试将配置文件的内容复制粘贴到 PPC3的直接 I2C 模块中、并按照 TAS 数据表中的规定添加模拟块加电写入、但我无法使用 I2C 事务的这种组合来输出音频。 我是否在某个位置缺少初始化步骤、或者是否有其他方法可以在 PPC3中使用这些.cfg 文件?  

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

    Sam、

    您应该能够仅使用组合配置 cfg 进行初始化。 您是否使用来自 USB 的 I2S 信号? 也许您可以读回中断标志以检查是否触发了任何保护。 我将分享一些有关如何读回寄存器的指南、以及有关如何使用 cfg 的示例。 明天我将在一天结束时回来。

    此致、
    -Ivan Salazar
    应用工程师

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

    伊万  

    很抱歉耽误你的时间。 我正在使用直接 I2C 工具写入配置:

    在写入配置并尝试为模拟块加电后、我可以读回第1页的寄存器68和6C;68读取0、6C 读取02、这是中断2寄存器中的保留位。 我该如何处理此信息?  

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

    尊敬的 Sam:

    我需要深入了解器件详细信息、以检查 您提到的位。
    同时、您能否共享您使用的命令集完全相同? 您可以将其另存为 cfg 文件中的文本(如果尚未使用该格式)。
    我想在我的一侧测试它、并检查是否有任何未完成的可能相关的问题。

    此致、
    -Ivan Salazar
    应用工程师

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

    e2e.ti.com/.../3005.combined_5F00_configuration_5F00_0_5F00_TuningMode_5F00_48KHz.cfg

    伊万  

    附件是我正在使用的 cfg 文件。 下面是我从芯片文档中复制的一组音频块使能指令:

    W 98 05 A3 #加电模拟块
    W 98 04 B8 #为 DSP 和时钟分频器加电
    W 98 07 00 #取消模拟块静音
    w 98 7f 64 #切换到 book100
    W 98 07 00 #音频播放的软步进取消静音

    谢谢、  

    Sam

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

    尊敬的 Sam:

    谢谢、我明天会试一下、然后再做一些评论。

    此致、
    Ivan Salazar
    应用工程师

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

    尊敬的 Sam:

    我厌倦了您的脚本、但我的侧边不起作用、但它可能只是错误的时钟设置。 您能否确认您对采样频率、时钟源和时钟频率的选择? 我尝试了从 PPC3获取的默认脚本、它可以正常工作。

    此致、
    Ivan Salazar
    应用工程师

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

    伊万  

    对于该配置、 采样频率为48kHz、时钟源为 MCLK、时钟频率为3.072MHz。 后两个值的选择有些随意、但我也尝试了一些其他时钟配置。 我不确定在使用 TAS2559EVM 评估板时如何选择这些时钟值-我看到 J17和 J18分别引用位和主时钟、但如何选择这些时钟运行的频率?  

    谢谢、

    Sam

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

    Sam、

    在 EVM 上、这些信号来自 TAS1020B、信号应为:

    • MCLK = 12.288MHz
    • BCLK = 3.072MHz
    • WCLK = 48kHz

    但是、如果您使用外部信号、则可以使用任何可用选项、我将使用 MCLK = 3.072MHz 来尝试您的配置。 您还可以尝试上面列出的默认设置、也可以在您的一侧使用。 我认为您使用的是自定义系统、而不是 EVM。

    此致、
    -Ivan Salazar
    应用工程师

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

    我使用了 MCLK = 12.288MHz 并使用生成的脚本、最后从芯片中获得声音。 该时钟频率是缺失的信息。  

    在等待硬件发货时、我将使用 EVM 了解芯片启动过程。 您提供的 python 脚本应该会让我 在 这里完成剩下的工作。 非常感谢您的帮助!