Paperd.Ink Library 0.0.5
Library for interacting with Paperd.Ink devices.
Loading...
Searching...
No Matches
GxEPD2_270c Class Reference

#include <GxEPD2_270c.h>

Inheritance diagram for GxEPD2_270c:
GxEPD2_EPD

Public Member Functions

 GxEPD2_270c (int16_t cs, int16_t dc, int16_t rst, int16_t busy)
 
void clearScreen (uint8_t value=0xFF)
 
void clearScreen (uint8_t black_value, uint8_t color_value)
 
void writeScreenBuffer (uint8_t value=0xFF)
 
void writeScreenBuffer (uint8_t black_value, uint8_t color_value)
 
void writeImage (const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)
 
void writeImagePart (const uint8_t bitmap[], int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap, int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)
 
void writeImage (const uint8_t *black, const uint8_t *color, int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)
 
void writeImagePart (const uint8_t *black, const uint8_t *color, int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap, int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)
 
void writeNative (const uint8_t *data1, const uint8_t *data2, int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)
 
void drawImage (const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)
 
void drawImagePart (const uint8_t bitmap[], int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap, int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)
 
void drawImage (const uint8_t *black, const uint8_t *color, int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)
 
void drawImagePart (const uint8_t *black, const uint8_t *color, int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap, int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)
 
void drawNative (const uint8_t *data1, const uint8_t *data2, int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)
 
void refresh (bool partial_update_mode=false)
 
void refresh (int16_t x, int16_t y, int16_t w, int16_t h)
 
void powerOff ()
 
void hibernate ()
 
- Public Member Functions inherited from GxEPD2_EPD
 GxEPD2_EPD (int16_t cs, int16_t dc, int16_t rst, int16_t busy, int16_t busy_level, uint32_t busy_timeout, uint16_t w, uint16_t h, GxEPD2::Panel p, bool c, bool pu, bool fpu)
 
virtual void init (uint32_t serial_diag_bitrate=0)
 
virtual void init (uint32_t serial_diag_bitrate, bool initial, uint16_t reset_duration=10, bool pulldown_rst_mode=false)
 
virtual void writeImageForFullRefresh (const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)
 
virtual void writeScreenBufferAgain (uint8_t value=0xFF)
 
virtual void writeImageAgain (const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)
 
virtual void writeImagePartAgain (const uint8_t bitmap[], int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap, int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)
 
virtual void setPaged ()
 
void setBusyCallback (void(*busyCallback)(const void *), const void *busy_callback_parameter=0)
 
void selectSPI (SPIClass &spi, SPISettings spi_settings)
 

Static Public Attributes

static const uint16_t WIDTH = 176
 
static const uint16_t WIDTH_VISIBLE = WIDTH
 
static const uint16_t HEIGHT = 264
 
static const GxEPD2::Panel panel = GxEPD2::GDEW027C44
 
static const bool hasColor = true
 
static const bool hasPartialUpdate = true
 
static const bool hasFastPartialUpdate = false
 
static const uint16_t power_on_time = 20
 
static const uint16_t power_off_time = 40
 
static const uint16_t full_refresh_time = 16000
 
static const uint16_t partial_refresh_time = 16000
 

Additional Inherited Members

- Static Public Member Functions inherited from GxEPD2_EPD
static uint16_t gx_uint16_min (uint16_t a, uint16_t b)
 
static uint16_t gx_uint16_max (uint16_t a, uint16_t b)
 
- Public Attributes inherited from GxEPD2_EPD
const uint16_t WIDTH
 
const uint16_t HEIGHT
 
const GxEPD2::Panel panel
 
const bool hasColor
 
const bool hasPartialUpdate
 
const bool hasFastPartialUpdate
 
- Protected Member Functions inherited from GxEPD2_EPD
void _reset ()
 
void _waitWhileBusy (const char *comment=0, uint16_t busy_time=5000)
 
void _writeCommand (uint8_t c)
 
void _writeData (uint8_t d)
 
void _writeData (const uint8_t *data, uint16_t n)
 
void _writeDataPGM (const uint8_t *data, uint16_t n, int16_t fill_with_zeroes=0)
 
void _writeDataPGM_sCS (const uint8_t *data, uint16_t n, int16_t fill_with_zeroes=0)
 
