Library to control the EM027BS013 ePaper display from Pervasive Display.
Dependents: app_epaper_EM027BS013_LPC1549 lpc4088_ebb_epaper EaEpaper_EM027BS013 app_epaper_EM027BS013 ... more
EPD_COG_process_v230_G2.cpp File Reference
The waveform driving processes and updating stages of G2 COG with V230 EPD. More...
Go to the source code of this file.
Functions | |
static void | set_temperature_factor (uint8_t EPD_type_index) |
According to EPD size and temperature to get stage_time. | |
void | EPD_init (void) |
Initialize the EPD hardware setting. | |
void | COG_driver_EPDtype_select (uint8_t EPD_type_index) |
Select the EPD size to get line data array for driving COG. | |
void | EPD_power_on (void) |
Power on COG Driver. | |
uint8_t | EPD_initialize_driver (uint8_t EPD_type_index) |
Initialize COG Driver. | |
void | stage_init (uint8_t EPD_type_index, struct EPD_V230_G2_Struct *S_epd_v230, uint8_t block_size, uint8_t step_size, uint8_t frame_cycle) |
Initialize the parameters of Block type stage. | |
static void | same_data_frame (uint8_t EPD_type_index, uint8_t bwdata, uint32_t work_time) |
For Frame type waveform to update all black/white pattern. | |
void | nothing_line (uint8_t EPD_type_index) |
Write nothing Line to COG. | |
void | read_line_data_handle (uint8_t EPD_type_index, uint8_t *image_prt, uint8_t stage_no) |
Get line data of Stage 1 and 3. | |
void | stage_handle_Base (uint8_t EPD_type_index, uint8_t *image_prt, long image_data_address, uint8_t stage_no, uint8_t lineoffset) |
The base function to handle the driving stages for Frame and Block type. | |
void | stage_handle (uint8_t EPD_type_index, uint8_t *image_prt, uint8_t stage_no, uint8_t lineoffset) |
The driving stages from image array (image_data.h) to COG. | |
static void | stage_handle_ex (uint8_t EPD_type_index, long image_data_address, uint8_t stage_no, uint8_t lineoffset) |
The driving stages from memory to COG. | |
void | EPD_display_from_array_prt (uint8_t EPD_type_index, uint8_t *previous_image_ptr, uint8_t *new_image_ptr) |
Write image data from memory array (image_data.h) to the EPD. | |
void | EPD_display_from_flash_prt (uint8_t EPD_type_index, long previous_image_flash_address, long new_image_flash_address, EPD_read_flash_handler On_EPD_read_flash) |
Write image data from Flash memory to the EPD. | |
static void | dummy_line (uint8_t EPD_type_index) |
Write Dummy Line to COG. | |
static void | border_dummy_line (uint8_t EPD_type_index) |
Write Border(Input) Dummy Line. | |
uint8_t | EPD_power_off (uint8_t EPD_type_index) |
Power Off COG Driver. |
Detailed Description
The waveform driving processes and updating stages of G2 COG with V230 EPD.
Copyright (c) 2012-2014 Pervasive Displays Inc. All rights reserved.
Definition in file EPD_COG_process_v230_G2.cpp.
Function Documentation
static void border_dummy_line | ( | uint8_t | EPD_type_index ) | [static] |
Write Border(Input) Dummy Line.
- Note:
- Set Border byte 0xFF to write Black and set 0xAA to write White
- Parameters:
-
EPD_type_index The defined EPD size
Definition at line 760 of file EPD_COG_process_v230_G2.cpp.
void COG_driver_EPDtype_select | ( | uint8_t | EPD_type_index ) |
Select the EPD size to get line data array for driving COG.
- Parameters:
-
EPD_type_index The defined EPD size
Definition at line 240 of file EPD_COG_process_v230_G2.cpp.
static void dummy_line | ( | uint8_t | EPD_type_index ) | [static] |
Write Dummy Line to COG.
- Note:
- A line whose all Scan Bytes are 0x00
- Parameters:
-
EPD_type_index The defined EPD size
Definition at line 728 of file EPD_COG_process_v230_G2.cpp.
void EPD_display_from_array_prt | ( | uint8_t | EPD_type_index, |
uint8_t * | previous_image_ptr, | ||
uint8_t * | new_image_ptr | ||
) |
Write image data from memory array (image_data.h) to the EPD.
- Parameters:
-
EPD_type_index The defined EPD size previous_image_ptr The pointer of memory that stores previous image new_image_ptr The pointer of memory that stores new image
Definition at line 690 of file EPD_COG_process_v230_G2.cpp.
void EPD_display_from_flash_prt | ( | uint8_t | EPD_type_index, |
long | previous_image_flash_address, | ||
long | new_image_flash_address, | ||
EPD_read_flash_handler | On_EPD_read_flash | ||
) |
Write image data from Flash memory to the EPD.
- Note:
- This function is additional added here for developer if the image data is stored in Flash.
- Parameters:
-
EPD_type_index The defined EPD size previous_image_flash_address The start address of memory that stores previous image new_image_flash_address The start address of memory that stores new image On_EPD_read_flash Developer needs to create an external function to read flash
Definition at line 708 of file EPD_COG_process_v230_G2.cpp.
void EPD_init | ( | void | ) |
Initialize the EPD hardware setting.
Definition at line 227 of file EPD_COG_process_v230_G2.cpp.
uint8_t EPD_initialize_driver | ( | uint8_t | EPD_type_index ) |
Initialize COG Driver.
- Note:
- For detailed flow and description, please refer to the COG G2 document Section 4.
- Parameters:
-
EPD_type_index The defined EPD size
Definition at line 287 of file EPD_COG_process_v230_G2.cpp.
uint8_t EPD_power_off | ( | uint8_t | EPD_type_index ) |
Power Off COG Driver.
- Note:
- For detailed flow and description, please refer to the COG G2 document Section 6.
- Parameters:
-
EPD_type_index The defined EPD size
Definition at line 794 of file EPD_COG_process_v230_G2.cpp.
void EPD_power_on | ( | void | ) |
Power on COG Driver.
- Note:
- For detailed flow and description, please refer to the COG G2 document Section 3.
Definition at line 267 of file EPD_COG_process_v230_G2.cpp.
void nothing_line | ( | uint8_t | EPD_type_index ) |
Write nothing Line to COG.
- Note:
- A line whose all Scan Bytes are 0x00
- Parameters:
-
EPD_type_index The defined EPD size
Definition at line 443 of file EPD_COG_process_v230_G2.cpp.
void read_line_data_handle | ( | uint8_t | EPD_type_index, |
uint8_t * | image_prt, | ||
uint8_t | stage_no | ||
) |
Get line data of Stage 1 and 3.
- Note:
- One dot/pixel is comprised of 2 bits which are White(10), Black(11) or Nothing(01). The image data bytes must be divided into Odd and Even bytes.
- The COG driver uses a buffer to write one line of data (FIFO) - interlaced It's different order from COG_G1 Odd byte {D(199,y),D(197,y), D(195,y), D(193,y)}, ... ,{D(7,y),D(5,y),D(3,y), D(1,y)} Scan byte {S(96), S(95)...} Odd byte {D(2,y),D(4,y), D(6,y), D(8,y)}, ... ,{D(194,y),D(196,y),D(198,y), D(200,y)}
- For more details on the driving stages, please refer to the COG G2 document Section 5.
- Parameters:
-
EPD_type_index The defined EPD size image_ptr The pointer of memory that stores image that will send to COG stage_no The assigned stage number that will proceed
Definition at line 470 of file EPD_COG_process_v230_G2.cpp.
static void same_data_frame | ( | uint8_t | EPD_type_index, |
uint8_t | bwdata, | ||
uint32_t | work_time | ||
) | [static] |
For Frame type waveform to update all black/white pattern.
- Parameters:
-
EPD_type_index The defined EPD size bwdata Black or White color to whole screen work_time The working time
Definition at line 409 of file EPD_COG_process_v230_G2.cpp.
static void set_temperature_factor | ( | uint8_t | EPD_type_index ) | [static] |
According to EPD size and temperature to get stage_time.
- Note:
- Refer to COG document Section 5.3 for more details
- Parameters:
-
EPD_type_index The defined EPD size
Definition at line 212 of file EPD_COG_process_v230_G2.cpp.
void stage_handle | ( | uint8_t | EPD_type_index, |
uint8_t * | image_prt, | ||
uint8_t | stage_no, | ||
uint8_t | lineoffset | ||
) |
The driving stages from image array (image_data.h) to COG.
- Parameters:
-
EPD_type_index The defined EPD size image_ptr The pointer of image array that stores image that will send to COG stage_no The assigned stage number that will proceed lineoffset Line data offset
Definition at line 662 of file EPD_COG_process_v230_G2.cpp.
void stage_handle_Base | ( | uint8_t | EPD_type_index, |
uint8_t * | image_prt, | ||
long | image_data_address, | ||
uint8_t | stage_no, | ||
uint8_t | lineoffset | ||
) |
The base function to handle the driving stages for Frame and Block type.
- Note:
- There are 3 stages to complete an image update on COG_V230_G2 type EPD.
- For more details on the driving stages, please refer to the COG G2 document Section 5.4
- Parameters:
-
EPD_type_index The defined EPD size image_ptr The pointer of image array that stores image that will send to COG image_data_address The address of memory that stores image stage_no The assigned stage number that will proceed lineoffset Line data offset
Stage 2: BLACK/WHITE image, Frame type
Stage 1 & 3, Block type
Definition at line 543 of file EPD_COG_process_v230_G2.cpp.
static void stage_handle_ex | ( | uint8_t | EPD_type_index, |
long | image_data_address, | ||
uint8_t | stage_no, | ||
uint8_t | lineoffset | ||
) | [static] |
The driving stages from memory to COG.
- Note:
- This function is additional added here for developer if the image data is stored in Flash memory.
- Parameters:
-
EPD_type_index The defined EPD size image_data_address The address of flash memory that stores image stage_no The assigned stage number that will proceed lineoffset Line data offset
Definition at line 679 of file EPD_COG_process_v230_G2.cpp.
void stage_init | ( | uint8_t | EPD_type_index, |
struct EPD_V230_G2_Struct * | S_epd_v230, | ||
uint8_t | block_size, | ||
uint8_t | step_size, | ||
uint8_t | frame_cycle | ||
) |
Initialize the parameters of Block type stage.
- Parameters:
-
EPD_type_index The defined EPD size EPD_V230_G2_Struct The Block type waveform structure block_size The width of Block size step_size The width of Step size frame_cycle The width of Step size
Definition at line 385 of file EPD_COG_process_v230_G2.cpp.
Generated on Thu Jul 14 2022 17:10:35 by 1.7.2