diff options
author | mashuptwice <info@mashup-tech.de> | 2022-08-25 10:56:09 +0200 |
---|---|---|
committer | mashuptwice <info@mashup-tech.de> | 2022-08-25 10:56:09 +0200 |
commit | 5c253c10a8534879ea002baa7766ba341f1c168b (patch) | |
tree | a4bc18491594b36689f86bb030bbccac36496a0e /src/drivers/St7789.cpp | |
parent | a86668b6b717fb618cc4cc7167e49e3339748417 (diff) | |
parent | 69563ed03155eb861f8b8ada1df1325995fab51b (diff) |
Merge remote-tracking branch 'upstream/develop' into workflow-ignore-md
Diffstat (limited to 'src/drivers/St7789.cpp')
-rw-r--r-- | src/drivers/St7789.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/drivers/St7789.cpp b/src/drivers/St7789.cpp index 3ed1beb4..cfd5bd2c 100644 --- a/src/drivers/St7789.cpp +++ b/src/drivers/St7789.cpp @@ -21,7 +21,10 @@ void St7789::Init() { MemoryDataAccessControl(); ColumnAddressSet(); RowAddressSet(); +// P8B Mirrored version does not need display inversion. +#ifndef DRIVER_DISPLAY_MIRROR DisplayInversionOn(); +#endif NormalModeOn(); SetVdv(); DisplayOn(); @@ -62,7 +65,18 @@ void St7789::ColMod() { void St7789::MemoryDataAccessControl() { WriteCommand(static_cast<uint8_t>(Commands::MemoryDataAccessControl)); +#ifdef DRIVER_DISPLAY_MIRROR + // [7] = MY = Page Address Order, 0 = Top to bottom, 1 = Bottom to top + // [6] = MX = Column Address Order, 0 = Left to right, 1 = Right to left + // [5] = MV = Page/Column Order, 0 = Normal mode, 1 = Reverse mode + // [4] = ML = Line Address Order, 0 = LCD refresh from top to bottom, 1 = Bottom to top + // [3] = RGB = RGB/BGR Order, 0 = RGB, 1 = BGR + // [2] = MH = Display Data Latch Order, 0 = LCD refresh from left to right, 1 = Right to left + // [0 .. 1] = Unused + WriteData(0b01000000); +#else WriteData(0x00); +#endif } void St7789::ColumnAddressSet() { |