diff options
author | Lorenz Meier <lm@inf.ethz.ch> | 2013-01-06 11:25:17 +0100 |
---|---|---|
committer | Lorenz Meier <lm@inf.ethz.ch> | 2013-01-06 11:25:17 +0100 |
commit | d3fd3d8219179251d10655944992da75abb8932b (patch) | |
tree | 25782ae747ddaacf74d610c9b57627ae46e07f7b /apps/px4io/px4io.h | |
parent | 0ef1d6d7529e9c84969ed6f512f733772bba34a0 (diff) | |
parent | 8eb8909a3c24c6028e4945e4a057d6d2f27f3d04 (diff) | |
download | px4-firmware-d3fd3d8219179251d10655944992da75abb8932b.tar.gz px4-firmware-d3fd3d8219179251d10655944992da75abb8932b.tar.bz2 px4-firmware-d3fd3d8219179251d10655944992da75abb8932b.zip |
Merged, compiling
Diffstat (limited to 'apps/px4io/px4io.h')
-rw-r--r-- | apps/px4io/px4io.h | 34 |
1 files changed, 29 insertions, 5 deletions
diff --git a/apps/px4io/px4io.h b/apps/px4io/px4io.h index 782d9bfeb..157135854 100644 --- a/apps/px4io/px4io.h +++ b/apps/px4io/px4io.h @@ -139,13 +139,27 @@ struct sys_state_s { * If true, IO performs an on-board manual override with the RC channel values */ bool manual_override_ok; + + /* + * Measured battery voltage in mV + */ + uint16_t battery_mv; + + /* + * ADC IN5 measurement + */ + uint16_t adc_in5; + + /* + * Power supply overcurrent status bits. + */ + uint8_t overcurrent; + }; extern struct sys_state_s system_state; -extern int frame_rx; -extern int frame_bad; - +#if 0 /* * Software countdown timers. * @@ -157,6 +171,7 @@ extern int frame_bad; #define TIMER_SANITY 7 #define TIMER_NUM_TIMERS 8 extern volatile int timers[TIMER_NUM_TIMERS]; +#endif /* * GPIO handling. @@ -171,10 +186,13 @@ extern volatile int timers[TIMER_NUM_TIMERS]; #define POWER_RELAY1(_s) stm32_gpiowrite(GPIO_RELAY1_EN, (_s)) #define POWER_RELAY2(_s) stm32_gpiowrite(GPIO_RELAY2_EN, (_s)) -#define OVERCURRENT_ACC stm32_gpioread(GPIO_ACC_OC_DETECT) -#define OVERCURRENT_SERVO stm32_gpioread(GPIO_SERVO_OC_DETECT +#define OVERCURRENT_ACC (!stm32_gpioread(GPIO_ACC_OC_DETECT)) +#define OVERCURRENT_SERVO (!stm32_gpioread(GPIO_SERVO_OC_DETECT)) #define BUTTON_SAFETY stm32_gpioread(GPIO_BTN_SAFETY) +#define ADC_VBATT 4 +#define ADC_IN5 5 + /* * Mixer */ @@ -192,6 +210,12 @@ extern void safety_init(void); extern void comms_main(void) __attribute__((noreturn)); /* + * Sensors/misc inputs + */ +extern int adc_init(void); +extern uint16_t adc_measure(unsigned channel); + +/* * R/C receiver handling. */ extern void controls_main(void); |