Absender: Carsten Giesen
Datum: Sa, 29.04.2006 23:28:36
Hallo Zusammen, Ich spiele gerade ein wenig mit dem Servo rum. Neben rechst und links Anschlag wollte ich jetzt auf die PLAY Taste die Mittel-Stellung legen: { RC5_CODE_PLAY, rc5_bot_servo, { SERVO1, SERVO_MIDDLE } }, Das gibt aber folgenden Fehler: Building file: ../rc5.c Invoking: GCC C Compiler avr-gcc -DMCU -ID:\c't\Eclipse\ct-Bot -ID:\c't\Eclipse\ct-Bot/include -ID:\WinAVR\avr\include -O0 -Os -g3 -Wall -c -fmessage-length=0 -mmcu=atmega32 -Wstrict-prototypes -orc5.o ../rc5.c ../rc5.c:144: error: `SERVO' undeclared here (not in a function) ../rc5.c:144: error: `LEFT' undeclared here (not in a function) ../rc5.c:144: error: initializer element is not constant ../rc5.c:144: error: (near initialization for `gRemCtrlAction[18].par.value2') ../rc5.c:144: error: initializer element is not constant ../rc5.c:144: error: (near initialization for `gRemCtrlAction[18].par') ../rc5.c:144: error: initializer element is not constant ../rc5.c:144: error: (near initialization for `gRemCtrlAction[18]') ../rc5.c:149: error: initializer element is not constant ../rc5.c:149: error: (near initialization for `gRemCtrlAction[19].par') ../rc5.c:149: error: initializer element is not constant ../rc5.c:149: error: (near initialization for `gRemCtrlAction[19]') ../rc5.c:150: error: initializer element is not constant ../rc5.c:150: error: (near initialization for `gRemCtrlAction[20].par') ../rc5.c:150: error: initializer element is not constant ../rc5.c:150: error: (near initialization for `gRemCtrlAction[20]') ../rc5.c:151: error: initializer element is not constant ../rc5.c:151: error: (near initialization for `gRemCtrlAction[21].par') ../rc5.c:151: error: initializer element is not constant ../rc5.c:151: error: (near initialization for `gRemCtrlAction[21]') ../rc5.c:152: error: initializer element is not constant ../rc5.c:152: error: (near initialization for `gRemCtrlAction[22].par') ../rc5.c:152: error: initializer element is not constant ../rc5.c:152: error: (near initialization for `gRemCtrlAction[22]') ../rc5.c:153: error: initializer element is not constant ../rc5.c:153: error: (near initialization for `gRemCtrlAction[23].par') ../rc5.c:153: error: initializer element is not constant ../rc5.c:153: error: (near initialization for `gRemCtrlAction[23]') make: *** [rc5.o] Error 1 Das klappt dagegen: { RC5_CODE_PLAY, rc5_bot_servo, { SERVO1, 6 } }, #define SERVO_LEFT 8 /*!< Linker Anschlag des Servos */ #define SERVO_RIGHT 20 /*!< Linker Anschlag des Servos */ Aber diese Zeile ist auch nicht ganz richtig ;) #define SERVO_MIDDLE ((SERVO_RIGHT- SERVO-LEFT)/2) /*!< Mittelstellung des Servos */ Ergebniss ist 6 bei meinen Werten, es fehlt nämlich ein +SERVO_LEFT damit ich wirklich die Mitte habe. Was aber nicht hilft, da SERVO_MIDDLE ja nicht genommen wird. Ich kann aber diese Zeile in #define SERVO_MIDDLE 12 /*!< Mittelstellung des Servos */ Ändern, dann klapps auch. Also muss die Formel im Weg sein! Gruß Carsten