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.

[参考译文] MSP430F5172:MSP430f5172

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1033475/msp430f5172-msp430f5172

器件型号:MSP430F5172

您好!  

我使用 MSP430F5172来运行降压转换器。 我希望能够将占空比设置为零以关闭转换器。 我最初遇到了使用模式5 (复位模式)将占空比归零的问题。  

但是 、使用输出模式5将周期设置为零并将占空比设置为零有助于将 PWM 信号设置为零、但我仍然可以看到转换中存在一些毛刺脉冲。 当 PWM 信号以零以外的占空比运行时,它似乎继续输出它的最后一个值。  

我是否使用正确的方法将两个占空比都设置为零?

是否有参考代码或工作模式、以确保 高侧和低侧 FET 在占空比为零时始终处于关断状态?

void main()

//主代码中的 while 循环

while (1){
D_buckH=152;
D_buckL=153;

SetPWM (T_BUCK、T_BOOST);
SetDuty_Buck (D_buckH、D_buckL);
I = 100000;//延迟
执行(i -);
while (i!= 0);

SetPWM (0、T_BOOST);
OffBuck (0、0);
I = 100000;//延迟
执行(i -);
while (i!= 0);

__DELAY_CYCLES (10);//序列转换之间的延迟

void OffBuck (unsigned int DH、unsigned int DL){

TD0CCTL1 |= OUTMOD_5 + CLLD_2;// CCR1切换/复位
TD0CCR1 = DH;// CCR1 PWM 占空比为1000/2000 = 50%
TD0CCTL2 |= OUTMOD_5 + CLLD_2;// CCR2切换/设置
TD0CCR2 = DL;// CCR2 PWM 占空比为500/2000 = 25%
TD1CTL0 |= MC_3 + TDCLR;//up/down 模式、清除 TDR

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

    TD0CCTL1 |= OUTMOD_5 + CLLD_2;// CCR1切换/复位

    SetPWM 如何设置 OUTMOD? 这"|="可能不符合您的期望。 请尝试:

    >TD0CCTL1  = OUTMOD_5 + CLLD_2;// CCR1切换/复位

    ----

    如果要立即停止 PWM、请尝试使用:

    >TD0CCTL1 = OUTMOD_0 |(0*OUT);  //立即保持低电平