hier sollte es natürlich MAXCHECK heißen.Hifly hat geschrieben:größer als MAXTHROTTLE

Habe doch noch hier den Code gefunden:
Code: Alles auswählen
/*******************************/
/****CONFIGURABLE PARAMETERS****/
/*******************************/
...
#define MINCHECK 1100 //Zeile muss von unten nach oben gezogen werden
#define MAXCHECK 1900 //Zeile muss nach unten nach oben gezogen werden
// if ESC needs to be calibrated by fullthrottle, wait for two beeps, low throttle
#define ESC_STICK_CALIBRATING
...
...
...
void initializeMotors()
{
#ifdef ESC_STICK_CALIBRATING
for(uint8_t i=0;i<NUMBER_MOTOR;i++)
pinMode(PWM_PIN[i],OUTPUT);
for(int i=0;i<4;i++) //computeRC will take the average of last four readings, initial value is set to 1500
computeRC();
if(rcData[THROTTLE] > MAXCHECK)
{
writeAllMotors(2000);
delay(300);
while(rcData[THROTTLE] > MAXCHECK)
computeRC();
writeAllMotors(1000);
delay(300);
}
else
{
writeAllMotors(1000);
delay(300);
}
#else
for(uint8_t i=0;i<NUMBER_MOTOR;i++)
pinMode(PWM_PIN[i],OUTPUT);
writeAllMotors(2000); //max motor command is maintained for 100ms at the initialization
delay(100); //it's a way to calibrate the ESCs
writeAllMotors(1000);
delay(300);
#endif
}
...
...
void setup() {
Serial.begin(SERIAL_COM_SPEED);
pinMode (LEDPIN, OUTPUT);
pinMode (POWERPIN, OUTPUT);
pinMode (BUZZERPIN, OUTPUT);
pinMode (A0, OUTPUT);
PORTB &= ~(1<<4);//switch OFF WMP, digital PIN 12
configureReceiver();
delay(500);
initializeMotors();
....
...