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.

[参考译文] DS90UB941AS-Q1:DS90UB941 使用外部参考时钟无法正常启动。

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1533705/ds90ub941as-q1-ds90ub941-use-external-ref-clk-can-not-to-bringup-ok

器件型号:DS90UB941AS-Q1
主题中讨论的其他器件:LMK3H0102USB2ANY

工具/软件:

目前、我们正在尝试使用 LMK3H0102 的 OUTPU0。 177.978340MHZ 的输出作为外部基准时钟提供给 DS90UB941 芯片。 然而、在调试过程中、只要 941 配置为使用外部 ref clk、就无法正常显示。 DS90UB941 的寄存器配置如下:

m_Iopins.outPutLvdsDecoderSwitch.set(0); //pdB
tsd::common::System::Thread::Sleep (3);//(T4) LVDS 器件复位所需的最短断电时间 3ms
m_Iopins.outPutLvdsDecoderSwitch.set(1); //为 PDB 上电
tsd::common::system:::Thread::Sleep (2);//(T3) 从 LVDS 启用到 I2C 访问可用的最短时间为 2ms

writeLvds 寄存器 (0x01、0x08);//禁用 DSI */
writeLvds 寄存器 (0x40、0x04);/*选择 DSI 端口 0 数字寄存器*/
writeLvds 寄存器 (0x41、0x05);
writeLvdsRegister (0x42、0x3C);//DPHY_SKIP_TIMING
if (m_DisplayType == tuam::Def_Config_Display ManagerConfiguration_abtDisplayType::eAbt15_0_2240x1260)

writeLvdsRegister (0x41、0x21);//DSI_CONFIG_1
//DSI_VS_POLARITY:1->VS 信号为低电平有效;DSI_HS_POLARITY:1->HS 信号为低电平有效;DSI_NO_EOTPKT:1
writeLvds 寄存器 (0x42、(1<<6)|(1<<5)|(1<0));
}
writeLvdsRegister (0x56、0x01);/*使用外部基准时钟*/
writeLvds 寄存器 (0x5b、0x03);//强制采用双 FPD-Link III 发送器模式*/
writeLvdsRegister (0x4f、0x8c);


writeLvds 寄存器 (0x01、0x00);


MODE_SEL0 和 MODE_SEL1 的配置如下。



只需配置 writeLvdsRegister (0x56、0x01) 、这没有显示屏幕、删除外部参考时钟配置、然后显示正常。 请帮助了解如何启用外部参考时钟和启动正常、谢谢。

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

    您好:

    感谢您为 UB9 提供寄存器配置和 MODE_SEL 配置。 能否确认您在 LMK3H0102 上使用的是 LVCMOS 输出模式、以及您是否使用 SSC?

    如果您能够提供 UB9failed 主页和 DSI 端口 0/1 间接寄存器、这将帮助我了解您没有看到正确显示输出的原因。 我假设 177.978MHz 频率是视频时序的 PCLK。

    此致、

    插孔

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

    你好、Jack:


    我们的 LMK3H0102 当前是一个由 OTP 烧录的代码。 我们还询问是否使用 LVCMOS 输出模式以及是否启用 SSC


    这是使用外部 DSI 时钟时打印的主寄存器值


    这是使用外部 ref clk 时打印的主寄存器值。 您可以看到 941 从这些寄存器中都可以看到。 检测到的时钟小于有效的外部时钟。


    我不知道正常情况下 941 是相同、检测这些寄存器时是外部 DSI 时钟还是外部基准时钟。
    遗憾的是、我们的 USB2ANY 已损坏、无法转储所有必需的寄存器、如果您需要确认可以通过代码打印哪些寄存器。

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

    您好:

    感谢您提供外部 DSI 时钟和外部参考时钟的状态读取。 在外部基准时钟的情况下、941AS 不识别 DSI 时钟、这可能表明 941AS 无法使用传入的基准时钟。 仍需要有效的 DSI 时钟来对传入的 DSI 数据进行采样。

    在外部 DSI 时钟回读中、我看到输出了 182MHz 的频率、但外部 REFCLK 设置为 177.978MHz。 您能否确认这是预期情况?

    LMK3H0102 是设置为 3.3V 还是 1.8V? 941AS 可以支持 3.3V 或 1.8V IO、具体取决于 VDDIO 引脚设置为什么。

    此致、

    插孔

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

    您好、Jack:
    Fre 182Mhz 正常, 寄存器打印将有一些偏离实际测量,这是正常的,可以检测到 DSI 频率。

    如果使用 941 的外部参考时钟模式、0x5F 寄存器是否可以打印实际值? 以下 Freq 是 0x5F 寄存器打印的值。 0x0C 寄存器的位 2 当前是未检测到有效像素时钟的状态、位 1 是 0x5A 寄存器的位 3。 这些状态是否可用作外部基准时钟检测? 它是否与外部 DSI 时钟检测相同?

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

    顺便说一下、我发现了一种奇怪的现象、因为我们配置了 MODE_SEL0 和 MODE_SEL1 硬件、所以当系统启动时、我们可以正常启动屏幕、无需配置 941 寄存器。
    在启动外部参考时钟配置时、我们无法读取像素时钟、但当断开 DS90UB941 的 MCU 和 I2C 连接时、屏幕可能会正常亮起。 我怀疑 941 在内部具有 BIT1 使能与 0x3 寄存器进行自动切换、但当我强制其更改为禁用自动切换时、我会使用外部 ref clk 来启动汽车机器。 屏幕不显示、但当 I2C 连接断开时、屏幕会正常显示。 您知道在这种情况下发生了什么吗? 尽管 941 配置了基准时钟、但当有 DSI 时钟发生时、它是否仍选择 DSI 时钟?

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

    您好:

    如果使用 941 的外部参考时钟模式、0x5F 寄存器是否可以打印实际值?

    是的。 当 941AS 处于外部 REFCLK 模式时、值 0x5F 将是外部 REFCLK 的频率。 由于以上回复中的频率打印输出显示外部 REFCLK 模式的频率为 0、因此外部 REFCLK 可能不与 941AS 的规范匹配。

    您能否确认外部 REFCLK 的输出是 LVCMOS 及其使用的逻辑电平? 在 UB9 清单数据表的第 7.5 节中、列出了 REFCLK0 引脚的 VIH 和 VIL。

    此致、

    插孔