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.

[参考译文] TMS320F28335:TMS320F28335

Guru**** 2587345 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/648541/tms320f28335-tms320f28335

器件型号:TMS320F28335

先生,您好:

我在当前项目中使用了 ePWM 模块;我已经实现了频率和占空比 ;

但我想准确控制发送 PWM 加号的数量;

是否有任何方法可以实现它?

谢谢!

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

    您能否提供有关该要求的更多详细信息? 发送 PWM 脉冲意味着什么?

    谢谢
    Vasudha
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Vasudha 您好:
    要求:
    例如,如果我将 PWM 频率设置为100KHz,占空比为50%;我想准确输出加号(例如:15000个周期加号)
    我应该怎么做?
    谢谢
    传单
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、传单、
    请告诉我的理解是否正确。 根据要求、PWM 信号应在15000个周期脉冲后停止。 一种方法是使用跳闸区域子模块的一次性跳闸功能。 您可以在所需时间后在计时器 ISR 中执行软件强制跳闸。

    谢谢
    Vasudha
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Vasudha 您好:
    我已经尝试过您推荐的方法、但它似乎不起作用。
    例如:
    我设置 PWM 频率10kHz、占空比50%;并打开1ms ISR;
    在1ms 计时器 ISR 中、我定义了一个临时变量 ePWM_cnt;
    当 ePWM_cnt=1时,我打开 ePWM 函数;
    当 ePWM_cn=1000时、我会像您说的那样执行软件强制跳闸;
    理论上、ePWM 执行1秒、将发送10000个加法;但实际上它发送9990加法;
    那么它有什么问题呢?

    谢谢
    传单
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Vasudha 您好:
    此问题是否有任何进展?
    期待您的回复。
    谢谢!
    传单。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    传单、
    您是否已经解决了问题?

    如果不是、我怀疑您的环路中存在边界条件错误。 如果您在10kHz 时丢失10个相当于1ms 延迟的脉冲、则应从0延迟到1000或1延迟到1001。

    此致、
    Cody

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Cody:
    感谢您的回复;
    这个问题没有解决;我认为这不是你怀疑的原因;
    因为我测试不同的频率;

    我将 PWM 频率设置为20Khz,理论上,它将发送20000pin,但实际上它发送19960 pin;
    我将 PWM 频率设置为50kHz、理论上、它将发送50000个加法;但实际上它发送49751个加法;
    我将 PWM 频率设置为100kHz、理论上、它将发送100000个加法;但实际上它发送99009加 法;

    它似乎具有特定的规律性。

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

    传单、

         调整频率这一事实表明问题在于 PWM、而不是计时器。 尝试从 TBPRD 值中减去1。 请记住、在 PWM 零点计数中、TBPRD 节拍为。

    如果这不能解决您的问题、那么、如果您的 TBCLK 采用赫兹技术会怎么样?

    此外、如果仍有问题、让我们开始将其作为两个问题进行调试。

    1. PWM 频率
      1. 让我们使用示波器验证 PWM 频率、您在10秒内看到多少个脉冲。
    2. 计时器长度
      1. 在延迟计时器之前和之后切换 GPIO、使用示波器验证延迟的长度。

    此致、
    Cody  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Cody:
    非常感谢;
    尝试从 TBPRD 值减去1可以解决我的问题。

    谢谢!
    传单
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    传单、
    很棒! 如果您有另一个问题、请启动新主题!

    此致、
    Cody