Viewer¶
The screen of the Viewer is used by all other functions and libraries.
Configure¶
Select the library PDLS_EXT3_Viewer_Touch
corresponding to the Viewer edition.
#define STRING_MODE USE_CHAR_ARRAY
Ensure the string is set to the C-standard char array
supported by the cstring
library among the parameters.
#define STORAGE_MODE USE_LINUX_FILES | USE_SERIAL
Ensure the storage is set to Linux among the parameters. Serial could be added as an option.
#include "PDLS_EXT3_Viewer_Touch.h";
The pre-processor statement includes the screen libraries.
1 2 3 |
|
The constructor Screen_EPD_EXT3_Fast
creates the screen object.
The required parameter is
- The first line sets the model of the screen;
The optional parameters are
- The second line selects the configuration of the main controller board connected to the EXT3.1 extension board. The default value is
boardNone
.
Warning
Although the main controller board can be omitted, it is highly recommended to mention the main controller board with the targeted MCU.
- The third line links to the frame-buffer if declared statically at build-time.
Screen model¶
- Please refer to the Screen model procedure for the screen.
Board configuration¶
This parameter is ignored and can be omitted.
However, it is recommended to specify the main controller board of the project.
- Please refer to the Board configuration procedure for the screen.
Frame-buffer¶
- Please refer to the Frame-buffer procedure for the screen.
Use¶
- Please refer to the Use procedure for the screen.
Except the PDLS_EXT3_Viewer_Touch
library and the specific peripheral library, all the other libraries are identical: shared libraries for fonts, common graphic and text primitives, configuration; all the application libraries for graphics, bar- and QR-code, GUI, Files, serial; and the main program.
At run-time, Viewer offers the keyboard commands and their corresponding functions.
Example¶
This is the core of the code from the example WhoAmI.ino
with two version: simulated with the Viewer edition and connected to an actual screen with the Commercial edition.
Using PDLS_EXT3_Viewer_Touch
of the Viewer edition
// SDK
#include "hV_HAL_Peripherals.h"
// Configuration
#include "hV_Configuration.h"
// Screen
#include "PDLS_EXT3_Viewer_Touch.h"
Screen_EPD_EXT3_Fast myScreen(eScreen_EPD_370_PS_0C_Touch, boardRaspberryPiPico_RP2040);
hV_HAL_begin();
myScreen.begin();
myScreen.gText(4, 4, myScreen.WhoAmI());
myScreen.flushFast();
hV_HAL_demayMilliseconds(4000);
myScreen.regenerate()
hV_HAL_end();
Using PDLS_EXT3_Advanced_Touch
of the Commercial edition
// SDK
#include "hV_HAL_Peripherals.h"
// Configuration
#include "hV_Configuration.h"
// Screen
#include "PDLS_EXT3_Advanced_Touch.h"
Screen_EPD_EXT3_Fast myScreen(eScreen_EPD_370_PS_0C_Touch, boardRaspberryPiPico_RP2040);
hV_HAL_begin();
myScreen.begin();
myScreen.gText(4, 4, myScreen.WhoAmI());
myScreen.flushFast();
hV_HAL_demayMilliseconds(4000);
myScreen.regenerate();
hV_HAL_end();