void _writeCommandData (const uint8_t *pCommandData, uint8_t datalen)
 
void _writeCommandDataPGM (const uint8_t *pCommandData, uint8_t datalen)
 
void _startTransfer ()
 
void _transfer (uint8_t value)
 
void _endTransfer ()
 
- Protected Attributes inherited from GxEPD2_EPD
int16_t _cs
 
int16_t _dc
 
int16_t _rst
 
int16_t _busy
 
int16_t _busy_level
 
uint32_t _busy_timeout
 
bool _diag_enabled
 
bool _pulldown_rst_mode
 
SPIClass * _pSPIx
 
SPISettings _spi_settings
 
bool _initial_write
 
bool _initial_refresh
 
bool _power_is_on
 
bool _using_partial_mode
 
bool _hibernating
 
uint16_t _reset_duration
 
void(* _busy_callback )(const void *)
 
const void * _busy_callback_parameter
 

Detailed Description

Definition at line 18 of file GxEPD2_270c.h.

Constructor & Destructor Documentation

◆ GxEPD2_270c()

GxEPD2_270c::GxEPD2_270c ( int16_t cs,
int16_t dc,
int16_t rst,
int16_t busy )

Definition at line 15 of file GxEPD2_270c.cpp.

15 :
16 GxEPD2_EPD(cs, dc, rst, busy, LOW, 20000000, WIDTH, HEIGHT, panel, hasColor, hasPartialUpdate, hasFastPartialUpdate)
17{
18}
static const bool hasFastPartialUpdate
Definition GxEPD2_270c.h:28
static const uint16_t HEIGHT
Definition GxEPD2_270c.h:24
static const GxEPD2::Panel panel
Definition GxEPD2_270c.h:25
static const bool hasPartialUpdate
Definition GxEPD2_270c.h:27
static const uint16_t WIDTH
Definition GxEPD2_270c.h:22
static const bool hasColor
Definition GxEPD2_270c.h:26
GxEPD2_EPD(int16_t cs, int16_t dc, int16_t rst, int16_t busy, int16_t busy_level, uint32_t busy_timeout, uint16_t w, uint16_t h, GxEPD2::Panel p, bool c, bool pu, bool fpu)

Member Function Documentation

◆ clearScreen() [1/2]

void GxEPD2_270c::clearScreen ( uint8_t black_value,
uint8_t color_value )

Definition at line 25 of file GxEPD2_270c.cpp.

26{
27 _initial_write = false; // initial full screen buffer clean done
28 _Init_Part();
29 _setPartialRamArea_270c(0x14, 0, 0, WIDTH, HEIGHT);
30 for (uint32_t i = 0; i < uint32_t(WIDTH) * uint32_t(HEIGHT) / 8; i++)
31 {
32 _writeData(~black_value);
33 }
34 _setPartialRamArea_270c(0x15, 0, 0, WIDTH, HEIGHT);
35 for (uint32_t i = 0; i < uint32_t(WIDTH) * uint32_t(HEIGHT) / 8; i++)
36 {
37 _writeData(~red_value);
38 }
39 refresh(0, 0, WIDTH, HEIGHT);
40}
void refresh(bool partial_update_mode=false)
void _writeData(uint8_t d)
bool _initial_write
Definition GxEPD2_EPD.h:117

◆ clearScreen() [2/2]

void GxEPD2_270c::clearScreen ( uint8_t value = 0xFF)
virtual

Implements GxEPD2_EPD.

Definition at line 20 of file GxEPD2_270c.cpp.

21{
22 clearScreen(value, 0xFF);
23}
void clearScreen(uint8_t value=0xFF)

◆ drawImage() [1/2]

void GxEPD2_270c::drawImage ( const uint8_t * black,
const uint8_t * color,
int16_t x,
int16_t y,
int16_t w,
int16_t h,
bool invert = false,
bool mirror_y = false,
bool pgm = false )

Definition at line 247 of file GxEPD2_270c.cpp.

248{
249 writeImage(black, color, x, y, w, h, invert, mirror_y, pgm);
250 refresh(x, y, w, h);
251}
void writeImage(const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)

◆ drawImage() [2/2]

void GxEPD2_270c::drawImage ( const uint8_t bitmap[],
int16_t x,
int16_t y,
int16_t w,
int16_t h,
bool invert = false,
bool mirror_y = false,
bool pgm = false )

