mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-04-14 10:07:39 +08:00
bmi055 name separate accel and gyro perf counters properly
This commit is contained in:
parent
b6399dbdf0
commit
cd07e756b9
@ -63,12 +63,6 @@ protected:
|
||||
|
||||
unsigned _dlpf_freq;
|
||||
|
||||
perf_counter_t _sample_perf;
|
||||
perf_counter_t _bad_transfers;
|
||||
perf_counter_t _bad_registers;
|
||||
perf_counter_t _reset_retries;
|
||||
perf_counter_t _duplicates;
|
||||
|
||||
uint8_t _register_wait;
|
||||
uint64_t _reset_wait;
|
||||
|
||||
@ -102,7 +96,7 @@ public:
|
||||
BMI055(const char *name, const char *devname, int bus, uint32_t device, enum spi_mode_e mode, uint32_t frequency,
|
||||
enum Rotation rotation);
|
||||
|
||||
virtual ~BMI055();
|
||||
virtual ~BMI055() = default;
|
||||
|
||||
|
||||
};
|
||||
|
||||
@ -48,6 +48,12 @@ const uint8_t BMI055_accel::_checked_registers[BMI055_ACCEL_NUM_CHECKED_REGISTER
|
||||
|
||||
BMI055_accel::BMI055_accel(int bus, const char *path_accel, uint32_t device, enum Rotation rotation) :
|
||||
BMI055("BMI055_ACCEL", path_accel, bus, device, SPIDEV_MODE3, BMI055_BUS_SPEED, rotation),
|
||||
_sample_perf(perf_alloc(PC_ELAPSED, "bmi055_accel_read")),
|
||||
_bad_transfers(perf_alloc(PC_COUNT, "bmi055_accel_bad_transfers")),
|
||||
_bad_registers(perf_alloc(PC_COUNT, "bmi055_accel_bad_registers")),
|
||||
_reset_retries(perf_alloc(PC_COUNT, "bmi055_accel_reset_retries")),
|
||||
_duplicates(perf_alloc(PC_COUNT, "bmi055_accel_duplicates")),
|
||||
_accel_reads(perf_alloc(PC_COUNT, "bmi055_accel_read")),
|
||||
_accel_reports(nullptr),
|
||||
_accel_scale{},
|
||||
_accel_range_scale(0.0f),
|
||||
@ -56,7 +62,6 @@ BMI055_accel::BMI055_accel(int bus, const char *path_accel, uint32_t device, enu
|
||||
_accel_orb_class_instance(-1),
|
||||
_accel_class_instance(-1),
|
||||
_accel_sample_rate(BMI055_ACCEL_DEFAULT_RATE),
|
||||
_accel_reads(perf_alloc(PC_COUNT, "bmi055_accel_read")),
|
||||
_accel_filter_x(BMI055_ACCEL_DEFAULT_RATE, BMI055_ACCEL_DEFAULT_DRIVER_FILTER_FREQ),
|
||||
_accel_filter_y(BMI055_ACCEL_DEFAULT_RATE, BMI055_ACCEL_DEFAULT_DRIVER_FILTER_FREQ),
|
||||
_accel_filter_z(BMI055_ACCEL_DEFAULT_RATE, BMI055_ACCEL_DEFAULT_DRIVER_FILTER_FREQ),
|
||||
@ -92,6 +97,11 @@ BMI055_accel::~BMI055_accel()
|
||||
}
|
||||
|
||||
/* delete the perf counter */
|
||||
perf_free(_sample_perf);
|
||||
perf_free(_bad_transfers);
|
||||
perf_free(_bad_registers);
|
||||
perf_free(_reset_retries);
|
||||
perf_free(_duplicates);
|
||||
perf_free(_accel_reads);
|
||||
}
|
||||
|
||||
|
||||
@ -175,6 +175,13 @@ protected:
|
||||
|
||||
private:
|
||||
|
||||
perf_counter_t _sample_perf;
|
||||
perf_counter_t _bad_transfers;
|
||||
perf_counter_t _bad_registers;
|
||||
perf_counter_t _reset_retries;
|
||||
perf_counter_t _duplicates;
|
||||
perf_counter_t _accel_reads;
|
||||
|
||||
ringbuffer::RingBuffer *_accel_reports;
|
||||
|
||||
struct accel_calibration_s _accel_scale;
|
||||
@ -186,7 +193,6 @@ private:
|
||||
int _accel_class_instance;
|
||||
|
||||
float _accel_sample_rate;
|
||||
perf_counter_t _accel_reads;
|
||||
|
||||
math::LowPassFilter2p _accel_filter_x;
|
||||
math::LowPassFilter2p _accel_filter_y;
|
||||
|
||||
@ -49,6 +49,12 @@ const uint8_t BMI055_gyro::_checked_registers[BMI055_GYRO_NUM_CHECKED_REGISTERS]
|
||||
|
||||
BMI055_gyro::BMI055_gyro(int bus, const char *path_gyro, uint32_t device, enum Rotation rotation) :
|
||||
BMI055("BMI055_GYRO", path_gyro, bus, device, SPIDEV_MODE3, BMI055_BUS_SPEED, rotation),
|
||||
_sample_perf(perf_alloc(PC_ELAPSED, "bmi055_gyro_read")),
|
||||
_bad_transfers(perf_alloc(PC_COUNT, "bmi055_gyro_bad_transfers")),
|
||||
_bad_registers(perf_alloc(PC_COUNT, "bmi055_gyro_bad_registers")),
|
||||
_reset_retries(perf_alloc(PC_COUNT, "bmi055_gyro_reset_retries")),
|
||||
_duplicates(perf_alloc(PC_COUNT, "bmi055_gyro_duplicates")),
|
||||
_gyro_reads(perf_alloc(PC_COUNT, "bmi055_gyro_read")),
|
||||
_gyro_reports(nullptr),
|
||||
_gyro_scale{},
|
||||
_gyro_range_scale(0.0f),
|
||||
@ -57,7 +63,6 @@ BMI055_gyro::BMI055_gyro(int bus, const char *path_gyro, uint32_t device, enum R
|
||||
_gyro_orb_class_instance(-1),
|
||||
_gyro_class_instance(-1),
|
||||
_gyro_sample_rate(BMI055_GYRO_DEFAULT_RATE),
|
||||
_gyro_reads(perf_alloc(PC_COUNT, "bmi055_gyro_read")),
|
||||
_gyro_filter_x(BMI055_GYRO_DEFAULT_RATE, BMI055_GYRO_DEFAULT_DRIVER_FILTER_FREQ),
|
||||
_gyro_filter_y(BMI055_GYRO_DEFAULT_RATE, BMI055_GYRO_DEFAULT_DRIVER_FILTER_FREQ),
|
||||
_gyro_filter_z(BMI055_GYRO_DEFAULT_RATE, BMI055_GYRO_DEFAULT_DRIVER_FILTER_FREQ),
|
||||
@ -92,6 +97,11 @@ BMI055_gyro::~BMI055_gyro()
|
||||
}
|
||||
|
||||
/* delete the perf counter */
|
||||
perf_free(_sample_perf);
|
||||
perf_free(_bad_transfers);
|
||||
perf_free(_bad_registers);
|
||||
perf_free(_reset_retries);
|
||||
perf_free(_duplicates);
|
||||
perf_free(_gyro_reads);
|
||||
}
|
||||
|
||||
|
||||
@ -167,6 +167,13 @@ protected:
|
||||
|
||||
private:
|
||||
|
||||
perf_counter_t _sample_perf;
|
||||
perf_counter_t _bad_transfers;
|
||||
perf_counter_t _bad_registers;
|
||||
perf_counter_t _reset_retries;
|
||||
perf_counter_t _duplicates;
|
||||
perf_counter_t _gyro_reads;
|
||||
|
||||
ringbuffer::RingBuffer *_gyro_reports;
|
||||
|
||||
struct gyro_calibration_s _gyro_scale;
|
||||
@ -178,7 +185,6 @@ private:
|
||||
int _gyro_class_instance;
|
||||
|
||||
float _gyro_sample_rate;
|
||||
perf_counter_t _gyro_reads;
|
||||
|
||||
math::LowPassFilter2p _gyro_filter_x;
|
||||
math::LowPassFilter2p _gyro_filter_y;
|
||||
|
||||
@ -459,11 +459,6 @@ BMI055::BMI055(const char *name, const char *devname, int bus, uint32_t device,
|
||||
_call{},
|
||||
_call_interval(0),
|
||||
_dlpf_freq(0),
|
||||
_sample_perf(perf_alloc(PC_ELAPSED, "bmi055_read")),
|
||||
_bad_transfers(perf_alloc(PC_COUNT, "bmi055_bad_transfers")),
|
||||
_bad_registers(perf_alloc(PC_COUNT, "bmi055_bad_registers")),
|
||||
_reset_retries(perf_alloc(PC_COUNT, "bmi055_reset_retries")),
|
||||
_duplicates(perf_alloc(PC_COUNT, "bmi055_duplicates")),
|
||||
_register_wait(0),
|
||||
_reset_wait(0),
|
||||
_rotation(rotation),
|
||||
@ -471,16 +466,6 @@ BMI055::BMI055(const char *name, const char *devname, int bus, uint32_t device,
|
||||
{
|
||||
}
|
||||
|
||||
BMI055::~BMI055()
|
||||
{
|
||||
/* delete the perf counter */
|
||||
perf_free(_sample_perf);
|
||||
perf_free(_bad_transfers);
|
||||
perf_free(_bad_registers);
|
||||
perf_free(_reset_retries);
|
||||
perf_free(_duplicates);
|
||||
}
|
||||
|
||||
uint8_t
|
||||
BMI055::read_reg(unsigned reg)
|
||||
{
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user