Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of libEinkShield_mbedcli_ARM_NUCLEO_F446RE by
The actual display component with e-paper and Mbed board
Key Features
- SPI interface to EPD display
- Gray level support(Black, White and Red)
- Flash memory - 128MB
- One GPIO connected to LED
- Four push buttons for user feedback
Peripherals/IOs
Pinout
Typical connection
- Compatible with Arduino Headers
Datasheet
Program and Library
Import programEinkShield_HelloWorld_ARM_KL25Z
EInkShield_HelloWorld
Import librarylibEinkShield_mbedcli_ARM_KL25Z
libEinkShield_mbedcli_ARM_KL25Z
Import librarylibEinkShield_mbedcli_ARM_K22F
libEinkShield_mbedcli_ARM_K22F
Import librarylibEinkShield_mbedcli_ARM_NUCLEO_F446RE
libEinkShield_mbedcli_ARM_NUCLEO_F446RE
Import library
Public Member Functions |
|
EinkShield (EPD_driver driver, PinName bsi_pin, PinName rstn_pin, PinName busyn_pin, PinName csb_pin, PinName dc_pin, PinName scl_pin, PinName sda_pin) | |
Constructor to set pin assignment and driver.
|
|
void | EPD_Init (void) |
Driver initial.
|
|
void | EPD_Display_KWR (unsigned char const *img_kw, unsigned char const *img_r) |
Display image with color: black, white and red.
|
|
void | EPD_Display_Red (void) |
Display full screen red.
|
Revision 0:4cbbe20392ef, committed 2018-08-20
- Comitter:
- jauming
- Date:
- Mon Aug 20 05:59:01 2018 +0000
- Commit message:
- libEinkShield_mbedcli_ARM_NUCLEO_F446RE
Changed in this revision
EinkShield.h | Show annotated file Show diff for this revision Revisions of this file |
libEinkShield_mbedcli_ARM_NUCLEO_F446RE.ar | Show annotated file Show diff for this revision Revisions of this file |
diff -r 000000000000 -r 4cbbe20392ef EinkShield.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/EinkShield.h Mon Aug 20 05:59:01 2018 +0000 @@ -0,0 +1,126 @@ +/* +Copyright (c) 2017-2018, E Ink Holdings Inc., All Rights Reserved +SPDX-License-Identifier: LicenseRef-PBL + +This file and the related binary are licensed under the Permissive Binary +License, Version 1.0 (the "License"); you may not use these files except in +compliance with the License. + +You may obtain a copy of the License here: +LICENSE-permissive-binary-license-1.0.txt and at +https://www.mbed.com/licenses/PBL-1.0 + +See the License for the specific language governing permissions and limitations +under the License. +*/ +/** + * \mainpage EinkShield usage sample code + * \code + * #include "mbed.h" + * #include "EinkShield.h" + * #include "image3.h" + * int main() { + * EinkShield epd(EL029TR1, + * D7, + * D6, + * D5, + * D10, + * D2, + * D13, + * D11); + * epd.EPD_Init(); + * epd.EPD_Display_Red(); + * wait_ms(2000); + * while(1) { + * epd.EPD_Display_KWR(sale2_KW, sale2_R); + * wait_ms(2000); + * } + * } + * \endcode + */ +#ifndef EINK_SHIELD_H +#define EINK_SHIELD_H + +typedef enum { + EL029TR1, +} EPD_driver; + + +/** @class EinkShield EinkShield.h */ +/** class EinkShield for mbed-os */ +class EinkShield { +private: + DigitalOut bsi ;//(D7); + DigitalOut rstn ;//(D6); + DigitalIn busyn;//(D5); + DigitalOut csb ;//(D10); + DigitalOut dc ;//(D2); + DigitalOut scl ;//(D13); + DigitalOut sda ;//(D11); + + EPD_driver driver; + +public: + /** + * Constructor to set pin assignment and driver + * @param driver select different size display driver for EinkShield, for example: EL029TR1 + * @param bsi_pin bus selection pin + * @param rstn_pin reset pin, L: driver will reset when low + * @param busyn_pin busy pin, L: driver is busy + * @param csb_pin chip-select pin + * @param dc_pin data/command pin + * @param scl_pin serial clock pin + * @param sda_pin serial data pin + * @return none + */ + EinkShield(EPD_driver driver, + PinName bsi_pin, + PinName rstn_pin, + PinName busyn_pin, + PinName csb_pin, + PinName dc_pin, + PinName scl_pin, + PinName sda_pin); + /** + * Driver initial + * @param none + * @return none + */ + void EPD_Init(void); + /** + * Display image with color: black, white and red. + * <pre> + * Resolution of EL029TR1 is 128x296. + * Pixel data alignment is from left to right and from top to bottom. + * + * <STRONG>img_kw</STRONG> point to black and white raw pixel data of image, + * 1 bit per pixel, 0 = black, 1 = white, + * Total size of img_kw is 128x296/8 = 4736 bytes for EL029TR1. + * + * <STRONG>img_r</STRONG> point to red raw pixel data of image, + * 1 bit per pixel, 0 = red, 1 = reserved, + * Total size of img_r is 128x296/8 = 4736 bytes for EL029TR1. + * </pre> + * + * @param img_kw <pre>point to black and white raw pixel data of image, + * 1 bit per pixel, 0 = black, 1 = white,</pre> + * + * @param img_r <pre>point to red raw pixel data of image, + * 1 bit per pixel, 0 = red, 1 = reserved,</pre> + * + * + * @return none + */ + void EPD_Display_KWR(unsigned char const *img_kw, unsigned char const *img_r); + /** + * Display full screen red + * + * @param none + * @return none + */ + void EPD_Display_Red(void); +}; + + + +#endif
diff -r 000000000000 -r 4cbbe20392ef libEinkShield_mbedcli_ARM_NUCLEO_F446RE.ar Binary file libEinkShield_mbedcli_ARM_NUCLEO_F446RE.ar has changed