So vielleicht?
Code:
// Servoansteuerung2: Wir erzeugen zwei Impulse im Wechsel mit Fahren 22.1.2010 mic
// sleep(1) verzögert ca. 0,1ms, 50 Impulse dauern ca. 1 Sekunde
// Servo an SCL (PC0) (XBUS Pin 10)
#include "RP6RobotBaseLib.h"
uint8_t c; // allgemeine 8-Bit-Variable (ein Char)
int main(void)
{
initRobotBase();
powerON();
DDRC |= SCL;
PORTC &= ~SCL;
while(1)
{
for(c=0; c<50; c++) // 50 Impulse senden, das dauert ca. 1 Sekunde
{
PORTC |= SCL; // Impulsstart
sleep(12); // 1,2ms warten = Servoposition 1
PORTC &= ~SCL; // Impulsende
sleep(190); // 19ms warten
}
move(70, BWD, DIST_MM(150), BLOCKING);
for(c=0; c<50; c++)
{
PORTC |= SCL;
sleep(18); // 1,8ms warten = Servoposition 2
PORTC &= ~SCL;
sleep(190);
}
move(70, FWD, DIST_MM(150), BLOCKING);
}
return(0); // wird nie erreicht
}
Lesezeichen