Add backlight_invert

This commit is contained in:
fvanroie 2022-04-03 01:38:46 +02:00
parent fe7db71e8b
commit 13c1c02d66
13 changed files with 113 additions and 28 deletions

View File

@ -77,6 +77,8 @@ class BaseDevice {
{} {}
virtual void set_backlight_pin(uint8_t pin) virtual void set_backlight_pin(uint8_t pin)
{} {}
virtual void set_backlight_invert(bool override)
{}
virtual void set_backlight_level(uint8_t level) virtual void set_backlight_level(uint8_t level)
{} {}
virtual uint8_t get_backlight_level() virtual uint8_t get_backlight_level()
@ -85,6 +87,10 @@ class BaseDevice {
} }
virtual void set_backlight_power(bool power) virtual void set_backlight_power(bool power)
{} {}
virtual bool get_backlight_invert()
{
return false;
}
virtual bool get_backlight_power() virtual bool get_backlight_power()
{ {
return true; return true;

View File

@ -197,6 +197,17 @@ void Esp32Device::set_backlight_pin(uint8_t pin)
} }
} }
void Esp32Device::set_backlight_invert(bool invert)
{
_backlight_invert = invert;
update_backlight();
}
bool Esp32Device::get_backlight_invert()
{
return _backlight_invert;
}
void Esp32Device::set_backlight_level(uint8_t level) void Esp32Device::set_backlight_level(uint8_t level)
{ {
_backlight_level = level; _backlight_level = level;
@ -287,7 +298,8 @@ bool Esp32Device::is_system_pin(uint8_t pin)
#if defined(ESP32S2) // Arduino NUM_DIGITAL_PINS = 48 (but espressif says it only has 46) #if defined(ESP32S2) // Arduino NUM_DIGITAL_PINS = 48 (but espressif says it only has 46)
// From https://hggh.github.io/esp32/2021/01/06/ESP32-S2-pinout.html, it looks like IO26 is for PSRAM // From https://hggh.github.io/esp32/2021/01/06/ESP32-S2-pinout.html, it looks like IO26 is for PSRAM
// More info https://docs.espressif.com/projects/esp-idf/en/latest/esp32s2/_images/esp32-s2_saola1-pinout.jpg // More info https://docs.espressif.com/projects/esp-idf/en/latest/esp32s2/_images/esp32-s2_saola1-pinout.jpg
//Datasheet https://www.espressif.com/sites/default/files/documentation/esp32-s2-wroom_esp32-s2-wroom-i_datasheet_en.pdf // Datasheet
// https://www.espressif.com/sites/default/files/documentation/esp32-s2-wroom_esp32-s2-wroom-i_datasheet_en.pdf
// From the ESP32S2-Wroom pdf, the flash appears to be on the upper set of IO. // From the ESP32S2-Wroom pdf, the flash appears to be on the upper set of IO.
// SPICS0 = IO10 or IO34 ? // SPICS0 = IO10 or IO34 ?

View File

@ -40,9 +40,11 @@ class Esp32Device : public BaseDevice {
const char* get_hardware_id(); const char* get_hardware_id();
void set_backlight_pin(uint8_t pin) override; void set_backlight_pin(uint8_t pin) override;
void set_backlight_invert(bool invert) override;
void set_backlight_level(uint8_t val) override; void set_backlight_level(uint8_t val) override;
uint8_t get_backlight_level() override; uint8_t get_backlight_level() override;
void set_backlight_power(bool power) override; void set_backlight_power(bool power) override;
bool get_backlight_invert() override;
bool get_backlight_power() override; bool get_backlight_power() override;
size_t get_free_max_block() override; size_t get_free_max_block() override;

View File

@ -82,6 +82,17 @@ void Esp8266Device::set_backlight_pin(uint8_t pin)
} }
} }
void Esp8266Device::set_backlight_invert(bool invert)
{
_backlight_invert = invert;
update_backlight();
}
bool Esp8266Device::get_backlight_invert()
{
return _backlight_invert;
}
void Esp8266Device::set_backlight_level(uint8_t level) void Esp8266Device::set_backlight_level(uint8_t level)
{ {
_backlight_level = level; _backlight_level = level;

View File

@ -26,9 +26,11 @@ class Esp8266Device : public BaseDevice {
const char* get_hardware_id(); const char* get_hardware_id();
void set_backlight_pin(uint8_t pin) override; void set_backlight_pin(uint8_t pin) override;
void set_backlight_invert(bool invert) override;
void set_backlight_level(uint8_t val) override; void set_backlight_level(uint8_t val) override;
uint8_t get_backlight_level() override; uint8_t get_backlight_level() override;
void set_backlight_power(bool power) override; void set_backlight_power(bool power) override;
bool get_backlight_invert() override;
bool get_backlight_power() override; bool get_backlight_power() override;
size_t get_free_max_block() override; size_t get_free_max_block() override;

View File

@ -105,6 +105,17 @@ void PosixDevice::set_backlight_pin(uint8_t pin)
// PosixDevice::backlight_pin = pin; // PosixDevice::backlight_pin = pin;
} }
void PosixDevice::set_backlight_invert(bool invert)
{
_backlight_invert = invert;
update_backlight();
}
bool PosixDevice::get_backlight_invert()
{
return _backlight_invert;
}
void PosixDevice::set_backlight_level(uint8_t level) void PosixDevice::set_backlight_level(uint8_t level)
{ {
uint8_t new_level = level; uint8_t new_level = level;

View File

@ -41,9 +41,11 @@ class PosixDevice : public BaseDevice {
const char* get_hardware_id(); const char* get_hardware_id();
void set_backlight_pin(uint8_t pin); void set_backlight_pin(uint8_t pin);
void set_backlight_invert(bool invert) override;
void set_backlight_level(uint8_t val); void set_backlight_level(uint8_t val);
uint8_t get_backlight_level(); uint8_t get_backlight_level();
void set_backlight_power(bool power); void set_backlight_power(bool power);
bool get_backlight_invert() override;
bool get_backlight_power(); bool get_backlight_power();
size_t get_free_max_block(); size_t get_free_max_block();

View File

@ -77,6 +77,17 @@ const char* Stm32f4Device::get_chip_model()
#endif #endif
} }
void Stm32f4Device::set_backlight_invert(bool invert)
{
_backlight_invert = invert;
update_backlight();
}
bool Stm32f4Device::get_backlight_invert()
{
return _backlight_invert;
}
void Stm32f4Device::set_backlight_level(uint8_t level) void Stm32f4Device::set_backlight_level(uint8_t level)
{ {
_backlight_level = level; _backlight_level = level;

View File

@ -33,9 +33,11 @@ class Stm32f4Device : public BaseDevice {
const char* get_hardware_id(); const char* get_hardware_id();
void set_backlight_pin(uint8_t pin) override; void set_backlight_pin(uint8_t pin) override;
void set_backlight_invert(bool invert) override;
void set_backlight_level(uint8_t val) override; void set_backlight_level(uint8_t val) override;
uint8_t get_backlight_level() override; uint8_t get_backlight_level() override;
void set_backlight_power(bool power) override; void set_backlight_power(bool power) override;
bool get_backlight_invert() override;
bool get_backlight_power() override; bool get_backlight_power() override;
size_t get_free_max_block() override; size_t get_free_max_block() override;

View File

@ -82,6 +82,17 @@ const char* Stm32f7Device::get_chip_model()
#endif #endif
} }
void Stm32f7Device::set_backlight_invert(bool invert)
{
_backlight_invert = invert;
update_backlight();
}
bool Stm32f7Device::get_backlight_invert()
{
return _backlight_invert;
}
void Stm32f7Device::set_backlight_level(uint8_t level) void Stm32f7Device::set_backlight_level(uint8_t level)
{ {
_backlight_level = level; _backlight_level = level;

View File

@ -36,9 +36,11 @@ class Stm32f7Device : public BaseDevice {
const char* get_hardware_id(); const char* get_hardware_id();
void set_backlight_pin(uint8_t pin) override; void set_backlight_pin(uint8_t pin) override;
void set_backlight_invert(bool invert) override;
void set_backlight_level(uint8_t val) override; void set_backlight_level(uint8_t val) override;
uint8_t get_backlight_level() override; uint8_t get_backlight_level() override;
void set_backlight_power(bool power) override; void set_backlight_power(bool power) override;
bool get_backlight_invert() override;
bool get_backlight_power() override; bool get_backlight_power() override;
size_t get_free_max_block() override; size_t get_free_max_block() override;

View File

@ -71,6 +71,17 @@ void Win32Device::set_backlight_pin(uint8_t pin)
// Win32Device::_backlight_pin = pin; // Win32Device::_backlight_pin = pin;
} }
void Win32Device::set_backlight_invert(bool invert)
{
_backlight_invert = invert;
update_backlight();
}
bool Win32Device::get_backlight_invert()
{
return _backlight_invert;
}
void Win32Device::set_backlight_level(uint8_t level) void Win32Device::set_backlight_level(uint8_t level)
{ {
uint8_t new_level = level; uint8_t new_level = level;

View File

@ -62,9 +62,11 @@ class Win32Device : public BaseDevice {
const char* get_hardware_id(); const char* get_hardware_id();
void set_backlight_pin(uint8_t pin); void set_backlight_pin(uint8_t pin);
void set_backlight_invert(bool invert) override;
void set_backlight_level(uint8_t val); void set_backlight_level(uint8_t val);
uint8_t get_backlight_level(); uint8_t get_backlight_level();
void set_backlight_power(bool power); void set_backlight_power(bool power);
bool get_backlight_invert() override;
bool get_backlight_power(); bool get_backlight_power();
size_t get_free_max_block(); size_t get_free_max_block();