这是描述信息
Search
Search
Technicalsupport

Technicalsupport

Comparison Among Different Updates of E-paper Display

  • Categories:Sharing
  • Author:
  • Origin:
  • Time of issue:2021-07-08 10:08
  • Views:

(Summary description)

Comparison Among Different Updates of E-paper Display

(Summary description)

  • Categories:Sharing
  • Author:
  • Origin:
  • Time of issue:2021-07-08 10:08
  • Views:
Information

There are four kinds of updates of E-paper display:
1. Full refresh (long, good display effect)
2. Partial refresh(monochrome/tri-color, short, needing full refresh after about the 5th time )
3. Fast refresh(short, quick update)
4. Partially full refresh(to full refresh at a certain area)

 

Test Object: 2.9inch EPD---GDEW029T5D
Note: We provide the results and parameters as reference for you and please contact us if you want to learn more.

 

Platforms

Hardware Connection and IO Settings

Demonstration of Updates

Refresh Time and Current

Comparison Among Codes

 

 

 

 

 

 

 

PLATFORMS

Goodisplay has multiple development plans for driving EPDs. Here we mainly introduce STM32, EPS32 and ESP8266 to you. Users can also drive EPDs via Raspberry Pi/ Raspberry Pi Pico, which you can learn more on our WEBSITE.

 

STM32

 

STM32 based on Cortx-M, has 32-bit microcontroller, supports broad 32-bit applications including high performance, real time, processing digital signal and low-power, low-voltage operation and is a perfectly integrated and easy development kit. There is a broad product line based on STM32 for its industial-standardized core, plenty of tools and softwares to support it. It is an ideal choice for many products. Its MCU, STM32F103VET6 and has related drivers that can be transplanted onto users' development plan to drive EPDs.

ESP8266

 

For easy understanding, we may apprehend the ESP8266 as a MCU with WiFi function, which we can use another MCU to communicate following the same instruction to implement operations. ESP8266 is a serial port WiFi module, with an integrated MCU to realize serial communication. It is easy to learn and small enough for embedded development. It designed for mobile deveces, smart wearables and IoT products. Relyed on multiple patents, it has realized ultra-low power consumption and has power-saving mode for all kinds of related scenarios.

ESP32

 

Likewise,we may also apprehend the ESP32 as a MCU with WiFi+BT function, which we can use another MCU to communicate following the same instruction to implement operations. Compared with ESP8266, it has BT function and a faster and lower-power CPU.It is easy to learn and small enough for embedded development. It designed for mobile deveces, smart wearables and IoT products. Relyed on multiple patents, it has realized ultra-low power consumption and has power-saving mode for all kinds of related scenarios.

 


 

 

 

DEMONSTRATION OF UPDATES

IO settings have already been done previously so that users only need to connect the adaptor board to the main board.
In order to realize different updates users only need to revise the software.
The following section will detail the IO settings:

  CONNECTION   IO SETTINGS
 
Connecting STM32F103VET6
EPD STM32
VCC 3.3V
GND GND
BUSY PE13
RES PE14
D/C PE15
CS PD8
SCK PD9
SDI PD10
  //CS-->PD8     SCK-->PD9     SDO--->PD10
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10; 
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
GPIO_Init(GPIOD, &GPIO_InitStructure);
 
 // D/C--->PE15    RES-->PE14
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_14|GPIO_Pin_15;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
GPIO_Init(GPIOE, &GPIO_InitStructure);
 
 // BUSY--->PE13
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
GPIO_Init(GPIOE, &GPIO_InitStructure);
       
       
       
 
Connecting ESP8266
EPD STM32
VCC 3.3V
GND GND
BUSY D0
RES D1
D/C D2
CS D5
SCK D6
SDI D7
 

//IO settings
int BUSY_Pin = D0;
int RES_Pin = D1;
int DC_Pin = D2;
int CS_Pin = D5;
int SCK_Pin = D6;
int SDI_Pin = D7;

       
       
       
 
Connecting ESP32
EPD STM32
VCC 3.3V
GND GND
BUSY A14
RES A15
D/C A16
CS A17
SCK A18
SDI A19
  //IO settings
int BUSY_Pin = A14;
int RES_Pin = A15;
int DC_Pin = A16;
int CS_Pin = A17;
int SCK_Pin = A18;
int SDI_Pin = A19;

 

 

 

 

 

REFRESH TIME AND CURRENT

