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.

[参考译文] CCS/TMS570LC4357:pwmGetSignal

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/624355/ccs-tms570lc4357-pwmgetsignal

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

工具/软件:Code Composer Studio

您好!

我通过 HCG 生成 PWM 信号、并希望使用 HET 的另一个引脚作为输入来计算 PWM 周期。 我在 hl_het.h 中找到了函数 pwmGetSignal()

我的问题:

1.为什么这个函数不能返回值?  

2.我可以使用此函数获取周期吗?

我试图定义一个 hetSignal_t 结构并使用 pwmGetSignal()。 但是、当我定义结构时、我收到错误"不允许不完整类型"、因此我包含头文件。

此致

肯南

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    1.函数不会返回值,因为它提供了两个存储在结构中的值。 您必须将指针传递到结构体。
    2.此函数返回之前在 HALCoGen 中定义的 PWM 的周期和占空比。 我不确定这是您真正想要的。 请参阅此帖子、了解一些可能对您有所帮助的应用手册: e2e.ti.com/.../624051
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢 Bob 的回答、

    我有另一个问题。 我的代码的简短部分:

    struct hetSIGNAL_t *s1;
    pwmGetSignal (hetRAM1、1、s1)

    而 pwm0定义为引脚30上的输出、pwm1定义为引脚4上的输入。 引脚30和引脚4相连。
    当我运行代码并读取变量时、我会获得 s1的信息"无法从非基元位置加载"。

     根据来自 e2e.ti.com/.../3325网站的信息、我更改了堆栈大小、但我得到了 FTDI-ERROR。

    我还在 hL_het.c 中设置断点、并在那里读取 pwmDuty。 pwmDuty 为586、pwmPeriod 为1172 (不知道这些值的含义;我在 HCG 中将50%的占空比和1kHz 的频率设置为占空比)。

    此致
    肯南

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

    我认为您要做的是:

    hetSIGNAL_t s1;
    pwmGetSignal (hetRAM1、1、&s1);
    

    这将声明结构 s1,然后将结构的地址传递给函数 pwmGetSignal()。

    请注意、586是1172的50%。  您的 HET 环路时间是多少?

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

    仍有文本"无法从非基元位置加载"、但现在我可以解释这些值。

    此致
    肯南