PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Probleme in code für Servo...?



loppan
02.07.2007, 20:36
Hallo,
ich habe ein kleines program womit ich ein oder vielleicht 2 servos steuern will. Ich verwende avr-studio4 und es zeigt keine fehler beim compiling the files. Also scheint alles so weit in ordnung zu sein. Nun ist es so das mein Servo (futaba3003) sich kein milimeter bewegt... Ich habe die signal-kabel an PD5 angeslossen. Was habe ich falsch gemacht? Ich habe das code mehrmals controlliert aber sehe nicht was falsch aussiehst. Ist was nicht in ordniúng i main. Kann ich nicht mein servo funktion so verwenden wie ich gemacht habe...?

grüsse
loppan

***CODE********************************

//main.c
#include<avr/io.h>
#include "servo.c"

void initServo(void);

int main(void)
{
initServo();
while(1)
{
}
return 0;
}


//servo.c

#include<avr/io.h>
void initServo(void)
{
//PWM
TCCR1A = TCCR1A|_BV(WGM11); //WaveformGenerationModes
TCCR1B = TCCR1B|_BV(WGM13) |_BV(WGM12);

//prescaler set to be 8
TCCR1B = TCCR1B|_BV(CS11);

//clear OC1A, dH PD5
TCCR1A = TCCR1A|_BV(COM1A1);

//register
ICR1 = 20000; // frekvens=50Hz, T=20ms
OCR1A = 1500; //1,5ms

//OC1A set as output
DDRD = DDRD |_BV(5);
}

*****************************************