Take GDEW029T5D as an example,we can use the methods below to change the price.

       
 

gImage_1

 

gImage_2

 

gImage_3

 

 

 

 

 

Monochrome E-paper Display(GDEW029T5D)

1. Full refresh (long, good display effect)

2. Partial refresh(monochrome, short, needing full refresh after about the 5th time )

3. Fast refresh(short, quick update)

 

 

 

 

 

Tri-color E-paper Display(GDEH029Z13)

1. Full refresh (long, good display effect)

2. Partial refresh(tri-color, short, needing full refresh after about the 5th time )

 

 

 

 

 

REFRESH TIME AND CURRENT

The following results are the representative values of the same EPD(GDEW029T5D) under the same conditions.

 
Type Methods Time(s) Current(mA)
GDEW029T5D (B/W) Full refresh 3s 2.6mA
Partial refresh 0.3s 2.5mA
Fast refresh 0.8s 2.1mA
Partially full refresh 3s 2.6mA
GDEH029Z13(Red) Full refresh 13s 4mA
Partial refresh 0.3s 2.8mA

 

 

 

 

 

 

 

COMPARISON AMONG CODES

GDEW029T5D(B/W)

Main Function

Full refresh

Partial refresh

Fast refresh

Partially full refresh

EPD_init();
PIC_display(gImage_1);
EPD_sleep();

EPD_init();
PIC_display(gImage_2);
EPD_sleep();

EPD_init();
PIC_display(gImage_3);
EPD_sleep();

EPD_init();
EPD_partial_display(0,0,gImage_1,gImage_1,296,128,0);
EPD_partial_display(0,0,gImage_1,gImage_2,296,128,1);
EPD_partial_display(0,0,gImage_2,gImage_3,296,128,1);
EPD_sleep();

EPD_init();
EPD_full_display(gImage_1,gImage_1,0);
EPD_sleep();

EPD_init();
EPD_full_display(gImage_1,gImage_2,1);
EPD_deep_sleep();

EPD_init();
EPD_full_display(gImage_2,gImage_3,1);
EPD_sleep();

EPD_init();
PIC_display(gImage_1);
EPD_sleep();

EPD_partial_display_Full(0,144,gImage_22,152,128,0);
EPD_partial_display_Full(0,144,gImage_33,152,128,0);
EPD_sleep();

Note: gImage_1,gImage_2,gImage_3 are 296*128, gImage_22g and Image_33 are 152*128.

Initialization

Full refresh

Partial refresh

Fast refresh

Partially full refresh

EPD_W21_Init();

EPD_W21_WriteCMD(0x04);
lcd_chkstatus();

EPD_W21_WriteCMD(0x00);
EPD_W21_WriteDATA(0x1f);

EPD_W21_WriteCMD(0x61);
EPD_W21_WriteDATA (0x80);
EPD_W21_WriteDATA (0x01);
EPD_W21_WriteDATA (0x28);

EPD_W21_WriteCMD(0X50);
EPD_W21_WriteDATA(0x97);

EPD_W21_Init();
EPD_W21_WriteCMD(0x01);
EPD_W21_WriteDATA (0x03);
EPD_W21_WriteDATA (0x00);
EPD_W21_WriteDATA (0x2b); EPD_W21_WriteDATA (0x2b);
EPD_W21_WriteDATA (0x13);

EPD_W21_WriteCMD(0x06);
EPD_W21_WriteDATA (0x17);
EPD_W21_WriteDATA (0x17);
EPD_W21_WriteDATA (0x17);

EPD_W21_WriteCMD(0x04);
lcd_chkstatus();

EPD_W21_WriteCMD(0x00);
EPD_W21_WriteDATA(0xbf);

EPD_W21_WriteCMD(0x30);
EPD_W21_WriteDATA (0x3c);

EPD_W21_WriteCMD(0x61);
EPD_W21_WriteDATA(0x80);
EPD_W21_WriteDATA(0x01);
EPD_W21_WriteDATA(0x28);

EPD_W21_WriteCMD(0x82);
EPD_W21_WriteDATA (0x10);

EPD_W21_WriteCMD(0X50);
EPD_W21_WriteDATA(0x97);

EPD_W21_Init();
EPD_W21_WriteCMD(0x01);
EPD_W21_WriteDATA (0x03);
EPD_W21_WriteDATA (0x00);
EPD_W21_WriteDATA (0x2b);
EPD_W21_WriteDATA (0x2b);
EPD_W21_WriteDATA (0x03);