Definition at line 234 of file GxEPD2_270c.cpp.

235{
236 writeImage(bitmap, x, y, w, h, invert, mirror_y, pgm);
237 refresh(x, y, w, h);
238}

◆ drawImagePart() [1/2]

void GxEPD2_270c::drawImagePart ( const uint8_t * black,
const uint8_t * color,
int16_t x_part,
int16_t y_part,
int16_t w_bitmap,
int16_t h_bitmap,
int16_t x,
int16_t y,
int16_t w,
int16_t h,
bool invert = false,
bool mirror_y = false,
bool pgm = false )

Definition at line 253 of file GxEPD2_270c.cpp.

255{
256 writeImagePart(black, color, x_part, y_part, w_bitmap, h_bitmap, x, y, w, h, invert, mirror_y, pgm);
257 refresh(x, y, w, h);
258}
void writeImagePart(const uint8_t bitmap[], int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap, int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)

◆ drawImagePart() [2/2]

void GxEPD2_270c::drawImagePart ( const uint8_t bitmap[],
int16_t x_part,
int16_t y_part,
int16_t w_bitmap,
int16_t h_bitmap,
int16_t x,
int16_t y,
int16_t w,
int16_t h,
bool invert = false,
bool mirror_y = false,
bool pgm = false )

Definition at line 240 of file GxEPD2_270c.cpp.

242{
243 writeImagePart(bitmap, x_part, y_part, w_bitmap, h_bitmap, x, y, w, h, invert, mirror_y, pgm);
244 refresh(x, y, w, h);
245}

◆ drawNative()

void GxEPD2_270c::drawNative ( const uint8_t * data1,
const uint8_t * data2,
int16_t x,
int16_t y,
int16_t w,
int16_t h,
bool invert = false,
bool mirror_y = false,
bool pgm = false )

Definition at line 260 of file GxEPD2_270c.cpp.

261{
262 writeNative(data1, data2, x, y, w, h, invert, mirror_y, pgm);
263 refresh(x, y, w, h);
264}
void writeNative(const uint8_t *data1, const uint8_t *data2, int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)

◆ hibernate()

void GxEPD2_270c::hibernate ( )
virtual

Implements GxEPD2_EPD.

Definition at line 306 of file GxEPD2_270c.cpp.

307{
308 _PowerOff();
309 if (_rst >= 0)
310 {
311 _writeCommand(0x07); // deep sleep
312 _writeData(0xA5); // check code
313 _hibernating = true;
314 }
315}
void _writeCommand(uint8_t c)
int16_t _rst
Definition GxEPD2_EPD.h:112
bool _hibernating
Definition GxEPD2_EPD.h:118

◆ powerOff()

void GxEPD2_270c::powerOff ( void )
virtual

Implements GxEPD2_EPD.

Definition at line 301 of file GxEPD2_270c.cpp.

302{
303 _PowerOff();
304}

◆ refresh() [1/2]

void GxEPD2_270c::refresh ( bool partial_update_mode = false)
virtual

Implements GxEPD2_EPD.

Definition at line 266 of file GxEPD2_270c.cpp.

267{
268 if (partial_update_mode) refresh(0, 0, WIDTH, HEIGHT);
269 else _Update_Full();
270}

◆ refresh() [2/2]

void GxEPD2_270c::refresh ( int16_t x,
int16_t y,
int16_t w,
int16_t h )
virtual

Implements GxEPD2_EPD.

Definition at line 272 of file GxEPD2_270c.cpp.

