This is the quick start guide for the EPD Xplained Pro extension board with Pervasive Displays Inc.
's small size EPDs on how to setup the kit to Atmel Xplained Pro. The code example in main.c shows two images alternatively change and instructs how to use the display function.
- Note
- Released Date: 10 Mar, 2014. Version: 1.11
- PDi = Pervasive Displays Inc.(PDi) http://www.pervasivedisplays.com
- EPD = Electronic Paper Display (Electrophoretic Display)
- COG = Chip on Glass, the driver IC on EPD module
- COG G1 or G2: G is for generation. PDi offers V110 with G1 COG and V230 with G2 COG EPD to the market.(~2014)
- For driving PDi's small size EPDs, please read the "COG Driver Interface
Timing" document(hereinafter COG Document) first. It explains the interface to the COG driver of EPD for a MCU based solution.
- COG G1 Document number: 4P008-00 Download URL: http://www.pervasivedisplays.com/LiteratureRetrieve.aspx?ID=138408
- COG G2 Document number: 4P015-00 Download URL: http://www.pervasivedisplays.com/LiteratureRetrieve.aspx?ID=198794
- This project code supports EPD size: 1.44 inch, 2 inch and 2.7 inch
- Supports Atmel Xplained PRO: ATMEGA256RFR2 Xplained PRO
File_Explanation
- image_data:
It defines the image arrays of each EPD size. User can use the array without application input.
- Config folder:
- conf_EPD: The EPD configurations.
- COG_Vxxx_Gx: define which COG driving waveform you will use
- COG_SPI_baudrate: SPI speed
- Pervasive_Displays_small_EPD folder:
All of the COG driving waveforms are located in this folder. Logically developer doesn't need to change the codes in this folder in order to keep correct driving the EPDs.
Software architecture:
[Application] <– [COG Interface (EPD_controller)] <– [COG Process (EPD_COG_process)] <– [Hardware Driver (EPD_hardware_driver & EPD_hardware_gpio)]
- EPD_hardware_driver:
Most of the COG hardware initialization and configuration. User can implement the driver layer of EPD if some variables need to be adjusted. The provided settings and functions are Timer, SPI, PWM, temperature and EPD hardware initialization.
- EPD_hardware_gpio:
GPIO pins configuration.
- EPD_COG_process.h:
The common definition of COG driving process.
- EPD_controller:
The interface for external function to work with EPD.
- EPD_COG:
The link source of different COG and EPD switching to be used.
- COG folder:
Each COG driving file presents the different waveform driving processes of COG and updating stages. The parameters of driving different EPD is defined at COG_parameters_t structure which is easy for developer adjusting initial parameters, resolution, frame time of MCU and the size of data line.
- EPD_COG_process_Vxxx_Gx:
The waveform driving processes and updating stages of COG v? with VXXX EPD.
- EPD_COG_partial_update_Vxxx:
The partial update waveform of driving processes and updating stages of COG v? with VXXX EPD.
Use_Case
- EPD_display_from_pointer: Load two image data arrays from image_data.c according to predefined EPD size.
- EPD_display_from_flash: Load stored image data from flash memory according to predefined EPD size. User must convert 1 bit bitmap image file to hex data in advance and store in flash memory.
Steps
- Ensure the EPD is connected correctly on the EPD Xplained Pro extension board
- Connect the EPD Xplained Pro to the ATMEGA256RFR2 Xplained Pro header marked EXT3
- Connect the ATMEGA256RFR2 Xplained Pro to computer's USB port via USB cable
- Ensure what the EPD size you are connecting. Open Atmel Studio Project properties under Symbols and find "USE_EPD_Type=USE_EPD200". Change the USE_EPDXXX to the correct size.
- Close the J2 jumper if the connected EPD is 1.44" V110, 1.44" V230 or 2" V230. For the other types, please keep the J2 is opened.
- Start debugging to program the driving code to MCU. The EPD will show two images alternatively change every 10 seconds (default).
EPD Xplained Pro extension header pins
Pin | Function | Description |
1 | ID | Communication line to ID chip |
2 | GND | Ground |
3 | Temperature | On board temperature sensor output (ADC) |
4 | BORDER_CONTROL | Border control pin (GPIO) |
5 | DISCHARGE | EPD discharge when EPD power off (GPIO) |
6 | /RESET | Reset signal. Low enable (GPIO) |
7 | PWM | Square wave when EPD power on (PWM) |
8 | PANEL_ON | COG driver power control pin (GPIO) |
9 | BUSY | COG busy pin (GPIO) |
10 | FLASH_CS | On board flash chip select (GPIO) |
11 | | |
12 | | |
13 | | |
14 | | |
15 | /EPD_CS | Chip Select. Low enable (GPIO) |
16 | SPI_MOSI | Serial input from host MCU to EPD |
17 | SPI_MISO | Serial output from EPD to host MCU |
18 | SPI_CLK | Clock for SPI |
19 | GND | Ground |
20 | VCC | Target supply voltage |
PDi EPD displays
Size | PDi Model | FPL |
1.44 | EK014AS014, EK014AS015 | V110 |
2.0 | EG020AS012, EG020AS013 | V110 |
2.7 | EM027AS012, EM027AS013 | V110 |
1.44 | TBD (Q2'14) | V230 |
2.0 | EG020BS011, EG020BS012 | V230 |
2.7 | EM027BS013, EM027BS014 | V230 |