eink_213inch  2.0.0.0
Main Page

eINK 2.13 inch display

eINK click is an adapter Click boardâ„¢, used to interface a compatible eINK display with the host MCU.

click Product page


Click library

  • Author : MikroE Team
  • Date : Feb 2020.
  • Type : SPI type

Software Support

We provide a library for the eInk213Inch Click as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.

Package can be downloaded/installed directly form compilers IDE(recommended way), or downloaded from our LibStock, or found on mikroE github account.

Library Description

This library contains API for eInk213Inch Click driver.

Standard key functions :

Example key functions :

  • Set LUT table

    void eink_213_set_lut ( eink_213inch_t *ctx, const uint8_t *lut, uint8_t n_bytes );

  • Function for draw text on the screen

    void eink_213_text ( eink_213inch_t *ctx, char *text, eink_213inch_set_text_t *text_set );

  • Display image function

    void eink_213_display_image ( eink_213inch_t ctx, const uint8_t image_buffer );

Examples Description

This application demonstrates the use of eINK click board.

The demo application is composed of two sections :

Application Init

Initializes the driver and configures the click board for 2.13 inch eINK display. After that, if the TEXT mode is supported, shows a desired text messages on the display.

void application_init ( void )
{
// Click initialization.
EINK213INCH_MAP_MIKROBUS( cfg, MIKROBUS_1 );
eink_213inch_init( &eink_213inch, &cfg );
eink_213_start_config( &eink_213inch );
eink_213_set_lut( &eink_213inch, &EINK213_BIG_LUT_TABLE[ 0 ], 70 );
Delay_ms( 1000 );
#ifndef IMAGE_MODE_ONLY
cfg_font.p_font = &guiFont_Tahoma_18_Regular[ 0 ];
eink_213_set_font( &eink_213inch, &cfg_font );
set_text.n_char = 4;
set_text.text_x = 5;
set_text.text_y = 50;
eink_213_text( &eink_213inch, &demo_text[ 0 ], &set_text );
cfg_font.p_font = &guiFont_Tahoma_10_Regular[ 0 ];
eink_213_set_font( &eink_213inch, &cfg_font );
set_text.n_char = 7;
set_text.text_x = 5;
set_text.text_y = 90;
eink_213_text( &eink_213inch, &demo_text1[ 0 ], &set_text );
cfg_font.p_font = &guiFont_Tahoma_8_Regular[ 0 ];
eink_213_set_font( &eink_213inch, &cfg_font );
set_text.n_char = 9;
set_text.text_x = 5;
set_text.text_y = 120;
eink_213_text( &eink_213inch, &demo_text2[ 0 ], &set_text );
#endif
Delay_ms( 1000 );
}

Application Task

Draws four demo images to the display with a one-second delay between each drawing.

void application_task ( void )
{
eink_213_display_image( &eink_213inch, &demoImage_light[ 0 ] );
Delay_1sec( );
eink_213_display_image( &eink_213inch, &demoImage_dark[ 0 ] );
Delay_1sec( );
Delay_1sec( );
eink_213_display_image( &eink_213inch, &demoImage_dark_180[ 0 ] );
Delay_1sec( );
}

Note

Due to insuficient RAM memory, only the IMAGE mode is supported with 8-bit PIC microcontrollers.

The full application code, and ready to use projects can be installed directly form compilers IDE(recommneded) or found on LibStock page or mikroE GitHub accaunt.

Other mikroE Libraries used in the example:

  • MikroSDK.Board
  • MikroSDK.Log
  • Click.eInk213Inch

Additional notes and informations

Depending on the development board you are using, you may need USB UART click, USB UART 2 Click or RS232 Click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all Mikroelektronika compilers, or any other terminal application of your choice, can be used to read the message.


eink_213inch_set_text_t::n_char
uint8_t n_char
Definition: eink_213inch.h:167
demoImage_dark_180
const const uint8_t demoImage_dark_180[4000]
Definition: eINK_213_display_image.h:767
eink_213inch_set_text_t::text_y
uint16_t text_y
Definition: eink_213inch.h:169
demo_text
char demo_text[5]
Definition: main.c:64
eink_213inch_cfg_setup
void eink_213inch_cfg_setup(eink_213inch_cfg_t *cfg)
Config Object Initialization function.
eink_213inch_font_t
Definition: eink_213inch.h:139
demo_text2
char demo_text2[10]
Definition: main.c:66
demoImage_light
const uint8_t demoImage_light[4000]
Definition: eINK_213_display_image.h:1
eink_213_display_image
void eink_213_display_image(eink_213inch_t *ctx, const uint8_t *image_buffer)
Display image function.
guiFont_Tahoma_8_Regular
uint8_t guiFont_Tahoma_8_Regular[1679]
Definition: eINK_213_display_font.h:1759
eink_213_text
void eink_213_text(eink_213inch_t *ctx, char *text, eink_213inch_set_text_t *text_set)
Function for draw text on the screen.
application_task
void application_task(void)
Definition: main.c:136
eink_213inch_set_text_t
Definition: eink_213inch.h:166
demo_text1
char demo_text1[8]
Definition: main.c:65
eink_213inch_init
EINK213INCH_RETVAL eink_213inch_init(eink_213inch_t *ctx, eink_213inch_cfg_t *cfg)
Initialization function.
eink_213inch_set_text_t::text_x
uint16_t text_x
Definition: eink_213inch.h:168
guiFont_Tahoma_10_Regular
uint8_t guiFont_Tahoma_10_Regular[2040]
Definition: eINK_213_display_font.h:1960
eink_213inch_font_t::color
uint16_t color
Definition: eink_213inch.h:141
eink_213inch_font_t::orientation
uint8_t orientation
Definition: eink_213inch.h:142
eink_213_start_config
void eink_213_start_config(eink_213inch_t *ctx)
Start configuration display.
EINK213_FO_HORIZONTAL
#define EINK213_FO_HORIZONTAL
Definition: eink_213inch.h:99
application_init
void application_init(void)
Definition: main.c:86
demoImage_dark
const uint8_t demoImage_dark[4000]
Definition: eINK_213_display_image.h:256
EINK213_SCREEN_COLOR_WHITE
#define EINK213_SCREEN_COLOR_WHITE
Definition: eink_213inch.h:94
EINK213INCH_MAP_MIKROBUS
#define EINK213INCH_MAP_MIKROBUS(cfg, mikrobus)
Definition: eink_213inch.h:53
eink_213inch_cfg_t
Click configuration structure definition.
Definition: eink_213inch.h:206
eink_213inch_font_t::p_font
const uint8_t * p_font
Definition: eink_213inch.h:140
guiFont_Tahoma_18_Regular
uint8_t guiFont_Tahoma_18_Regular[5525]
Definition: eINK_213_display_font.h:608
demoImage_light_180
const uint8_t demoImage_light_180[4000]
Definition: eINK_213_display_image.h:511
EINK213_BIG_LUT_TABLE
const uint8_t EINK213_BIG_LUT_TABLE[70]
Definition: main.c:70
eink_213_set_font
void eink_213_set_font(eink_213inch_t *ctx, eink_213inch_font_t *cfg_font)
Set font function.
eink_213_set_lut
void eink_213_set_lut(eink_213inch_t *ctx, const uint8_t *lut, uint8_t n_bytes)
Set LUT table.