Gast
#51589
Hallo,
ich habe von meinen Bruder ein leicht defektes Multiplex Servo bekomme
(ein Zahnrad ist nicht mehr ganz ok). Und das wollte ich nun Ansteuern.
Leider fährt es nur ganz nach rechts bis zum Anschlag.
Was ist an diesem Code falsch?
Ich habe den Timer so Inhaliziert das er alle 0,1ms ein Timerinterupt
liefert.
SIGNAL(SIG_OUTPUT_COMPARE2) //intruptcpmparematch vom timer 2
{
stimer++;
servo++;
if (servo == 200){ //alle 20ms mache signal
sbi (PORTD, 5); //ausgang setzen
servo = 199; //variable zurücksetzen damit schleife gleich beim
nächsten durchlauf betreten wird
servoi++;
if (servoi == 7){ //impulsbreite in 0,1ms schritten
cbi (PORTD, 5); //wenn impulsbreite erreicht dann kanal
zurücksetzen
servo = 0; //und aus der schleife raus
}
}
}
Danke schonmal.
Gruß
Peter