git.droids-corp.org
/
aversive.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
prog_fuse.sh: reindent file
[aversive.git]
/
projects
/
microb2010
/
cobboard
/
main.h
diff --git
a/projects/microb2010/cobboard/main.h
b/projects/microb2010/cobboard/main.h
index
d50b610
..
80469ea
100755
(executable)
--- a/
projects/microb2010/cobboard/main.h
+++ b/
projects/microb2010/cobboard/main.h
@@
-1,6
+1,6
@@
-/*
+/*
* Copyright Droids Corporation (2009)
* Copyright Droids Corporation (2009)
- *
+ *
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
@@
-19,6
+19,8
@@
*
*/
*
*/
+/* was mechboard in 2009 */
+
#define LED_TOGGLE(port, bit) do { \
if (port & _BV(bit)) \
port &= ~_BV(bit); \
#define LED_TOGGLE(port, bit) do { \
if (port & _BV(bit)) \
port &= ~_BV(bit); \
@@
-30,13
+32,13
@@
#define LED1_OFF() cbi(PORTJ, 2)
#define LED1_TOGGLE() LED_TOGGLE(PORTJ, 2)
#define LED1_OFF() cbi(PORTJ, 2)
#define LED1_TOGGLE() LED_TOGGLE(PORTJ, 2)
-#define LED2_ON() sbi(PORT
L, 7
)
-#define LED2_OFF() cbi(PORT
L, 7
)
-#define LED2_TOGGLE() LED_TOGGLE(PORT
L, 7
)
+#define LED2_ON() sbi(PORT
J, 3
)
+#define LED2_OFF() cbi(PORT
J, 3
)
+#define LED2_TOGGLE() LED_TOGGLE(PORT
J, 3
)
-#define LED3_ON() sbi(PORT
J, 3
)
-#define LED3_OFF() cbi(PORT
J, 3
)
-#define LED3_TOGGLE() LED_TOGGLE(PORT
J, 3
)
+#define LED3_ON() sbi(PORT
L, 7
)
+#define LED3_OFF() cbi(PORT
L, 7
)
+#define LED3_TOGGLE() LED_TOGGLE(PORT
L, 7
)
#define LED4_ON() sbi(PORTL, 6)
#define LED4_OFF() cbi(PORTL, 6)
#define LED4_ON() sbi(PORTL, 6)
#define LED4_OFF() cbi(PORTL, 6)
@@
-46,12
+48,16
@@
#define BRAKE_ON() do { PORTJ |= 0xF0; } while(0)
#define BRAKE_OFF() do { PORTJ &= 0x0F; } while(0)
#define BRAKE_ON() do { PORTJ |= 0xF0; } while(0)
#define BRAKE_OFF() do { PORTJ &= 0x0F; } while(0)
-#define
LEFT_SPICKLE_ENCODER
((void *)0)
-#define
RIGHT_SPICKLE_ENCODER
((void *)1)
+#define
RIGHT_SPICKLE_ENCODER
((void *)0)
+#define
LEFT_SPICKLE_ENCODER
((void *)1)
#define SHOVEL_ENCODER ((void *)2)
#define SHOVEL_ENCODER ((void *)2)
-#define LEFT_SPICKLE_PWM ((void *)&gen.pwm1_4A)
-#define RIGHT_SPICKLE_PWM ((void *)&gen.pwm2_4B)
+#define SERVO_DOOR_PWM ((void *)&gen.servo2)
+#define SERVO_CARRY_L_PWM ((void *)&gen.servo1)
+#define SERVO_CARRY_R_PWM ((void *)&gen.servo3)
+
+#define RIGHT_SPICKLE_PWM ((void *)&gen.pwm1_4A)
+#define LEFT_SPICKLE_PWM ((void *)&gen.pwm2_4B)
#define SHOVEL_PWM ((void *)&gen.pwm3_1A)
/** ERROR NUMS */
#define SHOVEL_PWM ((void *)&gen.pwm3_1A)
/** ERROR NUMS */
@@
-90,7
+96,7
@@
struct genboard {
struct pwm_ng servo2;
struct pwm_ng servo3;
struct pwm_ng servo4;
struct pwm_ng servo2;
struct pwm_ng servo3;
struct pwm_ng servo4;
-
+
/* ax12 interface */
AX12 ax12;
/* ax12 interface */
AX12 ax12;
@@
-102,6
+108,7
@@
struct genboard {
struct cs_block {
uint8_t on;
struct cs_block {
uint8_t on;
+ int32_t prev;
struct cs cs;
struct pid_filter pid;
struct quadramp_filter qr;
struct cs cs;
struct pid_filter pid;
struct quadramp_filter qr;
@@
-114,6
+121,7
@@
struct cobboard {
#define DO_CS 2
#define DO_BD 4
#define DO_POWER 8
#define DO_CS 2
#define DO_BD 4
#define DO_POWER 8
+#define DO_ERRBLOCKING 16
uint8_t flags; /* misc flags */
/* control systems */
uint8_t flags; /* misc flags */
/* control systems */
@@
-125,6
+133,10
@@
struct cobboard {
uint8_t our_color;
volatile uint8_t cob_count;
volatile uint8_t status;
uint8_t our_color;
volatile uint8_t cob_count;
volatile uint8_t status;
+
+ /* synchronized to mainboard */
+ int16_t left_cobroller_speed;
+ int16_t right_cobroller_speed;
};
extern struct genboard gen;
};
extern struct genboard gen;