Paparazzi UAS
v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
|
#include "modules/actuators/actuators_dshot.h"
#include "modules/actuators/esc_dshot.h"
#include "modules/core/abi.h"
#include "mcu_periph/ram_arch.h"
#include "mcu_periph/gpio.h"
#include <BOARD_CONFIG>
#include "modules/datalink/telemetry.h"
#include "modules/energy/electrical.h"
Go to the source code of this file.
Data Structures | |
struct | dshot_private |
Macros | |
#define | _CONCAT_GPIO(num, name) UART ## num ## _GPIO_ ## name |
#define | CONCAT_GPIO(num, name) _CONCAT_GPIO(num, name) |
Functions | |
static void | esc_msg_send (struct transport_tx *trans, struct link_device *dev) |
static void | dshot_init_struct (struct dshot *ds) |
static void | dshot_set_struct (struct dshot *ds, struct dshot_private *dsp, DSHOTDriver *driver, uint32_t channel) |
void | actuators_dshot_arch_init (void) |
Arch dependent init. More... | |
void | actuators_dshot_arch_commit (void) |
Variables | |
struct dshot | actuators_dshot_values [ACTUATORS_DSHOT_NB] |
struct dshot_private | actuators_dshot_private [ACTUATORS_DSHOT_NB] |
struct dshot_private |
Definition at line 40 of file actuators_dshot_arch.c.
Data Fields | ||
---|---|---|
uint32_t | channel | |
DSHOTDriver * | driver |
#define _CONCAT_GPIO | ( | num, | |
name | |||
) | UART ## num ## _GPIO_ ## name |
Definition at line 159 of file actuators_dshot_arch.c.
#define CONCAT_GPIO | ( | num, | |
name | |||
) | _CONCAT_GPIO(num, name) |
Definition at line 160 of file actuators_dshot_arch.c.
void actuators_dshot_arch_commit | ( | void | ) |
Definition at line 300 of file actuators_dshot_arch.c.
References ACT_FEEDBACK_DSHOT_ID, ACTUATORS_DSHOT_NB, actuators_dshot_private, actuators_dshot_values, DSHOT_BIDIR_ERR_CRC, DSHOT_BIDIR_TLM_EDT, DSHOT_SERVO_0, DSHOT_SERVO_0_CHANNEL, DSHOT_SERVO_0_DRIVER, DSHOT_SERVO_1, DSHOT_SERVO_10, DSHOT_SERVO_10_CHANNEL, DSHOT_SERVO_10_DRIVER, DSHOT_SERVO_1_CHANNEL, DSHOT_SERVO_1_DRIVER, DSHOT_SERVO_2, DSHOT_SERVO_2_CHANNEL, DSHOT_SERVO_2_DRIVER, DSHOT_SERVO_3, DSHOT_SERVO_3_CHANNEL, DSHOT_SERVO_3_DRIVER, DSHOT_SERVO_4, DSHOT_SERVO_4_CHANNEL, DSHOT_SERVO_4_DRIVER, DSHOT_SERVO_5, DSHOT_SERVO_5_CHANNEL, DSHOT_SERVO_5_DRIVER, DSHOT_SERVO_7, DSHOT_SERVO_7_CHANNEL, DSHOT_SERVO_7_DRIVER, DSHOT_SERVO_8, DSHOT_SERVO_8_CHANNEL, DSHOT_SERVO_8_DRIVER, DSHOT_SERVO_9, DSHOT_SERVO_9_CHANNEL, DSHOT_SERVO_9_DRIVER, dshotGetTelemetry(), dshotSendFrame(), dshotSetThrottle(), DshotTelemetry::frame, act_feedback_t::idx, act_feedback_t::act_feedback_set_t::rpm, act_feedback_t::rpm, and act_feedback_t::set.
void actuators_dshot_arch_init | ( | void | ) |
Arch dependent init.
Definition at line 162 of file actuators_dshot_arch.c.
References ACTUATORS_DSHOT_NB, actuators_dshot_private, actuators_dshot_values, CONCAT_GPIO, DefaultPeriodic, dshot_init_struct(), DSHOT_SERVO_0, DSHOT_SERVO_0_AF, DSHOT_SERVO_0_CHANNEL, DSHOT_SERVO_0_DRIVER, DSHOT_SERVO_0_GPIO, DSHOT_SERVO_0_PIN, DSHOT_SERVO_1, DSHOT_SERVO_10, DSHOT_SERVO_10_AF, DSHOT_SERVO_10_CHANNEL, DSHOT_SERVO_10_DRIVER, DSHOT_SERVO_10_GPIO, DSHOT_SERVO_10_PIN, DSHOT_SERVO_1_AF, DSHOT_SERVO_1_CHANNEL, DSHOT_SERVO_1_DRIVER, DSHOT_SERVO_1_GPIO, DSHOT_SERVO_1_PIN, DSHOT_SERVO_2, DSHOT_SERVO_2_AF, DSHOT_SERVO_2_CHANNEL, DSHOT_SERVO_2_DRIVER, DSHOT_SERVO_2_GPIO, DSHOT_SERVO_2_PIN, DSHOT_SERVO_3, DSHOT_SERVO_3_AF, DSHOT_SERVO_3_CHANNEL, DSHOT_SERVO_3_DRIVER, DSHOT_SERVO_3_GPIO, DSHOT_SERVO_3_PIN, DSHOT_SERVO_4, DSHOT_SERVO_4_AF, DSHOT_SERVO_4_CHANNEL, DSHOT_SERVO_4_DRIVER, DSHOT_SERVO_4_GPIO, DSHOT_SERVO_4_PIN, DSHOT_SERVO_5, DSHOT_SERVO_5_AF, DSHOT_SERVO_5_CHANNEL, DSHOT_SERVO_5_DRIVER, DSHOT_SERVO_5_GPIO, DSHOT_SERVO_5_PIN, DSHOT_SERVO_7, DSHOT_SERVO_7_AF, DSHOT_SERVO_7_CHANNEL, DSHOT_SERVO_7_DRIVER, DSHOT_SERVO_7_GPIO, DSHOT_SERVO_7_PIN, DSHOT_SERVO_8, DSHOT_SERVO_8_AF, DSHOT_SERVO_8_CHANNEL, DSHOT_SERVO_8_DRIVER, DSHOT_SERVO_8_GPIO, DSHOT_SERVO_8_PIN, DSHOT_SERVO_9, DSHOT_SERVO_9_AF, DSHOT_SERVO_9_CHANNEL, DSHOT_SERVO_9_DRIVER, DSHOT_SERVO_9_GPIO, DSHOT_SERVO_9_PIN, dshot_set_struct(), dshotStart(), esc_msg_send(), FALSE, gpio_setup_pin_af(), gpio_setup_pin_af_pullup(), and register_periodic_telemetry().
|
static |
Definition at line 143 of file actuators_dshot_arch.c.
References dshot::activated, dshot::cmd, dshot::current, dshot::rpm, and dshot::voltage.
Referenced by actuators_dshot_arch_init().
|
static |
Definition at line 152 of file actuators_dshot_arch.c.
References dshot::activated, dshot_private::channel, and dshot_private::driver.
Referenced by actuators_dshot_arch_init().
|
static |
Definition at line 106 of file actuators_dshot_arch.c.
References ACTUATORS_DSHOT_NB, actuators_dshot_private, actuators_dshot_values, dshot_private::channel, dshot::current, dev, dshot_private::driver, DSHOT_BIDIR, DSHOT_BIDIR_ERR_CRC, DSHOT_BIDIR_TLM_EDT, dshotGetTelemetry(), electrical, DshotTelemetry::frame, dshot::rpm, rpm, dshot::voltage, and Electrical::vsupply.
Referenced by actuators_dshot_arch_init().
struct dshot_private actuators_dshot_private[ACTUATORS_DSHOT_NB] |
Definition at line 1 of file actuators_dshot_arch.c.
Referenced by actuators_dshot_arch_commit(), actuators_dshot_arch_init(), and esc_msg_send().
struct dshot actuators_dshot_values[ACTUATORS_DSHOT_NB] |
Definition at line 1 of file actuators_dshot_arch.c.
Referenced by actuators_dshot_arch_commit(), actuators_dshot_arch_init(), and esc_msg_send().