Used environment¶
The highView Library Suite is developed in C++ and relies on objects.
Basic edition SDK¶
The basic edition leverages the Arduino SDK as a hardware abstraction layer for the peripherals GPIO, UART, SPI and I²C, .
The Arduino SDK supports a large range of platforms and boards, including AVR, Cortex-M, Cortex-A, ESP32, MSP430, PIC32 and more.
Advanced edition pre-compiled libraries¶
The pre-compiled libraries of the advanced edition are generated according to the Precompiled binaries procedure of the Library specifications page for Arduino CLI 0.23
.
They are available for the following platforms:
-
32-bits Cortex-M4 Texas Instruments MSP432P401R, with IDE Energia
1.8.11E23
and boards package MSP432 EMT RED5.29.0
; -
32-bits Espressif ESP32, with IDE Arduino
1.8.19
and boards package ESP322.0.3
; -
32-bit Cortex-M0+ Raspberry Pi RP2050, with IDE Arduino
1.8.19
and boards package Pico RP20402.2.0
.
Other platforms may be available on request.
SDK-agnostic commercial edition¶
However, the commercial edition is SDK-agnostic and only requires standard C/C++ libraries. The peripherals library should be adapted accordingly.
Adaptations have been successfully tested against the following SDKs:
-
ARM mbedOS
5.14.2
for ARM Cortex-M MCU-based boards; -
BCM2835 library
1.71
for the Raspberry Pi boards; -
MRAA library
2.2.0
for the Raspberry Pi boards.
Version management¶
Each library has a release number to be checked at pre-processing.
Each library has its own release number.
#define hV_FONT_TERMINAL_RELEASE 503
The release number is checked at pre-processing.
#include "hV_Font_Terminal.h"
#if hV_FONT_TERMINAL_RELEASE < 504
#error Required hV_FONT_TERMINAL_RELEASE 504
#endif
In this example, if the hV_Font_Terminal library release is 503
, the pre-processor expects 504
and prompts an error message:
#error Required hV_FONT_TERMINAL_RELEASE 504
highView library suite¶
The Pervasive Displays Library Suite relies on the highView library suite technologies.
The highView library suite provides a common high-level interface to drive multiple screen technologies, such as TFT, STN, OLED and e-paper, resistive and capacitive touch, and enhanced haptic feed-back.
The suite leverages objects for modular design, focuses on light footprint for memory and processing, and ensures compatibility with previous iterations of the suite.