273{
274 // intersection with screen
275 int16_t w1 = x < 0 ? w + x : w; // reduce
276 int16_t h1 = y < 0 ? h + y : h; // reduce
277 int16_t x1 = x < 0 ? 0 : x; // limit
278 int16_t y1 = y < 0 ? 0 : y; // limit
279 w1 = x1 + w1 < int16_t(WIDTH) ? w1 : int16_t(WIDTH) - x1; // limit
280 h1 = y1 + h1 < int16_t(HEIGHT) ? h1 : int16_t(HEIGHT) - y1; // limit
281 if ((w1 <= 0) || (h1 <= 0)) return;
282 // make x1, w1 multiple of 8
283 w1 += x1 % 8;
284 if (w1 % 8 > 0) w1 += 8 - w1 % 8;
285 x1 -= x1 % 8;
286 //_refreshWindow(x1, y1, w1, h1);
287 w1 = (w1 + 7 + (x1 % 8)) & 0xfff8; // byte boundary exclusive (round up)
288 h1 = gx_uint16_min(h1, 256); // strange controller error
289 _writeCommand(0x16);
290 _writeData(x1 >> 8);
291 _writeData(x1 & 0xf8);
292 _writeData(y1 >> 8);
293 _writeData(y1 & 0xff);
294 _writeData(w1 >> 8);
295 _writeData(w1 & 0xf8);
296 _writeData(h1 >> 8);
297 _writeData(h1 & 0xff);
299}
static const uint16_t partial_refresh_time
Definition GxEPD2_270c.h:32
void _waitWhileBusy(const char *comment=0, uint16_t busy_time=5000)
static uint16_t gx_uint16_min(uint16_t a, uint16_t b)
Definition GxEPD2_EPD.h:89

◆ writeImage() [1/2]

void GxEPD2_270c::writeImage ( const uint8_t * black,
const uint8_t * color,
int16_t x,
int16_t y,
int16_t w,
int16_t h,
bool invert = false,
bool mirror_y = false,
bool pgm = false )

Definition at line 68 of file GxEPD2_270c.cpp.

69{
70 if (_initial_write) writeScreenBuffer(); // initial full screen buffer clean
71 delay(1); // yield() to avoid WDT on ESP8266 and ESP32
72 int16_t wb = (w + 7) / 8; // width bytes, bitmaps are padded
73 x -= x % 8; // byte boundary
74 w = wb * 8; // byte boundary
75 int16_t x1 = x < 0 ? 0 : x; // limit
76 int16_t y1 = y < 0 ? 0 : y; // limit
77 int16_t w1 = x + w < int16_t(WIDTH) ? w : int16_t(WIDTH) - x; // limit
78 int16_t h1 = y + h < int16_t(HEIGHT) ? h : int16_t(HEIGHT) - y; // limit
79 int16_t dx = x1 - x;
80 int16_t dy = y1 - y;
81 w1 -= dx;
82 h1 -= dy;
83 if ((w1 <= 0) || (h1 <= 0)) return;
84 _Init_Part();
85 _setPartialRamArea_270c(0x14, x1, y1, w1, h1);
86 for (int16_t i = 0; i < h1; i++)
87 {
88 for (int16_t j = 0; j < w1 / 8; j++)
89 {
90 uint8_t data = 0xFF;
91 if (black)
92 {
93 // use wb, h of bitmap for index!
94 int16_t idx = mirror_y ? j + dx / 8 + ((h - 1 - (i + dy))) * wb : j + dx / 8 + (i + dy) * wb;
95 if (pgm)
96 {
97#if defined(__AVR) || defined(ESP8266) || defined(ESP32)
98 data = pgm_read_byte(&black[idx]);
99#else
100 data = black[idx];
101#endif
102 }
103 else
104 {
105 data = black[idx];
106 }
107 if (invert) data = ~data;
108 }
109 _writeData(~data);
110 }
111 }
112 _setPartialRamArea_270c(0x15, x1, y1, w1, h1);
113 for (int16_t i = 0; i < h1; i++)
114 {
115 for (int16_t j = 0; j < w1 / 8; j++)
116 {
117 uint8_t data = 0xFF;
118 if (color)
119 {
120 // use wb, h of bitmap for index!
121 int16_t idx = mirror_y ? j + dx / 8 + ((h - 1 - (i + dy))) * wb : j + dx / 8 + (i + dy) * wb;
122 if (pgm)
123 {
124#if defined(__AVR) || defined(ESP8266) || defined(ESP32)
125 data = pgm_read_byte(&color[idx]);
126#else
127 data = color[idx];
128#endif
129 }
130 else
131 {
132 data = color[idx];
133 }
134 if (invert) data = ~data;
135 }
136 _writeData(~data);
137 }
138 }
139 delay(1); // yield() to avoid WDT on ESP8266 and ESP32
140}
void writeScreenBuffer(uint8_t value=0xFF)

◆ writeImage() [2/2]

