fixedwing: more cleaning in main

* removed obsolete/unused: fatal_error_nb, ac_ident and INIT_MSG_NB
* moved rc_settings_mode, slider_1_val and slider_2_val to rc_settings
* cosmetics
This commit is contained in:
Felix Ruess
2012-01-31 21:54:46 +01:00
parent c62d4dca39
commit 2ca03adb79
5 changed files with 44 additions and 36 deletions
@@ -96,7 +96,7 @@ extern uint8_t telemetry_mode_Ap_DefaultChannel;
DOWNLINK_SEND_ATTITUDE(_trans, _dev, &estimator_phi, &estimator_psi, &estimator_theta); \
})
#define PERIODIC_SEND_PPRZ_MODE(_trans, _dev) DOWNLINK_SEND_PPRZ_MODE(_trans, _dev, &pprz_mode, &v_ctl_mode, &lateral_mode, &horizontal_mode, &rc_settings_mode, &mcu1_status);
#define PERIODIC_SEND_DESIRED(_trans, _dev) DOWNLINK_SEND_DESIRED(_trans, _dev, &h_ctl_roll_setpoint, &h_ctl_pitch_loop_setpoint, &h_ctl_course_setpoint, &desired_x, &desired_y, &v_ctl_altitude_setpoint, &v_ctl_climb_setpoint);
#if USE_INFRARED
@@ -123,9 +123,15 @@ extern uint8_t telemetry_mode_Ap_DefaultChannel;
DownlinkSendWp(_trans, _dev, i); \
}
#ifdef RADIO_CONTROL_SETTINGS
#if defined RADIO_CALIB && defined RADIO_CONTROL_SETTINGS
#include "rc_settings.h"
#define PERIODIC_SEND_PPRZ_MODE(_trans, _dev) DOWNLINK_SEND_PPRZ_MODE(_trans, _dev, &pprz_mode, &v_ctl_mode, &lateral_mode, &horizontal_mode, &rc_settings_mode, &mcu1_status);
#define PERIODIC_SEND_SETTINGS(_trans, _dev) if (!RcSettingsOff()) DOWNLINK_SEND_SETTINGS(_trans, _dev, &slider_1_val, &slider_2_val);
#else
#define PERIODIC_SEND_PPRZ_MODE(_trans, _dev) { \
uint8_t rc_settings_mode_none = 0; \
DOWNLINK_SEND_PPRZ_MODE(_trans, _dev, &pprz_mode, &v_ctl_mode, &lateral_mode, &horizontal_mode, &rc_settings_mode_none, &mcu1_status); \
}
#define PERIODIC_SEND_SETTINGS(_trans, _dev) {}
#endif
@@ -67,16 +67,12 @@ extern bool_t kill_throttle;
#define FLOAT_OF_PPRZ(pprz, center, travel) ((float)pprz / (float)MAX_PPRZ * travel + center)
extern uint8_t fatal_error_nb;
#define THROTTLE_THRESHOLD_TAKEOFF (pprz_t)(MAX_PPRZ * 0.9)
extern uint8_t lateral_mode;
extern uint8_t vsupply;
extern float energy;
extern float slider_1_val, slider_2_val;
extern bool_t launch;
extern uint8_t light_mode;
@@ -91,8 +87,6 @@ extern bool_t sum_err_reset;
(_mode != new_mode ? _mode = new_mode, TRUE : FALSE); \
})
void periodic_task( void );
//void telecommand_task(void);
#ifdef RADIO_CONTROL
#include "subsystems/radio_control.h"
@@ -117,10 +111,4 @@ extern bool_t power_switch;
}
/* For backward compatibility with old airframe files */
#include "generated/airframe.h"
#ifndef CONTROL_RATE
#define CONTROL_RATE 20
#endif
#endif /* AUTOPILOT_H */
+22 -20
View File
@@ -98,17 +98,9 @@ static inline void on_gps_solution( void );
#endif
#define LOW_BATTERY_DECIVOLT (CATASTROPHIC_BAT_LEVEL*10)
/** FIXME: should be in rc_settings but required by telemetry (ap_downlink.h)*/
uint8_t rc_settings_mode = 0;
/** Define minimal speed for takeoff in m/s */
#define MIN_SPEED_FOR_TAKEOFF 5.
bool_t power_switch;
uint8_t fatal_error_nb = 0;
// what version is this ????
static const uint16_t version = 1;
uint8_t pprz_mode = PPRZ_MODE_AUTO2;
@@ -122,14 +114,23 @@ static uint8_t mcu1_ppm_cpt;
bool_t kill_throttle = FALSE;
float slider_1_val, slider_2_val;
bool_t launch = FALSE;
uint8_t vsupply; // deciVolt
/** Supply voltage in deciVolt.
* This the ap copy of the measurement from fbw
*/
uint8_t vsupply;
/** Supply current in milliAmpere.
* This the ap copy of the measurement from fbw
*/
static int32_t current; // milliAmpere
float energy; // Fuel consumption (mAh)
/** Fuel consumption (mAh)
* TODO: move to electrical subsystem
*/
float energy;
bool_t gps_lost = FALSE;
@@ -381,11 +382,6 @@ static inline void telecommand_task( void ) {
/**************************** Periodic tasks ***********************************/
/** Define number of message at initialisation */
#define INIT_MSG_NB 2
uint8_t ac_ident = AC_ID;
/**
* Send a series of initialisation messages followed by a stream of periodic ones.
* Called at 60Hz.
@@ -535,6 +531,9 @@ void sensors_task( void ) {
#endif // USE_IMU
}
/** Maximum time allowed for low battery level before going into kill mode */
#define LOW_BATTERY_DELAY 5
@@ -543,6 +542,9 @@ void sensors_task( void ) {
#define KILL_MODE_DISTANCE (1.5*MAX_DIST_FROM_HOME)
#endif
/** Define minimal speed for takeoff in m/s */
#define MIN_SPEED_FOR_TAKEOFF 5.
/** monitor stuff run at 1Hz */
void monitor_task( void ) {
if (estimator_flight_time)
@@ -552,7 +554,7 @@ void monitor_task( void ) {
#endif
static uint8_t t = 0;
if (vsupply < LOW_BATTERY_DECIVOLT)
if (vsupply < CATASTROPHIC_BAT_LEVEL*10)
t++;
else
t = 0;
+2
View File
@@ -34,6 +34,8 @@
#include "inter_mcu.h"
#include "firmwares/fixedwing/stabilization/stabilization_attitude.h"
uint8_t rc_settings_mode = 0;
float slider_1_val, slider_2_val;
#define ParamValInt16(param_init_val, param_travel, cur_pulse, init_pulse) \
(param_init_val + (int16_t)(((float)(cur_pulse - init_pulse)) * param_travel / (float)MAX_PPRZ))
+12 -2
View File
@@ -23,8 +23,9 @@
*/
/** \file rc_settings.h
* \brief Variable setting though the radio control
/**
* @file rc_settings.h
* Variable setting though the radio control
*
* The 'rc_control' section of a XML flight plan allows the user to change the
* value of an autopilot internal variable through the rc transmitter.
@@ -33,6 +34,7 @@
*/
#ifndef RC_SETTINGS_H
#define RC_SETTINGS_H
#if defined RADIO_CALIB && defined RADIO_CONTROL_SETTINGS
@@ -43,8 +45,16 @@
#define RC_SETTINGS_MODE_DOWN 1
#define RC_SETTINGS_MODE_UP 2
/** rc settings mode
* can be either
* - #RC_SETTINGS_MODE_NONE
* - #RC_SETTINGS_MODE_DOWN
* - #RC_SETTINGS_MODE_UP
*/
extern uint8_t rc_settings_mode;
extern float slider_1_val, slider_2_val;
void rc_settings(bool_t mode_changed);
#define RcSettingsOff() (rc_settings_mode==RC_SETTINGS_MODE_NONE)