TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: GeGe en 08 de Junio de 2006, 04:15:34

Título: PWM com C18
Publicado por: GeGe en 08 de Junio de 2006, 04:15:34
Boas:
Quero fazer um pwm de 20ms (periodo), em um pic18f8722  com um cristal de 24MHZ. Terá um duclycle de 1,5ms. A seguir escrevo o código e gostava de ler comentários a cerca do mesmo, Obrigado.  :mrgreen:

void PWM () // rutina para ciclo de 20ms para PWM dos servos
{
 int CicloPwm = 1;
 PORTGbits.RG3 = 0 ; // reset no pwm
 PORTGbits.RG4 = 0 ;
 OpenTimer2 (TIMER_INT_OFF & T2_PS_1_16);
 while (CicloPwm <=29) //conta 29 vezes até 255
  {
   OpenPWM4 (0xFF);
   OpenPWM5 (0xFF);
   CicloPwm += 1;
  }
 OpenPWM4 (0xB3); //conta mais 179 vezes para fazer 20ms de impulso
 OpenPWM5 (0xB3);

  SetDCPWM4(0x230); // duclycle 1,5ms
  SetDCPWM5(0x230);
   
  ClosePWM4;
  ClosePWM5;
}


FUNCIONA  :-/ ???