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.

[参考译文] TMS570LC4357:PWM

Guru**** 2455560 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1110430/tms570lc4357-pwm

器件型号:TMS570LC4357

王工您好:μ A

    咨询一下。μ A

   1)下图中Table 23 7和Table 23 8什么区别啊(23.2.5.8边缘检测输入时序)。

   2)如何判断是否使用了 高分辨率说明?

      比如下列函数使用ECNT指令,此指令是不是就没有High 分辨率?

uint32 edgeGetCounter (hetRAMBASE_t * hetRAM、uint32边缘)

return hetRAM-> Instruction [EDGE + 17U].Data >> 7U;

    

     3 μ s >()我们捕获pwm时,pwm会产生杂波,我们是否可以通过调节参数,)(或者来过滤掉杂波?) t c (VCLK2)μ s > 2 (hr) t c (VCLK2)μ s

     

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

    您好、Mingxi、

    在 N2HET RAM 中执行 N2HET 指令时有三个时钟:

    •VCLK2:N2HET 指令以这个时钟速率执行。 每条指令可能需要1~3 VLCK2周期。 请在 TRM 的表23-73"指令摘要"中找到更多信息。

    •高分辨率时钟(HRP):这是一个引脚可 用来改变其状态或在输入信号的情况下测量的最小时间增量。 HRP= tCLK2 * hr

    •循环分辨率时钟(LRP): 在 出现循环分辨率时钟时、获取并执行0x00处的第一条 N2HET 指令。 在执行最后一条指令后、第一条指令0x 位置0x00被预取、但在 出现循环分辨率时钟之前不会执行。  LRP = HRP * LR = tCLK2 * hr * lr

    1:HR 分辨率未启用:如果比较值匹配(例如、CMP 指令中的数据、CNT 指令的数据或指定寄存器的值)、则在下一个环路时钟的上升沿执行引脚操作  

    2. HR 已启用:不会在环路时钟的上升沿执行引脚操作、但会增加一个 hr_data VCLK2周期的延迟。

    第2个表用于 HR 说明、但第1个表不用于。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="507609" URL"~μ C/support/microcontrollers/arm-based microcontrollers-group/arm-based microcontrollers/f/arm-based microcontrollers-forum/1110430/tms570lc4357-pwm"] 2)如何判断是否使用了 高分辨率指令?μ[/quot]

    五个 H2NET 指令(PCNT、WCAP、ECMP、MCMP 和 PWCNT)有一个专用的 hr_lr 位(高 分辨率/低分辨率)、通过 忽略 HR 域、此位允许在 HR 模式或标准分辨率模式下运行。

    默认情况下、hr_lr 位值为0、表示 HR 操作模式。 如果 hr_lr =1、则禁用 HR 模式。

    对于 exmaple:

    PCNT 指令:

    如果 hr_lr 为 0、则 PCNT 捕获 HR 延迟。 如果 hr_lr 为1、则 PCNT 仅以环路分辨率捕获。

    请注意  、每个高分辨率引脚只允许在 HR 模式下运行一条指令(位清零)、但其他指令可 在标准分辨率模式下使用(位设为1)。

    [?userid="507609" URL"~μ C/support/microcontrollers/arm-based microcontrollers-group/arm -based microcontrollers/f/arm based microcontrollers-forume/1110430/tms570lc4357-pwm"]函数使用ECNT指令,此指令是不是就没有High 分辨率 μ s

    ECNT 用于对输入信号脉冲的边沿进行计数。 它不测量脉宽或周期、因此没有 hr_lr 字段。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [ 来过滤掉杂波?userid="507609" URL"~μ C/support/microcontrollers/arm-based microcontrollers-group/arm-based microcontrollers/f/arm-based microcontrollers-forume/1110430/tms570lc4357-pwm"] 3 μ)我们捕获pwm时,pwm会产生杂波,我们是否可以通过调节参数,(hr)(rr) t c (VCLK2)或者2 (CLK2) t c (V/hr))[]

    否 您在何处探测此 PWM 信号? 是否有用于过滤该 PWM 信号的电路。 您的代码是否输出频率超出有效范围的 PWM?

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

    王工:μ A

        我们通过N2HET1 [18]引脚来捕获外部PWM,但是通过示波器观察的外部波形如下,存在以下杂波,会导致采集脉冲的个数多于pwm设计发出的脉冲个数。

        

      1)我们采用ECNT这个命令来计算PWM上升沿个数的,因为ECNT没有使用HR MODE ,所以是不是可以将 (hr)(lr) t c (VCLK2)调大,大于杂波的高电平时间(100us),这样就采集不到杂波了,计算PWM个数就正确了,您看我这个思路可行吗?

      2)如果我想使用PCNT指令来计算PWM周期,是不是就要 2 (hr) t c (VCLK2)>杂波高电平时间,就能过滤掉杂波,你看我这个思路可行吗?μ s

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

    王工 μ A

       1 μ s >()为何TRM中和Datasheet中关于捕获时序计算不一样啊,一个是)(,我们以哪个为准?) t c (VCLK2)、一个是(HRP)(LRP) tc (VCLK2)+ 2 μ s

       2)t c (VCLK2)就是VCLK2的周期吗?如果VCLK2是20MHZ,那么t c (VCLK2)就是50ns?

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

    请使用数据表中的公式。  

    表7-24中的 HRP 和 LRP 应为 HR 和 LR。

    [就是50ns?userid="507609" URL"~μ C/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1110430/tms570lc4357-PWM/4116737#4116737"] 2)t c (VCLK2)就是VCLK2的周期吗?如果VCLK2是20MHZ,那么t c (VCLK2) c (VCLK2)[/引号]

    是的、Tc (vclk2)是 VCLK2的周期