Hallo
Ich hätte eine Frage wie schaffe ich es einen Servo der Make HiTec Hs-311 in die Mittelpostition zu bringen.
Ich habe es schon mit Folgendem Code Probiert. Wobei mein Servo auf dem PORT D Pin 3 liegt.
Ist es möglich das Folgender Code mit meinem Atmega8 nicht möglich ist?
Denn code habe ich von https://www.roboternetz.de/wissen/index.php/Servos
Hoffe ihr könnt mir helfen.Code:#define F_CPU 3686400 #include <avr/io.h> #include <avr/delay.h> #include <avr/interrupt.h> #define SERVOPIN 3 #define SERVOPORT PORTD #define DDRSERVO DDRD volatile unsigned char servopos; void servo_init() { TIMSK|=(1<<OCIE2); TCCR2 |= (1<<WGM21) | (1<<CS20); OCR2 = F_CPU/100000; DDRSERVO|=(1<<SERVOPIN); }; ISR(TIMER2_COMP_vect) { static int count; if(count>servopos)SERVOPORT&=~(1<<SERVOPIN); else SERVOPORT|=(1<<SERVOPIN); if(count<2000+servopos)count++; else count=0; }; int main(void) { servo_init(); sei(); servopos = 150; while(1); cli(); return 0; }
lg manhunt







Zitieren
Lesezeichen