#define ROBOT_HALF_LENGTH_REAR 120
#define ROBOT_WIDTH 320
+#ifdef HOST_VERSION
+#define ROBOT_ANGLE_FRONT 0.
+#else
+#define ROBOT_ANGLE_FRONT 0.75 // 0.27
+#endif
+
/* it is a 1024 imps -> 4096 because we see 1/4 period
* and diameter: 55mm -> perimeter 134mm
* dist_imp_mm = 4096/134 x 10 -> 304 */
/* increase it to go further */
-#define IMP_ENCODERS 1024
+#define IMP_ENCODERS 1000
#define WHEEL_DIAMETER_MM 42.9
#define WHEEL_PERIM_MM (WHEEL_DIAMETER_MM * M_PI)
#define IMP_COEF 10.
#define BEACON_PRIO 15
#define EEPROM_TIME_PRIO 10
-#define CS_PERIOD 5000L /* in microsecond */
+#define CS_PERIOD ((5000L/SCHEDULER_UNIT)*SCHEDULER_UNIT) /* in microsecond */
#define CS_HZ (1000000. / CS_PERIOD)
#define NB_LOGS 4
uint8_t ball_count;
uint8_t lcob;
uint8_t rcob;
-};
-
-/* state of beaconboard, sync'd through uart */
-struct beaconboard {
- int16_t oppx;
- int16_t oppy;
- int16_t oppa;
- int16_t oppd;
- uint16_t posx;
- uint16_t posy;
- uint16_t posa; /* between 0 and 3600 */
+ int16_t opponent_x;
+ int16_t opponent_y;
+ int16_t opponent_a;
+ int16_t opponent_d;
};
extern struct genboard gen;
extern struct mainboard mainboard;
extern volatile struct cobboard cobboard;
extern volatile struct ballboard ballboard;
-extern volatile struct beaconboard beaconboard;
/* start the bootloader */
void bootloader(void);