44 #include <px4_platform_common/px4_config.h> 45 #include <px4_platform_common/defines.h> 46 #include <px4_platform_common/module.h> 47 #include <px4_platform_common/module_params.h> 48 #include <px4_platform_common/posix.h> 49 #include <px4_platform_common/px4_work_queue/WorkItem.hpp> 72 class RCUpdate :
public ModuleBase<RCUpdate>,
public ModuleParams,
public px4::WorkItem
79 static int task_spawn(
int argc,
char *argv[]);
82 static int custom_command(
int argc,
char *argv[]);
85 static int print_usage(
const char *reason =
nullptr);
98 void rc_parameter_map_poll(
bool forced =
false);
103 void update_rc_functions();
108 void parameters_updated();
113 float get_rc_value(uint8_t func,
float min_value,
float max_value);
118 switch_pos_t get_rc_sw3pos_position(uint8_t func,
float on_th,
bool on_inv,
float mid_th,
bool mid_inv);
119 switch_pos_t get_rc_sw2pos_position(uint8_t func,
float on_th,
bool on_inv);
127 void set_params_from_rc();
147 float _param_rc_values[rc_parameter_map_s::RC_PARAM_MAP_NCHAN] {};
struct uart_esc::@19 _parameter_handles
math::LowPassFilter2p _filter_roll
filters for the main 4 stick inputs
static void print_usage()
High-resolution timer with callouts and timekeeping.
math::LowPassFilter2p _filter_throttle
#define ORB_ID(_name)
Generates a pointer to the uORB metadata structure for a given topic.
void init()
Activates/configures the hardware registers.
__BEGIN_DECLS typedef uint64_t hrt_abstime
Absolute time, in microsecond units.
struct uart_esc::@18 _parameters
math::LowPassFilter2p _filter_pitch
perf_counter_t _loop_perf
loop performance counter
math::LowPassFilter2p _filter_yaw
we want smooth setpoints as inputs to the controllers
11 bits per channel * 16 channels = 22 bytes.
Performance measuring tools.