mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-26 14:13:34 +08:00
mkblctrl: Moved motor data struct into class
This commit is contained in:
@@ -92,8 +92,20 @@
|
|||||||
#define MOTOR_SPINUP_COUNTER 30
|
#define MOTOR_SPINUP_COUNTER 30
|
||||||
#define ESC_UORB_PUBLISH_DELAY 500000
|
#define ESC_UORB_PUBLISH_DELAY 500000
|
||||||
|
|
||||||
|
struct MotorData_t {
|
||||||
|
unsigned int Version; // the version of the BL (0 = old)
|
||||||
|
unsigned int SetPoint; // written by attitude controller
|
||||||
|
unsigned int SetPointLowerBits; // for higher Resolution of new BLs
|
||||||
|
float SetPoint_PX4; // Values from PX4
|
||||||
|
unsigned int State; // 7 bit for I2C error counter, highest bit indicates if motor is present
|
||||||
|
unsigned int ReadMode; // select data to read
|
||||||
|
unsigned short RawPwmValue; // length of PWM pulse
|
||||||
|
// the following bytes must be exactly in that order!
|
||||||
|
unsigned int Current; // in 0.1 A steps, read back from BL
|
||||||
|
unsigned int MaxPWM; // read back from BL is less than 255 if BL is in current limit
|
||||||
|
unsigned int Temperature; // old BL-Ctrl will return a 255 here, the new version the temp. in
|
||||||
|
unsigned int RoundCount;
|
||||||
|
};
|
||||||
|
|
||||||
class MK : public device::I2C
|
class MK : public device::I2C
|
||||||
{
|
{
|
||||||
@@ -154,6 +166,8 @@ private:
|
|||||||
|
|
||||||
actuator_controls_s _controls;
|
actuator_controls_s _controls;
|
||||||
|
|
||||||
|
MotorData_t Motor[MAX_MOTORS];
|
||||||
|
|
||||||
static void task_main_trampoline(int argc, char *argv[]);
|
static void task_main_trampoline(int argc, char *argv[]);
|
||||||
void task_main();
|
void task_main();
|
||||||
|
|
||||||
@@ -195,24 +209,6 @@ const int blctrlAddr_px4[] = { 0, 0, 0, 0, 0, 0, 0, 0};
|
|||||||
|
|
||||||
int addrTranslator[] = {0, 0, 0, 0, 0, 0, 0, 0};
|
int addrTranslator[] = {0, 0, 0, 0, 0, 0, 0, 0};
|
||||||
|
|
||||||
struct MotorData_t {
|
|
||||||
unsigned int Version; // the version of the BL (0 = old)
|
|
||||||
unsigned int SetPoint; // written by attitude controller
|
|
||||||
unsigned int SetPointLowerBits; // for higher Resolution of new BLs
|
|
||||||
float SetPoint_PX4; // Values from PX4
|
|
||||||
unsigned int State; // 7 bit for I2C error counter, highest bit indicates if motor is present
|
|
||||||
unsigned int ReadMode; // select data to read
|
|
||||||
unsigned short RawPwmValue; // length of PWM pulse
|
|
||||||
// the following bytes must be exactly in that order!
|
|
||||||
unsigned int Current; // in 0.1 A steps, read back from BL
|
|
||||||
unsigned int MaxPWM; // read back from BL is less than 255 if BL is in current limit
|
|
||||||
unsigned int Temperature; // old BL-Ctrl will return a 255 here, the new version the temp. in
|
|
||||||
unsigned int RoundCount;
|
|
||||||
};
|
|
||||||
|
|
||||||
MotorData_t Motor[MAX_MOTORS];
|
|
||||||
|
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user