EPD_W21_WriteCMD(0x06);
EPD_W21_WriteDATA (0x17);
EPD_W21_WriteDATA (0x17);
EPD_W21_WriteDATA (0x17);

EPD_W21_WriteCMD(0x04);
lcd_chkstatus();

EPD_W21_WriteCMD(0x00);
EPD_W21_WriteDATA(0xbf);

EPD_W21_WriteCMD(0x30);
EPD_W21_WriteDATA (0x3c);

EPD_W21_WriteCMD(0x61);
EPD_W21_WriteDATA(0x80);
EPD_W21_WriteDATA(0x01);
EPD_W21_WriteDATA(0x28);

EPD_W21_WriteCMD(0x82);
EPD_W21_WriteDATA (0x12);

EPD_W21_WriteCMD(0X50);
EPD_W21_WriteDATA(0x97);

EPD_W21_Init();

EPD_W21_WriteCMD(0x04);
lcd_chkstatus();

EPD_W21_WriteCMD(0x00);
EPD_W21_WriteDATA(0x1f);

EPD_W21_WriteCMD(0x61);
EPD_W21_WriteDATA (0x80);
EPD_W21_WriteDATA (0x01);
EPD_W21_WriteDATA (0x28);

EPD_W21_WriteCMD(0X50);
EPD_W21_WriteDATA(0x97);

Note: In different methods of EPD update, Function EPD_W21_Init()is the same as Function lcd_chkstatus()

Note: In different methods of EPD update, display functions are different and please refer to the detailed code in the program while the sleep function is the same.

 

 

 

 

GDHW029Z13(RED)

Main Function

Full refresh

Partial refresh

EPD_init();
PIC_display(gImage_BW1, gImage_R1);
EPD_sleep();

EPD_init_LUT();
EPD_partial_display_Color(8,16,gImage_1,gImage_1,200,24,0);
EPD_partial_display_Color(8,16,gImage_2,gImage_2,200,24,0);
EPD_sleep();

Initialization

EPD_W21_Init();

EPD_W21_WriteCMD(0x04);
lcd_chkstatus();

EPD_W21_WriteCMD(0x00);
EPD_W21_WriteDATA(0x0f);

EPD_W21_WriteCMD(0x61);
EPD_W21_WriteDATA (0x80);
EPD_W21_WriteDATA (0x01);
EPD_W21_WriteDATA (0x28);

EPD_W21_WriteCMD(0X50);
EPD_W21_WriteDATA(0x77);

EPD_W21_Init();
EPD_W21_WriteCMD(0x01);
EPD_W21_WriteDATA(0x03);
EPD_W21_WriteDATA(0x00);
EPD_W21_WriteDATA(0x2b);
EPD_W21_WriteDATA(0x2b);
EPD_W21_WriteDATA(0x13);

EPD_W21_WriteCMD(0x06);
EPD_W21_WriteDATA(0x17);
EPD_W21_WriteDATA(0x17);
EPD_W21_WriteDATA(0x17);

EPD_W21_WriteCMD(0x04);
lcd_chkstatus();

EPD_W21_WriteCMD(0x00);
EPD_W21_WriteDATA(0xbf);

EPD_W21_WriteCMD(0x30);
EPD_W21_WriteDATA(0x3c);

EPD_W21_WriteCMD(0x61);
EPD_W21_WriteDATA(0x68);
EPD_W21_WriteDATA(0x00);
EPD_W21_WriteDATA(0xd4);

EPD_W21_WriteCMD(0x82);
EPD_W21_WriteDATA(0x12);

EPD_W21_WriteCMD(0X50);
EPD_W21_WriteDATA(0x97);
lut1();

Note: In different methods of EPD update, Function EPD_W21_Init()is the same as Function lcd_chkstatus()

Note: In different methods of EPD update, display functions are different and please refer to the detailed code in the program while the sleep function is the same.

 

 

 

 

Scan the QR code to read on your phone

logo

Time of issue:2020-04-27 00:00:00

 

Contact

Time of issue:2020-04-27 00:00:00
Powerby:300.cn DaLian

copyright

Time of issue:2020-04-27 00:00:00

©2007-2021    DALIAN GOOD DISPLAY CO., LTD.         All Rights Reserved.      辽ICP备08000578号-1