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.

[参考译文] TMS570LS3137:TMS570LS3137ZWT

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/612079/tms570ls3137-tms570ls3137zwt

器件型号:TMS570LS3137
主题中讨论的其他器件:HALCOGENTMS570LS0432

大家好、

最近、我们采购了 TMS570LS3137ZWT 并开始使用 Code Composer Studio 6.2版本测试 HET 模块。

测试用例:我们配置了这样的方法、即对于 NHET1模块中的引脚30、以32kHz 的频率施加3伏特峰间方波。 我们已经配置了 NHET1、这样的话、如果输入频率>=32kHz、引脚31应该被设定。

观察结果:

在输入频率< 32kHz 且采样信号幅值为3Vp-p 的情况下、引脚31未设置。
输入频率= 32Kzh 时、采样信号的振幅为3Vp-p、引脚31被置位。
3.现在,我们重新启动了系统并重复了步骤1。 可以看到引脚31已设置。
步骤2后、我们将输入采样信号振幅降低至500mV、并重复步骤1和预期输出(引脚31未设置)。
5.在上述步骤之后,我们将采样信号振幅增加到3 Vp-p,但引脚31仍未设置(正确)。

问题:一旦引脚被置位、并且在重新启动后、在采样信号振幅没有变化的情况下、引脚始终被置位。
是否为预期行为? 如何克服这一问题?

此致、

