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:TMS570LS3137芯片和 FPGA PWM 通信实现。

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1396741/tms570ls3137-tms570ls3137-chip-and-fpga-pwm-communication-implementation

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

工具与软件:

亲爱的大家好。

如标题所示、我想使用 tms570ls3137的 N2HET1[31]引脚作为 PWM 引脚来向 FPGA 发送数据。

我为 tms570ls3137的 Halcogen 启用了 HET1->Pwm0-7 -> PWM0、并将 HET 引脚设置为31。

我调用并执行了 PWM API、如下所示。
pwmStart (hetRAM1、pwm0);
for (uint8 i = 0;i < size;i++){
pwmSetDuty (hetRAM1、pwm0、test_telegam_table[id].data[i]);
}
pwmStop (hetRAM1、pwm0);

实际上、这似乎是 tms570ls3137的结束、
但问题是、我不知道如何在 FPGA 中实现它。

如果我根据上面的示例源执行此操作、数据是否会作为 PWM 信号从 TMS570输出?

2.如何识别 FPGA 中的 PWM 数据?
您是否有类似 PWM 数据表的东西?
这有点困难、因为我必须根据 FPGA 中的 TMS570规范再次实施它。

可以帮帮我吗?

此致、
IBLEE

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

    您好、IBLEE:

    1. 如果我根据上面的示例源执行此操作、数据是否会作为 PWM 信号从 TMS570输出?[/QUOT]

    是的、它应该会生成 PWM 信号。

    [报价 userid="599626" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1396741/tms570ls3137-tms570ls3137-chip-and-fpga-pwm-communication-implementation 并且我调用并执行了 PWM API、如下所示。
    pwmStart (hetRAM1、pwm0);
    for (uint8 i = 0;i < size;i++){
    pwmSetDuty (hetRAM1、pwm0、test_telegam_table[id].data[i]);
    }
    pwmStop (hetRAM1、pwm0);[/QUOT]

    但是、信号将仅在"for"循环持续时间内生成、一旦完成循环超时、PWM 将停止。

    我不知道您的要求是什么、我不明白您为什么要不断更改占空比。  

    2. 如何识别 FPGA 中的 PWM 数据?[/QUOT]

    我不知道关于 FPGA 的任何信息、

    PWM 主要有两个分量周期和占空比、如下所示

    周期意味着导通时间加上周期中的关断时间。

    占空比表示周期中吨的百分比。

    我不知道您对 FPGA 端的要求。 我的意思是、如果您想捕获周期和占空比、并需要使用这些参数执行一些操作、那么您可以这样做。

    我想您可以将该 PWM 连接到 FPGA 的一个引脚、您可以计算波形的周期和占空比并执行必要的操作。

    您有什么类似 PWM 数据表的东西吗?
    [/quote]

    对于 PWM 本身、没有任何专门的数据表。 在 N2HET 部分、您还可以找到有关 PWM 配置的更多详细信息。

    ——
    谢谢、此致、
    Jagadish。

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

    尊敬的 Jagadish:

    1.是否使用 PWM 函数通过 PWM 接口 pwmSetDuty 发送字节单元数据?

    那么、我可以使用 pwmSetSignal 函数吗?

    您是否有通过 PWM 发送字节单元数据的示例代码?

    2.我知道我需要在 FPGA 中检查信号然后进行编码

    此致、
    IBLEE

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

    尊敬的 Jagadish:

    我打算更改占空比、并将数据值传输到 PWM 信号接收器(FPGA)。

    例如、当我要发送值0x12时、我会发送占空比0x1和对应于0x2的占空比、接收器(FPGA)会区分这两个值并确定接收到了哪个值。

    这就是我更改了占空比的原因、但在我看来、通过 PWM 信号传输数据的唯一方法是更改占空比。 我是不是在想错了?

    此致、
    IBLEE

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

    您好、IBLEE:

    [报价 userid="599626" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1396741/tms570ls3137-tms570ls3137-chip-and-fpga-pwm-communication-implementation/5346713 #5346713"]

    1.是否使用 PWM 函数通过 PWM 接口 pwmSetDuty 发送字节单元数据?

    那么、我可以使用 pwmSetSignal 函数吗?

    您是否有通过 PWM 发送字节单元数据的示例代码?

    [报价]

    PWM 的主要应用是控制电机转速、通常 PWM 不用于控制器通信。

    出于通信目的、客户将使用 SCI (UART)、I2C 和 SPI 等、因为这些是简单的通信方法、因为如果您在 SEND 寄存器中写入一个字节、该字节会自动转移到这些外设中的 Tx 线路。

    然而、如果您使用 PWM 进行通信、则会涉及大量开销、  

    例如、我将在数据中为逻辑0发送25%占空比波形、同样、我将在数据中为逻辑1发送50%占空比。 接收器也应该对该波形进行解码、如果发现占空比接近25%、则应将其视为逻辑0、如果它是50%逻辑1。 您可以执行此类操作、但与 UART、I2C 或 SPI 不同、这会涉及大量开销。

    我没有任何这方面的示例、因为我说过客户不会将 PWM 用于控制器或 IC 之间的数据传输。 它们通常用于强度控制或速度控制等

    ——
    谢谢、此致、
    Jagadish。