void GxEPD2_270c::writeImage ( const uint8_t bitmap[],
int16_t x,
int16_t y,
int16_t w,
int16_t h,
bool invert = false,
bool mirror_y = false,
bool pgm = false )
virtual

Implements GxEPD2_EPD.

Definition at line 63 of file GxEPD2_270c.cpp.

64{
65 writeImage(bitmap, NULL, x, y, w, h, invert, mirror_y, pgm);
66}

◆ writeImagePart() [1/2]

void GxEPD2_270c::writeImagePart ( const uint8_t * black,
const uint8_t * color,
int16_t x_part,
int16_t y_part,
int16_t w_bitmap,
int16_t h_bitmap,
int16_t x,
int16_t y,
int16_t w,
int16_t h,
bool invert = false,
bool mirror_y = false,
bool pgm = false )

Definition at line 148 of file GxEPD2_270c.cpp.

150{
151 if (_initial_write) writeScreenBuffer(); // initial full screen buffer clean
152 delay(1); // yield() to avoid WDT on ESP8266 and ESP32
153 if ((w_bitmap < 0) || (h_bitmap < 0) || (w < 0) || (h < 0)) return;
154 if ((x_part < 0) || (x_part >= w_bitmap)) return;
155 if ((y_part < 0) || (y_part >= h_bitmap)) return;
156 int16_t wb_bitmap = (w_bitmap + 7) / 8; // width bytes, bitmaps are padded
157 x_part -= x_part % 8; // byte boundary
158 w = w_bitmap - x_part < w ? w_bitmap - x_part : w; // limit
159 h = h_bitmap - y_part < h ? h_bitmap - y_part : h; // limit
160 x -= x % 8; // byte boundary
161 w = 8 * ((w + 7) / 8); // byte boundary, bitmaps are padded
162 int16_t x1 = x < 0 ? 0 : x; // limit
163 int16_t y1 = y < 0 ? 0 : y; // limit
164 int16_t w1 = x + w < int16_t(WIDTH) ? w : int16_t(WIDTH) - x; // limit
165 int16_t h1 = y + h < int16_t(HEIGHT) ? h : int16_t(HEIGHT) - y; // limit
166 int16_t dx = x1 - x;
167 int16_t dy = y1 - y;
168 w1 -= dx;
169 h1 -= dy;
170 if ((w1 <= 0) || (h1 <= 0)) return;
171 if (!_using_partial_mode) _Init_Part();
172 _setPartialRamArea_270c(0x14, x1, y1, w1, h1);
173 for (int16_t i = 0; i < h1; i++)
174 {
175 for (int16_t j = 0; j < w1 / 8; j++)
176 {
177 uint8_t data;
178 // use wb_bitmap, h_bitmap of bitmap for index!
179 int16_t idx = mirror_y ? x_part / 8 + j + dx / 8 + ((h_bitmap - 1 - (y_part + i + dy))) * wb_bitmap : x_part / 8 + j + dx / 8 + (y_part + i + dy) * wb_bitmap;
180 if (pgm)
181 {
182#if defined(__AVR) || defined(ESP8266) || defined(ESP32)
183 data = pgm_read_byte(&black[idx]);
184#else
185 data = black[idx];
186#endif
187 }
188 else
189 {
190 data = black[idx];
191 }
192 if (invert) data = ~data;
193 _writeData(~data);
194 }
195 }
196 _setPartialRamArea_270c(0x15, x1, y1, w1, h1);
197 for (int16_t i = 0; i < h1; i++)
198 {
199 for (int16_t j = 0; j < w1 / 8; j++)
200 {
201 uint8_t data = 0xFF;
202 if (color)
203 {
204 // use wb_bitmap, h_bitmap of bitmap for index!
205 int16_t idx = mirror_y ? x_part / 8 + j + dx / 8 + ((h_bitmap - 1 - (y_part + i + dy))) * wb_bitmap : x_part / 8 + j + dx / 8 + (y_part + i + dy) * wb_bitmap;
206 if (pgm)
207 {
208#if defined(__AVR) || defined(ESP8266) || defined(ESP32)
209 data = pgm_read_byte(&color[idx]);
210#else
211 data = color[idx];
212#endif
213 }
214 else
215 {
216 data = color[idx];
217 }
218 if (invert) data = ~data;
219 }
220 _writeData(~data);
221 }
222 }
223 delay(1); // yield() to avoid WDT on ESP8266 and ESP32
224}
bool _using_partial_mode
Definition GxEPD2_EPD.h:118

