doolitle15
13.09.2007, 17:12
Hallo !
Ich will 2 getriebe motoren mit einem PIC 16F877 ansteuern(Drehrichtung u. Drehzahl)!
PIC --> L293D --> 2 Getriebemotoren
ich schließe die 2 PWM ausgänge an die ENABLE PORTS vom L293D an um die drehzahlen der Motoren zu steuern und die 4 Ports IN1-IN4 vom L293D schließe ich an irgendwelchen Ports am PIC an!!
ich habe folgendes problem:
ich habe in einem Beitrag gelesen dass man die pWM frequenz nicht zu hoch einstellen darf sonst wird sich niemals einer der motoren drehen!
leider finde ich diesen beitrag nicht mehr!
ich habe jetzt ein c programm geschrieben und weiß aber nicht wie diese pwm frequenz umstellen kann !!
kann mir das jemand genauer erklären was ich da genau machen muss??
wie weiß ich im c code welche pwm frequenz eingestellt ist und wo muss dann die frequenz ändern??
c code:
#include <16F877.h>
#use delay (clock=4000000)
#use RS232(baud=9600,xmit=PIN_C6,rcv=PIN_C7)
#fuses XT, NOWDT, NOPROTECT, NOLVP
#include <stdlib.h>
void main (void)
{
int8 duty1, duty2;
char taste;
setup_ccp1(CCP_PWM); //setup capture unit 1 to
setup_ccp2(CCP_PWM); //setup capture unit 1 to
setup_timer_2(T2_DIV_BY_1,100,1);//setup period timer2
set_pwm1_duty(0);
set_pwm2_duty(0);
while(true)
{
duty1=48;
duty2=30;
set_pwm1_duty(duty1);
set_pwm2_duty(duty2);
}
}
ich danke schon im Voraus ich hoffe mir kann jemand weiter helfen!!!
mfg doolitle
Ich will 2 getriebe motoren mit einem PIC 16F877 ansteuern(Drehrichtung u. Drehzahl)!
PIC --> L293D --> 2 Getriebemotoren
ich schließe die 2 PWM ausgänge an die ENABLE PORTS vom L293D an um die drehzahlen der Motoren zu steuern und die 4 Ports IN1-IN4 vom L293D schließe ich an irgendwelchen Ports am PIC an!!
ich habe folgendes problem:
ich habe in einem Beitrag gelesen dass man die pWM frequenz nicht zu hoch einstellen darf sonst wird sich niemals einer der motoren drehen!
leider finde ich diesen beitrag nicht mehr!
ich habe jetzt ein c programm geschrieben und weiß aber nicht wie diese pwm frequenz umstellen kann !!
kann mir das jemand genauer erklären was ich da genau machen muss??
wie weiß ich im c code welche pwm frequenz eingestellt ist und wo muss dann die frequenz ändern??
c code:
#include <16F877.h>
#use delay (clock=4000000)
#use RS232(baud=9600,xmit=PIN_C6,rcv=PIN_C7)
#fuses XT, NOWDT, NOPROTECT, NOLVP
#include <stdlib.h>
void main (void)
{
int8 duty1, duty2;
char taste;
setup_ccp1(CCP_PWM); //setup capture unit 1 to
setup_ccp2(CCP_PWM); //setup capture unit 1 to
setup_timer_2(T2_DIV_BY_1,100,1);//setup period timer2
set_pwm1_duty(0);
set_pwm2_duty(0);
while(true)
{
duty1=48;
duty2=30;
set_pwm1_duty(duty1);
set_pwm2_duty(duty2);
}
}
ich danke schon im Voraus ich hoffe mir kann jemand weiter helfen!!!
mfg doolitle