Ich hab mir gestern ein paar Billig-Servos vom C geholt,
und mit dem Code versucht:


Code:
   
#include <avr/io.h>
#define F_CPU 2E6
#include <util/delay.h>


int main()
{
    DDRB=0xFF;
    DDRA=0b00000001;
    while(1)
    {
        PORTA=0xFE;
        if(!(PINA & (1<<PA3)))
        {
            PORTA |= (1<<PA0);
            _delay_us(1000);
            PORTA &= (0<<PA0);
            _delay_us(20000);
            }

        if(!(PINA & (1<<PA4)))
        {
            PORTA |= (1<<PA0);
            _delay_us(2000);
            PORTA &= (0<<PA0);
            _delay_us(20000);
            }
        }
    }
Leider macht der Servo garnichts...
ich habe gelb und schwarz (aussen) für + und Masse angeschlossen, rot (Mitte) an die Steuerung,
mit gelb als Steuerung und rot als + hab ichs auch schon probiert, geht nicht...

Ich habe hier 1ms für Rückwärts, 2ms für Vorwärts genommen, mit je 20ms Pause.

Bitte um Hilfe!

mfg michi