M.Sreenivasan。

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

    500mV 输入信号小于0.8V (VIL)、它将被捕捉为0x0。 最小输入高电平信号为2V (VIH)。

    重新启动程序(在 CCS 中,运行->reset->system reset,然后运行->restart)时,将调用 hetInit()。 hetInit()初始化 NHET 引脚,并将微代码(通过 HALCoGen 生成的 c 结构)复制到 N2HET RAM 中,设置必要的寄存器并启动 N2HET 程序执行。 因此引脚31的电平应在 hetInit()之后清除。

    如果引脚30上采样信号的频率小于32KHz、ISR 可以清除引脚31。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Wang、

    是的、我们已使用 HALCOGEN 生成的代码进行 HET 初始化、并观察到报告的问题。
    如果您需要进一步的布线、请告诉我?

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

    是否有关于此问题的任何更新?

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

    您好!

    NHET 引脚31是配置为 GIO 引脚还是 NHET 功能引脚? pin32是在 NHET 微代码中设置的(在 nhetInit()中复制到 NHET RAM 中)还是在 CPU 代码中设置的?

     引脚是否具有上拉电阻?

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

     您好、Wang、

    它是 NHET 功能引脚、请在附件中找到配置快照。

    此致、
    M.Sreenivasan。

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

    您可以分享您的意见吗?

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

    请告诉我您对此有何评论?

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

    自8月21日以来、我们正在等待您的评论。 请您加快速度并提供您的意见。

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

    遗憾的是、QJ 和我们 Hercules 团队的其他成员受到了休斯顿近期天气事件的影响、并由于这些悲惨事件而离开 TI 办公室一段时间。 我们当然希望很快恢复正常、届时将解决您的问题。 提前感谢您的耐心和理解。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    大家好、

    是否有关于此问题的任何更新?

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

    您可以共享您的代码吗? 我的理解是、您的代码喜欢以下内容:

    if (freq >= 32)
    引脚被置位
    其他
    引脚被清零
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    e2e.ti.com/.../1072.ti_5F00_test.txt

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

    希望这种情况能在您的位置得到控制、并做好准备。
    请找到我们正在使用的随附代码片段、一旦引脚被置为有效、我们将不会清除引脚、直到电路板重新启动。

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

    您好!

    我在 TMS570LS0432 Launchpad 上编写了一个测试案例、并按预期工作。

    1、NHET1引脚10输出 PWM 信号。

    2、NHET1引脚0配置为输入、用于捕获引脚10发出的 PWM 信号(通过板载电线连接引脚0和引脚10)

    3.启用 RTI compare0。

    在 RTI ISR 中、

    1:每 2秒更改一次 PWM 周期(33us、32us 和31us)。

    2.每1秒捕获 PWM 周期

    3.当周期<32us (31.25khz)时打开2个 LED (GIOA2和 NHET1 PIN8),否则关闭 LED (清除 GIOA2和 NHET PIN8)

    请使用我的测试用例进行测试。

    e2e.ti.com/.../0511.TMS570LS0432_5F00_PWM_5F00_ECAP.zip

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

    它与在其他情况下共享的测试用例相同、我们尝试验证输入频率(方波)。
    一旦引脚被置位、在重新启动后、在不改变输入信号振幅的情况下、引脚始终被置位。 这很容易重现。

    请尝试使用示例代码并告诉我们您的输入。

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

    是否有关于此问题的任何更新?

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

    请注意、我将回复您同一主题的以下帖子。 我在这里答复的目的是保留一个讨论点、以便讨论不会分散、不会引起混淆。 Kevin 的帖子位于以下链接: e2e.ti.com/.../633758

    QJ 提供了一个测试用例、该测试用例符合他在实验板上的测试。 为了准确重现问题、我认为我们需要尝试重现您的输入信号。 如果可能的话、一个带有与输入信号相关的 NHET 行为说明的示波器图。 即、我认为您应该能够在同一图中捕获输入信号以及 NHET31输出信号。 这将使我们能够进一步解释正在发生的情况。 从 QJs 示例中、NHET 代码在理想输入/方波下按预期工作;但是、如果信号降至 VIH 以下或不是直流信号、则运行可能无法预测、如您所见。

    另外、Kevin 在文章中提到、由于"频率幅度略有变化"、但我不知道这意味着什么、因为频率和幅度完全是不同的波形特征。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 QJ 和 Chuck、

    请查看以下有关我们测试程序的详细信息:

    测试用例:我们配置了 NHET1、以便对引脚30施加3伏峰间电压的方波。 我们已经配置了 NHET1、这样的话、如果输入频率(在引脚30上)>=32kHz、引脚31应该被设定。

    观察结果:

    在输入频率< 32kHz 且采样信号幅值为3Vp-p 的情况下、引脚31未设置。 (预期行为)
    输入频率= 32Kzh 时、采样信号的振幅为3Vp-p、引脚31被置位。 (预期行为)

    3、现在我们重新启动了系统并重复了步骤1 (即输入信号频率< 32kHz、振幅为3Vp-p)。 可以看到引脚31已设置。

    步骤2后、我们将输入采样信号振幅降至500mV、并重新启动系统、重复步骤1、预计会输出(引脚31未设置)。

    问题:一旦引脚被置位、并且在重新启动后、在采样信号振幅没有变化的情况下、引脚始终被置位。
    是否为预期行为? 如何克服这一问题?

    如果需要更多说明、您能否设置会议、以便我们可以对此进行更多讨论?

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

    当您声明您重新启动系统时、这意味着什么? 您是否在器件上启动上电复位、以确保所有电容均已耗散、从而使器件完全断电? 此外、还应确保 NHET[30]的3V 输入也被移除、因为这可以保持对器件的寄生供电、从而防止器件充分达到全断电状态。

    另请注意、如果您仅使用 IDE/调试中的复位、这绝不是完全系统复位、这意味着 NHET 状态不一定会被清除。 这应该能够通过切换 HETGCR 寄存器中的至位以及重新初始化 NHET RAM 和 HET 寄存器来解决、如 TRM 中至位的 HETGCR 描述中所述。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

      您好、Chuck/QJ、

    请在附件中找到请求的信息。

    详细信息:

    输入和输出波形显示在示波器中。

    显示频率和峰间电压值。

    输入波形为黄色(捕获引脚30)、输出为蓝色(捕获引脚31)。

    图1:输入频率为33kHz、振幅设置为2Vp-p

             输出设置为高电平(2.4Vp-p)

             这是预期行为。

    图2:上述测试后、将输入频率设置为31kHz、幅度设置为2Vp-p 并执行

             CCS6.2中的 CPU 复位。

             当我们运行 CCS6.2时、输出仍然显示2.56 Vp-p、如图2所示。

             这不是预期行为。

    如果您需要更多信息、请告知我们。

    此致、

    M.Sreenivasan。

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

    您好!

    设置 NHET 31 (ETDSET 寄存器)后、来自 CCS 的 CPU 复位不会影响寄存器中的值、但从 CCS 进行系统复位将清除 NHET 寄存器(DOUT、DSET、DIR 等)。

    如果您用于测试的代码是通过 HALCoGen 生成的,则 systemIni()函数调用也会清除 NHET 寄存器。 如果您没有调用 systemInit()或您在 systemInit()中推荐了 peripheralInit(),则 NHET 寄存器将不会被清除。

    根据 NHET 引脚30上测得的频率、NHET 引脚31被置位或清零。

    测量的频率是否正确(>32KHz、=32kHz 和>32KHz)? 如果是、NHET RAM 中的 NHET 代码工作正常。 如果没有、请检查您的 NHET 代码。

    您的 C 代码会检查 测量的频率、 您的代码需要 设置清除 NHET 引脚31。

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

    您好、Wang、

    我们尝试了系统重置、但没有注释 systemInit 或 PeripheralInit 调用。 问题仍然存在。

    您能否检查您是否能够使用我们共享的代码在您的末尾重现问题?

    如果我们有一个电话来讨论更多问题并加快进度、那将是很好的。

    此致、
    M.Sreenivasan。

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

    如果满足 DATA_GE_REG 条件、则使用 MCMP 设置引脚31。 引脚置1后、MCMP 使用置1的零标志来生成相反的引脚操作。 因此、请检查零标志。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Wang、

    您能否提供有关此方面的更多信息、以及我们是否希望清除此问题?

    此致、
    M.Sreenivasan。