ePaper_EXT3_Basic_Library Reference Manual  501
Library for Pervasive Displays EXT3 - Basic level
hV_Configuration.h
Go to the documentation of this file.
1 
43 // SDK
44 #if defined(ENERGIA) // LaunchPad specific
45 #include "Energia.h"
46 #else // Arduino general
47 #include "Arduino.h"
48 #endif // end IDE
49 
50 #ifndef hV_CONFIGURATION_RELEASE
51 #define hV_CONFIGURATION_RELEASE 507
55 
61 #define eScreen_EPD_EXT3_t uint32_t
62 #define eScreen_EPD_EXT3_154 (uint32_t)0x1500
65 #define eScreen_EPD_EXT3_213 (uint32_t)0x2100
66 #define eScreen_EPD_EXT3_266 (uint32_t)0x2600
67 #define eScreen_EPD_EXT3_271 (uint32_t)0x2700
68 #define eScreen_EPD_EXT3_271_Partial (uint32_t)0x012709
69 #define eScreen_EPD_EXT3_287 (uint32_t)0x2800
70 #define eScreen_EPD_EXT3_290 (uint32_t)0x2900
71 #define eScreen_EPD_EXT3_370 (uint32_t)0x3700
72 #define eScreen_EPD_EXT3_417 (uint32_t)0x4100
73 #define eScreen_EPD_EXT3_437 (uint32_t)0x4300
74 #define eScreen_EPD_EXT3_565 (uint32_t)0x5600
75 #define eScreen_EPD_EXT3_581 (uint32_t)0x580B
76 #define eScreen_EPD_EXT3_741 (uint32_t)0x740B
77 #define eScreen_EPD_EXT3_969 (uint32_t)0x960B
78 #define eScreen_EPD_EXT3_B98 (uint32_t)0xB90B
79 
80 #define eScreen_EPD_EXT3_581_0B (uint32_t)0x580B
82 #define eScreen_EPD_EXT3_741_0B (uint32_t)0x740B
83 #define eScreen_EPD_EXT3_581_08 (uint32_t)0x5808
84 #define eScreen_EPD_EXT3_741_08 (uint32_t)0x7408
85 
86 #define eScreen_EPD_EXT3_969_0B (uint32_t)0x960B
88 #define eScreen_EPD_EXT3_B98_0B (uint32_t)0xB90B
89 #define eScreen_EPD_EXT3_969_08 (uint32_t)0x9608
90 #define eScreen_EPD_EXT3_B98_08 (uint32_t)0xB908
91 
92 #define eScreen_EPD_EXT3_154_0C (uint32_t)0x150C
94 #define eScreen_EPD_EXT3_213_09 (uint32_t)0x2109
95 #define eScreen_EPD_EXT3_213_0C (uint32_t)0x210C
96 #define eScreen_EPD_EXT3_266_09 (uint32_t)0x2609
97 #define eScreen_EPD_EXT3_266_0C (uint32_t)0x260C
98 #define eScreen_EPD_EXT3_271_09 (uint32_t)0x2709
99 #define eScreen_EPD_EXT3_287_09 (uint32_t)0x2809
100 #define eScreen_EPD_EXT3_370_0C (uint32_t)0x370C
101 #define eScreen_EPD_EXT3_417_05 (uint32_t)0x4105
102 #define eScreen_EPD_EXT3_417_0D (uint32_t)0x410D
103 #define eScreen_EPD_EXT3_437_0C (uint32_t)0x430C
104 
105 #define eScreen_EPD_EXT3_437_08 (uint32_t)0x4308
107 
109 #define frameSize_EPD_EXT3_154 (uint32_t)(5776)
116 #define frameSize_EPD_EXT3_213 (uint32_t)(5512)
117 #define frameSize_EPD_EXT3_266 (uint32_t)(11248)
118 #define frameSize_EPD_EXT3_271 (uint32_t)(11616)
119 #define frameSize_EPD_EXT3_287 (uint32_t)(9472)
120 #define frameSize_EPD_EXT3_370 (uint32_t)(24960)
121 #define frameSize_EPD_EXT3_417 (uint32_t)(30000)
122 #define frameSize_EPD_EXT3_437 (uint32_t)(21120)
123 #define frameSize_EPD_EXT3_565 (uint32_t)(33600)
124 #define frameSize_EPD_EXT3_581 (uint32_t)(46080)
125 #define frameSize_EPD_EXT3_741 (uint32_t)(96000)
126 #define frameSize_EPD_EXT3_969 (uint32_t)(161280)
127 #define frameSize_EPD_EXT3_B98 (uint32_t)(184320)
128 
131 
135 #define NOT_CONNECTED (uint8_t)0xff
136 
140 struct pins_t
141 {
144  uint8_t panelBusy;
145  uint8_t panelDC;
146  uint8_t panelReset;
147  uint8_t flashCS;
150  uint8_t panelCS;
151  uint8_t panelCSS;
153  uint8_t flashCSS;
154  uint8_t touchReset;
157  uint8_t touchInt;
158  uint8_t cardCS;
159  uint8_t cardDetect;
160 };
161 
166 {
167  .panelBusy = 11,
168  .panelDC = 12,
169  .panelReset = 13,
170  .flashCS = 18,
171  .panelCS = 19,
172  .panelCSS = 39,
173  .flashCSS = 38,
174  .touchReset = NOT_CONNECTED,
175  .touchInt = NOT_CONNECTED,
176  .cardCS = NOT_CONNECTED,
177  .cardDetect = NOT_CONNECTED,
178 };
179 
184 {
185  .panelBusy = 5,
186  .panelDC = 6,
187  .panelReset = 19,
188  .flashCS = 24,
189  .panelCS = 26,
190  .panelCSS = 37,
191  .flashCSS = 27,
192  .touchReset = NOT_CONNECTED,
193  .touchInt = NOT_CONNECTED,
194  .cardCS = NOT_CONNECTED,
195  .cardDetect = NOT_CONNECTED,
196 };
197 
202 {
203  .panelBusy = 28,
204  .panelDC = 19,
205  .panelReset = 30,
206  .flashCS = 18,
207  .panelCS = 19,
208  .panelCSS = 39,
209  .flashCSS = 38,
210  .touchReset = NOT_CONNECTED,
211  .touchInt = NOT_CONNECTED,
212  .cardCS = NOT_CONNECTED,
213  .cardDetect = NOT_CONNECTED,
214 };
215 
220 {
221  .panelBusy = 7,
222  .panelDC = 8,
223  .panelReset = 25,
224  .flashCS = 22,
225  .panelCS = 27,
226  .panelCSS = 23,
227  .flashCSS = 24,
228  .touchReset = NOT_CONNECTED,
229  .touchInt = NOT_CONNECTED,
230  .cardCS = NOT_CONNECTED,
231  .cardDetect = NOT_CONNECTED,
232 };
233 
238 {
239  .panelBusy = 13,
240  .panelDC = 12,
241  .panelReset = 11,
242  .flashCS = 10,
243  .panelCS = 5,
244  .panelCSS = 14,
245  .flashCSS = 15,
246  .touchReset = NOT_CONNECTED,
247  .touchInt = NOT_CONNECTED,
248  .cardCS = NOT_CONNECTED,
249  .cardDetect = NOT_CONNECTED,
250 };
251 
256 {
257  .panelBusy = 13,
258  .panelDC = 12,
259  .panelReset = 11,
260  .flashCS = 10,
261  .panelCS = 9,
262  .panelCSS = NOT_CONNECTED,
263  .flashCSS = NOT_CONNECTED,
264  .touchReset = NOT_CONNECTED,
265  .touchInt = NOT_CONNECTED,
266  .cardCS = NOT_CONNECTED,
267  .cardDetect = NOT_CONNECTED,
268 };
269 
274 {
275  .panelBusy = 4,
276  // On Arduino Zero, pins D4 and D2 are reversed
277  .panelDC = 5,
278  .panelReset = 6,
279  .flashCS = 7,
280  .panelCS = 8,
281  .panelCSS = 9,
282  .flashCSS = 10,
283  .touchReset = NOT_CONNECTED,
284  .touchInt = NOT_CONNECTED,
285  .cardCS = NOT_CONNECTED,
286  .cardDetect = NOT_CONNECTED,
287 };
288 // // In case of use of SERCOM
289 // #define SPI_CLOCK_PIN 13 ///< EXT3 pin 2 -> 13
290 // #define SPI_CLOCK_MISO 11 ///< EXT3 pin 6 -> 11
291 // #define SPI_CLOCK_MOSI 12 ///< EXT3 pin 7 -> 12
292 
297 
301 #if defined(ARDUINO_RedBear_Duo)
302 const pins_t boardParticlePhoton =
303 {
304  .panelBusy = D5,
305  .panelDC = D4,
306  .panelReset = D3,
307  .flashCS = D2,
308  .panelCS = D1,
309  .panelCSS = D6,
310  .flashCSS = D0,
311  .touchReset = NOT_CONNECTED,
312  .touchInt = NOT_CONNECTED,
313  .cardCS = NOT_CONNECTED,
314  .cardDetect = NOT_CONNECTED,
315 };
316 
317 const pins_t boardRedBearDuo = boardParticulePhoton;
318 #endif
319 
321 
333 #define USE_FONT_TERMINAL 1
334 
335 #define FONT_MODE USE_FONT_TERMINAL
336 
338 #if (FONT_MODE == USE_FONT_TERMINAL)
348 #define MAX_FONT_SIZE 4
349 #else
350 #define MAX_FONT_SIZE 64
351 #endif
352 
361 #define USE_INTERNAL_MCU 1
362 
363 #define SRAM_MODE USE_INTERNAL_MCU
364 
366 #define USE_hV_SCREEN_SELF 2
378 
379 #define USE_hV_SCREEN USE_hV_SCREEN_SELF
380 
382 #define USE_TOUCH_NONE 0
391 
392 #define TOUCH_MODE USE_TOUCH_NONE
393 
395 #define USE_HAPTICS_NONE 0
403 
404 #define HAPTICS_MODE USE_HAPTICS_NONE
405 
407 #define USE_EXPANDER_NONE 0
415 
416 #define EXPANDER_MODE USE_EXPANDER_NONE
417 
419 #define USE_STRING_OBJECT 1
427 
428 #define STRING_MODE USE_STRING_OBJECT
429 
438 #define USE_SD_NONE 0
439 
440 #define SD_CARD_MODE USE_SD_NONE
441 
443 #endif // hV_CONFIGURATION_RELEASE
const pins_t boardRaspberryPiB
Raspberry Pi B configuration, tested.
Definition: hV_Configuration.h:219
const pins_t boardLaunchPadGCU
MSP5430FR5994 as GCU configuration, tested.
Definition: hV_Configuration.h:201
const pins_t boardNucleo64
ST Nucleo 64, tested.
Definition: hV_Configuration.h:296
uint8_t flashCS
EXT3 pin 8 Violet.
Definition: hV_Configuration.h:149
Board configuration structure.
Definition: hV_Configuration.h:140
const pins_t boardArduinoZero
Arduino Zero configuration, tested.
Definition: hV_Configuration.h:273
uint8_t cardDetect
Separate SD-card board.
Definition: hV_Configuration.h:159
uint8_t panelDC
EXT3 pin 4 Orange.
Definition: hV_Configuration.h:145
uint8_t panelReset
Definition: hV_Configuration.h:146
uint8_t panelBusy
EXT3 pin 3 Red.
Definition: hV_Configuration.h:144
#define NOT_CONNECTED
Not connected pin.
Definition: hV_Configuration.h:135
const pins_t boardCC1352
CC1352 configuration, tested.
Definition: hV_Configuration.h:183
const pins_t boardRaspberryPiPico
Raspberry Pi Pico configuration, tested.
Definition: hV_Configuration.h:237
const pins_t boardLaunchPad
MSP430 and MSP432 LaunchPad configuration, tested.
Definition: hV_Configuration.h:165
uint8_t panelCSS
EXT3 pin 12 Grey2.
Definition: hV_Configuration.h:152
uint8_t flashCSS
Definition: hV_Configuration.h:153
uint8_t touchReset
Separate touch board.
Definition: hV_Configuration.h:156
uint8_t panelCS
EXT3 pin 10 White -> GROUND.
Definition: hV_Configuration.h:150
const pins_t boardFeatherM0
Feather M0 configuration, tested.
Definition: hV_Configuration.h:255
uint8_t cardCS
Separate SD-card board.
Definition: hV_Configuration.h:158
uint8_t touchInt
Separate touch board.
Definition: hV_Configuration.h:157