mirror of
https://github.com/adrigongv23/G26---Telemetry-Software.git
synced 2026-05-25 12:31:27 +02:00
Creación de repositorio, copia de pantalla
This commit is contained in:
commit
6adc19faf6
71 changed files with 241507 additions and 0 deletions
53
include/led_strip.hpp
Normal file
53
include/led_strip.hpp
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
#ifndef LED_STRIP_HPP
|
||||
#define LED_STRIP_HPP
|
||||
|
||||
#include <Adafruit_NeoPixel.h>
|
||||
|
||||
#define PIN_WS2812B 6
|
||||
#define NUM_PIXELS 18
|
||||
|
||||
#define STOP_CAR_WARNING 1
|
||||
|
||||
#define RPM_MIN 6000
|
||||
#define RPM_MAX 11000
|
||||
|
||||
class LedStrip{
|
||||
public:
|
||||
LedStrip(): _ws2812b(NUM_PIXELS, PIN_WS2812B, NEO_GRB + NEO_KHZ800), _warning(0), _brightness(255) {}
|
||||
|
||||
static void updateTask(void *arg) {
|
||||
LedStrip *ledStrip = static_cast<LedStrip*>(arg);
|
||||
ledStrip->update();
|
||||
vTaskDelete(NULL);
|
||||
}
|
||||
|
||||
void update();
|
||||
|
||||
void set_rpm(int rpm);
|
||||
|
||||
void begin(){
|
||||
_ws2812b.begin();
|
||||
}
|
||||
|
||||
void set_brightness(uint8_t brightness) {
|
||||
_ws2812b.setBrightness(brightness);
|
||||
_ws2812b.show();
|
||||
}
|
||||
|
||||
void set_mutex(SemaphoreHandle_t mutex){
|
||||
_mutex = mutex;
|
||||
}
|
||||
|
||||
void display_warning(int warning);
|
||||
void display_rpm(int rpm);
|
||||
void display_startup();
|
||||
|
||||
private:
|
||||
Adafruit_NeoPixel _ws2812b;
|
||||
SemaphoreHandle_t _mutex;
|
||||
int _rpm;
|
||||
int _warning;
|
||||
int _brightness;
|
||||
};
|
||||
|
||||
#endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue