Microchip® Advanced Software Framework

Quick Start Guide

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:
    1. 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)]

    1. 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.
    2. EPD_hardware_gpio:
      GPIO pins configuration.
    3. EPD_COG_process.h:
      The common definition of COG driving process.
    4. EPD_controller:
      The interface for external function to work with EPD.
    5. EPD_COG:
      The link source of different COG and EPD switching to be used.
    6. 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

  1. EPD_display_from_pointer: Load two image data arrays from image_data.c according to predefined EPD size.
  2. 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

  1. Ensure the EPD is connected correctly on the EPD Xplained Pro extension board
  2. Connect the EPD Xplained Pro to the ATMEGA256RFR2 Xplained Pro header marked EXT3
  3. Connect the ATMEGA256RFR2 Xplained Pro to computer's USB port via USB cable
  4. 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.
  5. 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.
  6. 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

PinFunction 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