Función de retardo en el estudio compositor de códigos

0

Nuevo con Code Composer Studio. Tratando de ejecutar el motor bldc con rm48 cncd. Muchos problemas, uno de ellos es cualquier función de retardo disponible para ccs? Genero señales pwm con un cierto retraso usando inactivo para bucles. Para los bucles no funcionan. ¿Alguna ayuda por favor?

Principal ()

{ // start of while loop

    Set_Duty_Period1.period=500;
    pwmSetSignal(hetRAM1, pwm0, Set_Duty_Period1);
    pwmStart(hetRAM1, pwm0); // pwm 0 is set for PWM_AH


    i=0;
    while(i<4000)
    {
       i++;
    }

    pwmSetSignal(hetRAM1, pwm5, Set_Duty_Period1);
    pwmStart(hetRAM1, pwm5); // pwm 5 is set for PWM_CL


    While(1)
    {

    }



} // termination of main
    
pregunta Sidk

2 respuestas

1

Tu bucle infinito while está al final y vacío. Además, un buen compilador puede tomar su ciclo de retardo while y optimizarlo, ya que no tiene efecto. Compruebe la salida del compilador y asegúrese de que todavía está allí.

Recomiendo encarecidamente que encuentre una MCU que esté diseñada para el control del motor y que tenga hardware PWM integrado.

    
respondido por el user28910
0

hay muchas formas de implementar retrasos en un mcu. sin duda alguna es uno de ellos y es una forma probada.

  

¿Alguna ayuda por favor?

poco, sin que muestres lo que has hecho y con lo que tienes que trabajar.

editar: en respuesta al código que publicaste, te sugiero que leas la hoja de datos del dispositivo y el manual del compilador / biblioteca. basado en el código, está utilizando una biblioteca que parece estar construida para un módulo de hardware pwm en su mcu.

En ese caso, ninguna cantidad de retrasos en el software como usted tuvo código tendrá ningún impacto en la generación de pwm. y ese es el punto de tener un módulo de hardware pwm.

    
respondido por el dannyf

Lea otras preguntas en las etiquetas