mirror of
https://github.com/arendst/Tasmota.git
synced 2025-07-26 04:06:34 +00:00
inverted backpanel
This commit is contained in:
parent
53bd637568
commit
1f70dc8f97
@ -62,6 +62,7 @@ uDisplay::uDisplay(char *lp) : Renderer(800, 600) {
|
|||||||
sa_mode = 16;
|
sa_mode = 16;
|
||||||
saw_3 = 0xff;
|
saw_3 = 0xff;
|
||||||
dim_op = 0xff;
|
dim_op = 0xff;
|
||||||
|
bpmode = 0;
|
||||||
dsp_off = 0xff;
|
dsp_off = 0xff;
|
||||||
dsp_on = 0xff;
|
dsp_on = 0xff;
|
||||||
lutpsize = 0;
|
lutpsize = 0;
|
||||||
@ -305,6 +306,9 @@ uDisplay::uDisplay(char *lp) : Renderer(800, 600) {
|
|||||||
rotmap_ymin = next_val(&lp1);
|
rotmap_ymin = next_val(&lp1);
|
||||||
rotmap_ymax = next_val(&lp1);
|
rotmap_ymax = next_val(&lp1);
|
||||||
break;
|
break;
|
||||||
|
case 'b':
|
||||||
|
bpmode = next_val(&lp1);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1344,7 +1348,7 @@ void uDisplay::DisplayOnff(int8_t on) {
|
|||||||
pwr_cbp(on);
|
pwr_cbp(on);
|
||||||
}
|
}
|
||||||
|
|
||||||
// udisp_bpwr(on);
|
#define AW_PWMRES 1024
|
||||||
|
|
||||||
if (interface == _UDSP_I2C) {
|
if (interface == _UDSP_I2C) {
|
||||||
if (on) {
|
if (on) {
|
||||||
@ -1357,10 +1361,17 @@ void uDisplay::DisplayOnff(int8_t on) {
|
|||||||
if (dsp_on != 0xff) spi_command_one(dsp_on);
|
if (dsp_on != 0xff) spi_command_one(dsp_on);
|
||||||
if (bpanel >= 0) {
|
if (bpanel >= 0) {
|
||||||
#ifdef ESP32
|
#ifdef ESP32
|
||||||
analogWrite(bpanel, dimmer10_gamma);
|
if (!bpmode) {
|
||||||
// ledcWrite(ESP32_PWM_CHANNEL, dimmer8_gamma);
|
analogWrite(bpanel, dimmer10_gamma);
|
||||||
|
} else {
|
||||||
|
analogWrite(bpanel, AW_PWMRES - dimmer10_gamma);
|
||||||
|
}
|
||||||
#else
|
#else
|
||||||
digitalWrite(bpanel, HIGH);
|
if (!bpmode) {
|
||||||
|
digitalWrite(bpanel, HIGH);
|
||||||
|
} else {
|
||||||
|
digitalWrite(bpanel, LOW);
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1368,10 +1379,17 @@ void uDisplay::DisplayOnff(int8_t on) {
|
|||||||
if (dsp_off != 0xff) spi_command_one(dsp_off);
|
if (dsp_off != 0xff) spi_command_one(dsp_off);
|
||||||
if (bpanel >= 0) {
|
if (bpanel >= 0) {
|
||||||
#ifdef ESP32
|
#ifdef ESP32
|
||||||
analogWrite(bpanel, 0);
|
if (!bpmode) {
|
||||||
// ledcWrite(ESP32_PWM_CHANNEL, 0);
|
analogWrite(bpanel, 0);
|
||||||
|
} else {
|
||||||
|
analogWrite(bpanel, AW_PWMRES - 1);
|
||||||
|
}
|
||||||
#else
|
#else
|
||||||
digitalWrite(bpanel, LOW);
|
if (!bpmode) {
|
||||||
|
digitalWrite(bpanel, LOW);
|
||||||
|
} else {
|
||||||
|
digitalWrite(bpanel, HIGH);
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1417,7 +1435,12 @@ void uDisplay::dim10(uint8_t dim, uint16_t dim_gamma) { // dimmer with
|
|||||||
|
|
||||||
#ifdef ESP32 // TODO should we also add a ESP8266 version for bpanel?
|
#ifdef ESP32 // TODO should we also add a ESP8266 version for bpanel?
|
||||||
if (bpanel >= 0) { // is the BaclPanel GPIO configured
|
if (bpanel >= 0) { // is the BaclPanel GPIO configured
|
||||||
analogWrite(bpanel, dimmer10_gamma);
|
if (!bpmode) {
|
||||||
|
analogWrite(bpanel, dimmer10_gamma);
|
||||||
|
} else {
|
||||||
|
analogWrite(bpanel, AW_PWMRES - dimmer10_gamma);
|
||||||
|
}
|
||||||
|
|
||||||
// ledcWrite(ESP32_PWM_CHANNEL, dimmer8_gamma);
|
// ledcWrite(ESP32_PWM_CHANNEL, dimmer8_gamma);
|
||||||
} else if (dim_cbp) {
|
} else if (dim_cbp) {
|
||||||
dim_cbp(dim);
|
dim_cbp(dim);
|
||||||
|
@ -176,6 +176,7 @@ class uDisplay : public Renderer {
|
|||||||
uint16_t bg_col;
|
uint16_t bg_col;
|
||||||
uint16_t gxs;
|
uint16_t gxs;
|
||||||
uint16_t gys;
|
uint16_t gys;
|
||||||
|
int8_t bpmode;
|
||||||
int8_t spi_cs;
|
int8_t spi_cs;
|
||||||
int8_t spi_clk;
|
int8_t spi_clk;
|
||||||
int8_t spi_mosi;
|
int8_t spi_mosi;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user