mirror of
https://github.com/HASwitchPlate/openHASP.git
synced 2025-07-27 21:26:43 +00:00
Add backlight_invert
This commit is contained in:
parent
b4aa18074b
commit
cc18ff0a15
@ -115,6 +115,7 @@ void Esp32Device::update_backlight()
|
||||
{
|
||||
if(_backlight_pin < GPIO_NUM_MAX) {
|
||||
uint32_t duty = _backlight_power ? map(_backlight_level, 0, 255, 0, 4095) : 0;
|
||||
if(_backlight_invert) duty = 4095 - duty;
|
||||
ledcWrite(BACKLIGHT_CHANNEL, duty); // ledChannel and value
|
||||
}
|
||||
}
|
||||
|
@ -16,12 +16,13 @@ class Esp32Device : public BaseDevice {
|
||||
Esp32Device()
|
||||
{
|
||||
#ifdef MQTT_NODENAME
|
||||
_hostname = MQTT_NODENAME;
|
||||
_hostname = MQTT_NODENAME;
|
||||
#else
|
||||
_hostname = "plate";
|
||||
_hostname = "plate";
|
||||
#endif
|
||||
_backlight_power = 1;
|
||||
_backlight_level = 100;
|
||||
_backlight_power = 1;
|
||||
_backlight_invert = 0;
|
||||
_backlight_level = 255;
|
||||
#ifdef TFT_BCKL
|
||||
_backlight_pin = TFT_BCKL;
|
||||
#else
|
||||
@ -55,6 +56,7 @@ class Esp32Device : public BaseDevice {
|
||||
uint8_t _backlight_pin;
|
||||
uint8_t _backlight_level;
|
||||
uint8_t _backlight_power;
|
||||
uint8_t _backlight_invert;
|
||||
|
||||
void update_backlight();
|
||||
};
|
||||
|
@ -82,9 +82,11 @@ bool Esp8266Device::get_backlight_power()
|
||||
|
||||
void Esp8266Device::update_backlight()
|
||||
{
|
||||
if(_backlight_pin == -1) return;
|
||||
|
||||
analogWrite(_backlight_pin, _backlight_power ? map(_backlight_level, 0, 255, 0, 1023) : 0);
|
||||
if(_backlight_pin < GPIO_NUM_MAX) {
|
||||
uint32_t duty = _backlight_power ? map(_backlight_level, 0, 255, 0, 1023) : 0;
|
||||
if(_backlight_invert) duty = 1023 - duty;
|
||||
analogWrite(_backlight_pin, duty);
|
||||
}
|
||||
}
|
||||
|
||||
size_t Esp8266Device::get_free_max_block()
|
||||
|
@ -16,10 +16,11 @@ class Esp8266Device : public BaseDevice {
|
||||
public:
|
||||
Esp8266Device()
|
||||
{
|
||||
_hostname = "plate";
|
||||
_backlight_power = 1;
|
||||
_backlight_level = 100;
|
||||
_core_version = ESP.getCoreVersion().c_str();
|
||||
_hostname = "plate";
|
||||
_backlight_power = 1;
|
||||
_backlight_invert = 0;
|
||||
_backlight_level = 100;
|
||||
_core_version = ESP.getCoreVersion().c_str();
|
||||
#ifdef TFT_BCKL
|
||||
_backlight_pin = TFT_BCKL;
|
||||
#else
|
||||
@ -55,6 +56,7 @@ class Esp8266Device : public BaseDevice {
|
||||
uint8_t _backlight_pin;
|
||||
uint8_t _backlight_level;
|
||||
uint8_t _backlight_power;
|
||||
uint8_t _backlight_invert;
|
||||
|
||||
void update_backlight();
|
||||
};
|
||||
|
@ -38,8 +38,9 @@ PosixDevice::PosixDevice()
|
||||
_hostname = uts.nodename;
|
||||
}
|
||||
|
||||
_backlight_power = 1;
|
||||
_backlight_level = 100;
|
||||
_backlight_power = 1;
|
||||
_backlight_invert = 0;
|
||||
_backlight_level = 100;
|
||||
}
|
||||
|
||||
void PosixDevice::reboot()
|
||||
@ -115,6 +116,7 @@ bool PosixDevice::get_backlight_power()
|
||||
void PosixDevice::update_backlight()
|
||||
{
|
||||
uint8_t level = _backlight_power ? _backlight_level : 0;
|
||||
if(_backlight_invert) level = 255 - level;
|
||||
monitor_backlight(level);
|
||||
// SDL_SetTextureColorMod(monitor.texture, level, level, level);
|
||||
// window_update(&monitor);
|
||||
|
@ -60,6 +60,7 @@ class PosixDevice : public BaseDevice {
|
||||
uint8_t _backlight_pin;
|
||||
uint8_t _backlight_level;
|
||||
uint8_t _backlight_power;
|
||||
uint8_t _backlight_invert;
|
||||
|
||||
void update_backlight();
|
||||
};
|
||||
|
@ -16,9 +16,10 @@ class Stm32f4Device : public BaseDevice {
|
||||
public:
|
||||
Stm32f4Device()
|
||||
{
|
||||
_hostname = "plate";
|
||||
_backlight_power = 1;
|
||||
_backlight_level = 100;
|
||||
_hostname = "plate";
|
||||
_backlight_power = 1;
|
||||
_backlight_invert = 0;
|
||||
_backlight_level = 100;
|
||||
#ifdef TFT_BCKL
|
||||
_backlight_pin = TFT_BCKL;
|
||||
#else
|
||||
@ -53,6 +54,7 @@ class Stm32f4Device : public BaseDevice {
|
||||
uint8_t _backlight_pin;
|
||||
uint8_t _backlight_level;
|
||||
uint8_t _backlight_power;
|
||||
uint8_t _backlight_invert;
|
||||
|
||||
void update_backlight();
|
||||
};
|
||||
|
@ -95,6 +95,7 @@ bool Win32Device::get_backlight_power()
|
||||
void Win32Device::update_backlight()
|
||||
{
|
||||
uint8_t level = _backlight_power ? _backlight_level : 0;
|
||||
if(_backlight_invert) level = 255 - level;
|
||||
monitor_backlight(level);
|
||||
}
|
||||
|
||||
|
@ -47,8 +47,9 @@ class Win32Device : public BaseDevice {
|
||||
_core_version = version;
|
||||
|
||||
// _backlight_pin = -1;
|
||||
_backlight_power = 1;
|
||||
_backlight_level = 100;
|
||||
_backlight_power = 1;
|
||||
_backlight_invert = 0;
|
||||
_backlight_level = 255;
|
||||
}
|
||||
|
||||
void reboot() override;
|
||||
@ -79,6 +80,7 @@ class Win32Device : public BaseDevice {
|
||||
uint8_t _backlight_pin;
|
||||
uint8_t _backlight_level;
|
||||
uint8_t _backlight_power;
|
||||
uint8_t _backlight_invert;
|
||||
|
||||
void update_backlight();
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user