◆ writeImagePart() [2/2]

void GxEPD2_270c::writeImagePart ( const uint8_t bitmap[],
int16_t x_part,
int16_t y_part,
int16_t w_bitmap,
int16_t h_bitmap,
int16_t x,
int16_t y,
int16_t w,
int16_t h,
bool invert = false,
bool mirror_y = false,
bool pgm = false )
virtual

Implements GxEPD2_EPD.

Definition at line 142 of file GxEPD2_270c.cpp.

144{
145 writeImagePart(bitmap, NULL, x_part, y_part, w_bitmap, h_bitmap, x, y, w, h, invert, mirror_y, pgm);
146}

◆ writeNative()

void GxEPD2_270c::writeNative ( const uint8_t * data1,
const uint8_t * data2,
int16_t x,
int16_t y,
int16_t w,
int16_t h,
bool invert = false,
bool mirror_y = false,
bool pgm = false )

Definition at line 226 of file GxEPD2_270c.cpp.

227{
228 if (data1)
229 {
230 writeImage(data1, x, y, w, h, invert, mirror_y, pgm);
231 }
232}

◆ writeScreenBuffer() [1/2]

void GxEPD2_270c::writeScreenBuffer ( uint8_t black_value,
uint8_t color_value )

Definition at line 47 of file GxEPD2_270c.cpp.

48{
49 _initial_write = false; // initial full screen buffer clean done
50 _Init_Part();
51 _setPartialRamArea_270c(0x14, 0, 0, WIDTH, HEIGHT);
52 for (uint32_t i = 0; i < uint32_t(WIDTH) * uint32_t(HEIGHT) / 8; i++)
53 {
54 _writeData(~black_value);
55 }
56 _setPartialRamArea_270c(0x15, 0, 0, WIDTH, HEIGHT);
57 for (uint32_t i = 0; i < uint32_t(WIDTH) * uint32_t(HEIGHT) / 8; i++)
58 {
59 _writeData(~color_value);
60 }
61}

◆ writeScreenBuffer() [2/2]

void GxEPD2_270c::writeScreenBuffer ( uint8_t value = 0xFF)
virtual

Implements GxEPD2_EPD.

Definition at line 42 of file GxEPD2_270c.cpp.

43{
44 writeScreenBuffer(value, 0xFF);
45}

Member Data Documentation

◆ full_refresh_time

const uint16_t GxEPD2_270c::full_refresh_time = 16000
static

Definition at line 31 of file GxEPD2_270c.h.

◆ hasColor

const bool GxEPD2_270c::hasColor = true
static

Definition at line 26 of file GxEPD2_270c.h.

◆ hasFastPartialUpdate

const bool GxEPD2_270c::hasFastPartialUpdate = false
static

Definition at line 28 of file GxEPD2_270c.h.

◆ hasPartialUpdate

const bool GxEPD2_270c::hasPartialUpdate = true
static

Definition at line 27 of file GxEPD2_270c.h.

◆ HEIGHT

const uint16_t GxEPD2_270c::HEIGHT = 264
static

Definition at line 24 of file GxEPD2_270c.h.

◆ panel

const GxEPD2::Panel GxEPD2_270c::panel = GxEPD2::GDEW027C44
static

Definition at line 25 of file GxEPD2_270c.h.

◆ partial_refresh_time

const uint16_t GxEPD2_270c::partial_refresh_time = 16000
static

Definition at line 32 of file GxEPD2_270c.h.

◆ power_off_time

const uint16_t GxEPD2_270c::power_off_time = 40
static

Definition at line 30 of file GxEPD2_270c.h.

◆ power_on_time

const uint16_t GxEPD2_270c::power_on_time = 20
static

Definition at line 29 of file GxEPD2_270c.h.

◆ WIDTH

const uint16_t GxEPD2_270c::WIDTH = 176
static

Definition at line 22 of file GxEPD2_270c.h.

◆ WIDTH_VISIBLE

const uint16_t GxEPD2_270c::WIDTH_VISIBLE = WIDTH
static

Definition at line 23 of file GxEPD2_270c.h.


The documentation for this class was generated from the following files: