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.

[参考译文] TM4C123GH6PM:死区宽度延迟不变

Guru**** 2526700 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1131020/tm4c123gh6pm-dead-band-width-delay-not-changing

器件型号:TM4C123GH6PM

您好!

我正在尝试在 下面的代码中控制 PWM 的死区宽度、但是无论我在函  数中写入什么、两个 LED 之间的照明延迟似乎都不会改变:PWMDeadBandEnable (PWM1_base、PWM_GEN_3、10000、10000);而不是10000。 即使我写入0或65536。  

感谢您提前观看。

#include
#include
#include
#include "inc/hw_types.h"
#include "inc/hw_memmap.h"
#include "inc/hw_gpio.h"
#include "driverlib/sysctl.h"
#include "driverlib/gpio.h"
#include "driverlib/interrupt.h"
#include
#include "driverlib/timer.h"
#include "driverlib/pwm.h"
#include "driverlib/pin_map.h"
#include "driverlib/adc.h"
#include "driverlib/debug.h"


int main (空)


SysCtlClockSet (SYSCTL_SYSDIV_64|SYSCTL_USE_PLL|SYSCTL_16MHz|SYSCTAL_OSC_MAIN);//3、125MHz

SysCtlPeripheralEnable (SYSCTL_Periph_GPIOF);
SysCtlPeripheralEnable (SYSCTL_Periph_PWM1);

SysCtlPWMClockSet (SYSCTL_PWMDIV_64);

GPIOPinTypePWM (GPIO_PORTF_BASE、GPIO_PIN_2 | GPIO_PIN_3);

GPIOPinConfigure (GPIO_PF2_M1PWM6);
GPIOPinConfigure (GPIO_PF3_M1PWM7);

PWMGenConfigure (PWM1_base、PWM_GEN_3、PWM_GEN_MODE_DOWN | PWM_GEN_MODE_NO_SYNC);


PWMDeadBandEnable (PWM1_base、PWM_GEN_3、10000、10000);

PWMGenPeriodSet (PWM1_base、PWM_GEN_3、65535);
PWMPulseWidthSet (PWM1_base、PWM_OUT_6、32267);

PWMGenEnable (PWM1_base、PWM_GEN_3);

PWMOutputState (PWM1_base、PWM_OUT_6_BIT | PWM_OUT_7_BIT、true);

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

    您好 Zahid、

    我看到您在这里想要实现的目标、但不幸的是、死区发生器不能完全满足您的需求。

    您的注释表明您正在尝试将一个16位值放入寄存器中、以尝试使 LED 闪烁明显变化。

    但是、死区发生器只有12位宽、因此您实际上会得到死区信号的变化、但闪烁速率差异很难分辨。  

    这是每个死区加载1的 PWM 输出:

    这是每个死区加载0xFFF 的 PWM 输出:

    我至少可以注意到、后者的闪烁速度比前者快一点、但两者之间存在细微差异。

    因此、它工作正常、但它没有产生足够的影响、无法让您清楚地观察到它。

    此致、

    Ralph Jacobi

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

    我认为该寄存器可能存在这种限制、但我在数据表中找不到它。 非常感谢 Ralph 先生。