TODOPIC
Microcontroladores PIC => Primeros pasos - Iniciación a los microcontroladores => Mensaje iniciado por: uzielero en 01 de Mayo de 2009, 09:34:05
-
Hola, soy nuevo con esto y ando un poco perdido...
Quiero controlar la velocidad de dos motores de cc con PWM. Utilizo un Atmega128 y un LD293. He encontrado información en internet y en este foro, pero no me ha servido para conseguirlo. Tengo una serie de preguntas que quizás son un poco básicas, pero que me gustaria resolver:
¿Qué modo de PWM debo utilizar, en qué se diferencian?
¿Qué frecuencia usaré para los motores?
Les adjunto mi código, a ver si me podeis ayudar (el código es solo para un motor, de momento, y este se mueve a su velocidad normal)
void motor()
{
DDRB |= _BV(0);
DDRB |= _BV(2);
PORTB |= _BV(0); //activacion del enable
//Fast PWM, preescaler 8
TCCR1A = _BV(WGM11) | _BV(COM1A1);
TCCR1B = _BV(WGM13) | _BV(WGM12) | _BV(CS11) ;
ICR1 = 200;
PORTB |= _BV(2);
OCR1A = 150;
}
Agradezco mucho vuestra ayuda, un saludo!
-
Porque dices que modo de PWM usar? PWM es modulación por ancho de pulsos, caracterizada por amplitud constante y frecuencia constante. Lo que varia es el ciclo de trabajo de la señal, ósea el ancho relativo de su parte positiva en relación con el período y con esto se controlar la cantidad de energía que se envía al motor.
-
Hola Suky, gracias por contestar!
Me refiero a los tipos de PWM que se pueden utilizar en los microcontroladores AVR, es decir:
-PWM rápido (FastPWM).
-PWM con fase correcta (PhaseCorrectPWM).
-PWM con fase y frecuencia correcta (Phaseand FrequencyCorrectPWM).
Saludos!