eink_290inch  2.0.0.0
Main Page

eINK 2.90 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 Eink290Inch 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 Eink290Inch Click driver.

Standard key functions :

Example key functions :

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.90 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.
EINK290INCH_MAP_MIKROBUS( cfg, MIKROBUS_1 );
eink_290inch_init( &eink_290inch, &cfg );
eink_290_start_config( &eink_290inch );
eink_290_set_lut( &eink_290inch, EINK290_LUT_TABLE_1, 70 );
Delay_ms( 1000 );
#ifndef IMAGE_MODE_ONLY
eink_290_set_font( &eink_290inch, &cfg_font );
text_set.n_char = 4;
text_set.text_x = 5;
text_set.text_y = 50;
eink_290_text( &eink_290inch, &demo_text[ 0 ], &text_set );
Delay_ms( 1000 );
eink_290_set_font( &eink_290inch, &cfg_font );
text_set.n_char = 7;
text_set.text_x = 5;
text_set.text_y = 90;
eink_290_text( &eink_290inch, &demo_text1[ 0 ], &text_set );
Delay_ms( 1000 );
cfg_font.p_font = &guiFont_Tahoma_8_Regular[ 0 ];
eink_290_set_font( &eink_290inch, &cfg_font );
text_set.n_char = 9;
text_set.text_x = 5;
text_set.text_y = 120;
eink_290_text( &eink_290inch, &demo_text2[ 0 ], &text_set );
Delay_ms( 1000 );
#endif
}

Application Task

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

void application_task ( void )
{
eink_290_display_image( &eink_290inch, &demoImage_light[ 0 ] );
Delay_1sec( );
eink_290_display_image( &eink_290inch, &demoImage_dark[ 0 ] );
Delay_1sec( );
Delay_1sec( );
eink_290_display_image( &eink_290inch, &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.Eink290Inch

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.


EINK290_FO_HORIZONTAL
#define EINK290_FO_HORIZONTAL
Definition: eink_290inch.h:90
eink_290inch_font_t
Definition: eink_290inch.h:129
eink_290_display_image
void eink_290_display_image(eink_290inch_t *ctx, const uint8_t *image_buffer)
Display image function.
demo_text
char demo_text[5]
Definition: main.c:56
guiFont_Tahoma_10_Regular
const uint8_t guiFont_Tahoma_10_Regular[2040]
Definition: eINK_290_display_font.h:1960
eink_290inch_set_text_t::n_char
uint8_t n_char
Definition: eink_290inch.h:158
demo_text2
char demo_text2[10]
Definition: main.c:58
guiFont_Tahoma_18_Regular
const uint8_t guiFont_Tahoma_18_Regular[5525]
Definition: eINK_290_display_font.h:608
demoImage_light_180
const uint8_t demoImage_light_180[4736]
Definition: eINK_290_display_image.h:2
application_task
void application_task(void)
Definition: main.c:127
EINK290_LUT_TABLE_1
const uint8_t EINK290_LUT_TABLE_1[70]
Definition: main.c:62
eink_290inch_set_text_t
Definition: eink_290inch.h:156
eink_290_set_font
void eink_290_set_font(eink_290inch_t *ctx, eink_290inch_font_t *cfg_font)
Set font function.
eink_290inch_set_text_t::text_x
uint16_t text_x
Definition: eink_290inch.h:159
demo_text1
char demo_text1[8]
Definition: main.c:57
EINK290INCH_MAP_MIKROBUS
#define EINK290INCH_MAP_MIKROBUS(cfg, mikrobus)
Definition: eink_290inch.h:52
eink_290_set_lut
void eink_290_set_lut(eink_290inch_t *ctx, const uint8_t *lut, uint8_t lut_cnt)
Set LUT table.
eink_290inch_init
EINK290INCH_RETVAL eink_290inch_init(eink_290inch_t *ctx, eink_290inch_cfg_t *cfg)
Initialization function.
eink_290_start_config
void eink_290_start_config(eink_290inch_t *ctx)
Start configuration display.
demoImage_dark
const uint8_t demoImage_dark[4736]
Definition: eINK_290_display_image.h:604
eink_290inch_cfg_setup
void eink_290inch_cfg_setup(eink_290inch_cfg_t *cfg)
Config Object Initialization function.
eink_290inch_font_t::color
uint16_t color
Definition: eink_290inch.h:132
eink_290inch_set_text_t::text_y
uint16_t text_y
Definition: eink_290inch.h:160
demoImage_light
const uint8_t demoImage_light[4736]
Definition: eINK_290_display_image.h:905
guiFont_Tahoma_8_Regular
const uint8_t guiFont_Tahoma_8_Regular[1679]
Definition: eINK_290_display_font.h:1759
application_init
void application_init(void)
Definition: main.c:78
eink_290inch_cfg_t
Click configuration structure definition.
Definition: eink_290inch.h:196
eink_290_text
void eink_290_text(eink_290inch_t *ctx, char *text, eink_290inch_set_text_t *text_set)
Function for draw text on the screen.
EINK290_SCREEN_COLOR_WHITE
#define EINK290_SCREEN_COLOR_WHITE
Definition: eink_290inch.h:85
demoImage_dark_180
const uint8_t demoImage_dark_180[4736]
Definition: eINK_290_display_image.h:302
eink_290inch_font_t::p_font
const uint8_t * p_font
Definition: eink_290inch.h:131
eink_290inch_font_t::orientation
uint8_t orientation
Definition: eink_290inch.h:133