From 58b4bc754bbb9f5197119cd0c124e49c05acff46 Mon Sep 17 00:00:00 2001 From: Dawsyn Schraiber <32221234+dawsynth@users.noreply.github.com> Date: Thu, 13 Jun 2024 14:30:58 -0400 Subject: Where to begin…. (#13) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit +/- Reworked collection of altimeter related functions into altimeter class +/- Reworked bno055 class to be imu class with minimal functionality \- Removed external Kalman filter implementations in favor of own in house version \- Removed any/unused files \+ Added buffer logger for when sitting on pad for extended period of time in effort to prevent filling of flash chip \+ Added heartbeat LED for alive status --- include/altimeter.hpp | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 include/altimeter.hpp (limited to 'include/altimeter.hpp') diff --git a/include/altimeter.hpp b/include/altimeter.hpp new file mode 100644 index 0000000..bf7effd --- /dev/null +++ b/include/altimeter.hpp @@ -0,0 +1,31 @@ +#pragma once + +#include "pico/stdlib.h" +#include "hardware/i2c.h" +#include "hardware/gpio.h" +#include + +class altimeter { + private: + uint8_t altitude_buffer[4]; + uint8_t buffer[4]; + uint8_t addr; + i2c_inst_t* inst; + public: + altimeter(i2c_inst_t* inst, uint8_t addr); + + void initialize(); + + void initialize(float threshold_altitude, uint8_t interrupt_pin, gpio_irq_callback_t callback); + + void set_threshold_altitude(float threshold_altitude, uint8_t interrupt_pin, gpio_irq_callback_t callback); + + void unset_threshold_altitude(uint8_t interrupt_pin); + + float get_altitude_converted(); + + void get_altitude_raw(uint8_t* buffer); + + uint32_t expose_buffer(uint8_t** buffer); +}; + -- cgit v1.2.3