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
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;
}
Hoffe ihr könnt mir helfen.

lg manhunt