Fix the Landscape orientation
Thanks to Damian Glinojecki
This commit is contained in:
parent
02b0603cc6
commit
5b795f8c6b
|
@ -213,13 +213,16 @@ void ssd1680_set_px_cb(lv_disp_drv_t * disp_drv, uint8_t* buf,
|
||||||
BIT_CLEAR(buf[mirrored_idx], 7 - bit_index);
|
BIT_CLEAR(buf[mirrored_idx], 7 - bit_index);
|
||||||
}
|
}
|
||||||
#elif defined (CONFIG_LV_DISPLAY_ORIENTATION_LANDSCAPE)
|
#elif defined (CONFIG_LV_DISPLAY_ORIENTATION_LANDSCAPE)
|
||||||
byte_index = y + ((x >> 3) * EPD_PANEL_HEIGHT);
|
/* mirrored index */
|
||||||
bit_index = x & 0x7;
|
uint16_t mirrored_idx = (EPD_PANEL_HEIGHT - x) + ((y >> 3) * EPD_PANEL_HEIGHT);
|
||||||
|
byte_index = x + ((y >> 3) * EPD_PANEL_HEIGHT);
|
||||||
if (color.full) {
|
bit_index = y & 0x7;
|
||||||
BIT_SET(buf[byte_index], 7 - bit_index);
|
/* 1 means white, 0 means black */
|
||||||
|
/* note that the bit index is inverted in place */
|
||||||
|
if (color.full == 0) {
|
||||||
|
BIT_SET(buf[mirrored_idx - 1], 7 - bit_index);
|
||||||
} else {
|
} else {
|
||||||
BIT_CLEAR(buf[byte_index], 7 - bit_index);
|
BIT_CLEAR(buf[mirrored_idx - 1], 7 - bit_index);
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
#error "Unsupported orientation used"
|
#error "Unsupported orientation used"
|
||||||
|
|
Loading…
Reference in a new issue