Animation demo with MIP8F_SPI_Ver60

Dependencies:   mbed MIP8F_SPI_Ver60 MIP8f_FRDM_LineBuffer_sample MIP8f_FRDM_TransferMode_sample

Introduction

Animation Demo. Some Goldfish swin in water, from left to right, from bottom to top. Color and monochrome version

Only for LPM027M128x (400x240) ,JDI DIsplay.

Other information , please refer to https://os.mbed.com/teams/JapanDisplayInc/code/MIP8f_FRDM_sample/

Usage

Copy Setting File and Image to micro SD-CARD. you can NOT use same sample color images of OTHER VERSION SAMPLE.

a) Download the following file corresponding to the target panel, and rename file identifier (.bin -> .zip), and unzip the file on micro SD Card's root directory.

LPM027M128x (400x240) :/media/uploads/JDI_Mbed_Team/goldfish_400x240.bin

b) Insert micro SD-CARD to FRDM-K64F. c) Upload binary file to FRDM-K64F.and push Reset Button.

Other information

refer to Usage on https://os.mbed.com/teams/JapanDisplayInc/code/MIP8f_FRDM_sample/

this Sample Code (.bin)

/media/uploads/JDI_Mbed_Team/mip8f_frdm_animation_sample.k64f.bin

Committer:
JDI_Mbed_Team
Date:
Thu Nov 22 07:46:49 2018 +0000
Revision:
21:d1beeb6c4a53
Parent:
0:33fe30a2b785
bug fixed

Who changed what in which revision?

UserRevisionLine numberNew contents of line
JDI_Mbed_Team 0:33fe30a2b785 1 /***********************************
JDI_Mbed_Team 0:33fe30a2b785 2 This is a our graphics core library, for all our displays.
JDI_Mbed_Team 0:33fe30a2b785 3 We'll be adapting all the
JDI_Mbed_Team 0:33fe30a2b785 4 existing libaries to use this core to make updating, support
JDI_Mbed_Team 0:33fe30a2b785 5 and upgrading easier!
JDI_Mbed_Team 0:33fe30a2b785 6
JDI_Mbed_Team 0:33fe30a2b785 7 Adafruit invests time and resources providing this open source code,
JDI_Mbed_Team 0:33fe30a2b785 8 please support Adafruit and open-source hardware by purchasing
JDI_Mbed_Team 0:33fe30a2b785 9 products from Adafruit!
JDI_Mbed_Team 0:33fe30a2b785 10
JDI_Mbed_Team 0:33fe30a2b785 11 Written by Limor Fried/Ladyada for Adafruit Industries.
JDI_Mbed_Team 0:33fe30a2b785 12 BSD license, check license.txt for more information
JDI_Mbed_Team 0:33fe30a2b785 13 All text above must be included in any redistribution
JDI_Mbed_Team 0:33fe30a2b785 14 ****************************************/
JDI_Mbed_Team 0:33fe30a2b785 15
JDI_Mbed_Team 0:33fe30a2b785 16 /*
JDI_Mbed_Team 0:33fe30a2b785 17 * Modified by Neal Horman 7/14/2012 for use in LPC1768
JDI_Mbed_Team 0:33fe30a2b785 18 */
JDI_Mbed_Team 0:33fe30a2b785 19
JDI_Mbed_Team 0:33fe30a2b785 20 #ifndef _ADAFRUIT_GFX_H_
JDI_Mbed_Team 0:33fe30a2b785 21 #define _ADAFRUIT_GFX_H_
JDI_Mbed_Team 0:33fe30a2b785 22
JDI_Mbed_Team 0:33fe30a2b785 23 static inline void swap(int16_t &a, int16_t &b)
JDI_Mbed_Team 0:33fe30a2b785 24 {
JDI_Mbed_Team 0:33fe30a2b785 25 int16_t t = a;
JDI_Mbed_Team 0:33fe30a2b785 26
JDI_Mbed_Team 0:33fe30a2b785 27 a = b;
JDI_Mbed_Team 0:33fe30a2b785 28 b = t;
JDI_Mbed_Team 0:33fe30a2b785 29 }
JDI_Mbed_Team 0:33fe30a2b785 30
JDI_Mbed_Team 0:33fe30a2b785 31 #ifndef _BV
JDI_Mbed_Team 0:33fe30a2b785 32 #define _BV(bit) (1<<(bit))
JDI_Mbed_Team 0:33fe30a2b785 33 #endif
JDI_Mbed_Team 0:33fe30a2b785 34
JDI_Mbed_Team 0:33fe30a2b785 35 #define BLACK 0
JDI_Mbed_Team 0:33fe30a2b785 36 #define WHITE 1
JDI_Mbed_Team 0:33fe30a2b785 37
JDI_Mbed_Team 0:33fe30a2b785 38 class Adafruit_GFX : public Stream
JDI_Mbed_Team 0:33fe30a2b785 39 {
JDI_Mbed_Team 0:33fe30a2b785 40 public:
JDI_Mbed_Team 0:33fe30a2b785 41 Adafruit_GFX(int16_t w, int16_t h)
JDI_Mbed_Team 0:33fe30a2b785 42 : _rawWidth(w)
JDI_Mbed_Team 0:33fe30a2b785 43 , _rawHeight(h)
JDI_Mbed_Team 0:33fe30a2b785 44 , _width(w)
JDI_Mbed_Team 0:33fe30a2b785 45 , _height(h)
JDI_Mbed_Team 0:33fe30a2b785 46 , cursor_x(0)
JDI_Mbed_Team 0:33fe30a2b785 47 , cursor_y(0)
JDI_Mbed_Team 0:33fe30a2b785 48 , textcolor(WHITE)
JDI_Mbed_Team 0:33fe30a2b785 49 , textbgcolor(BLACK)
JDI_Mbed_Team 0:33fe30a2b785 50 , textsize(1)
JDI_Mbed_Team 0:33fe30a2b785 51 , rotation(0)
JDI_Mbed_Team 0:33fe30a2b785 52 , wrap(true)
JDI_Mbed_Team 0:33fe30a2b785 53 {};
JDI_Mbed_Team 0:33fe30a2b785 54
JDI_Mbed_Team 0:33fe30a2b785 55 // this must be defined by the subclass
JDI_Mbed_Team 0:33fe30a2b785 56 virtual void drawPixel(int16_t x, int16_t y, uint16_t color) = 0;
JDI_Mbed_Team 0:33fe30a2b785 57 // this is optional
JDI_Mbed_Team 0:33fe30a2b785 58 virtual void invertDisplay(bool i) {};
JDI_Mbed_Team 0:33fe30a2b785 59
JDI_Mbed_Team 0:33fe30a2b785 60 // Stream implementation - provides printf() interface
JDI_Mbed_Team 0:33fe30a2b785 61 // You would otherwise be forced to use writeChar()
JDI_Mbed_Team 0:33fe30a2b785 62 virtual int _putc(int value) { return writeChar(value); };
JDI_Mbed_Team 0:33fe30a2b785 63 virtual int _getc() { return -1; };
JDI_Mbed_Team 0:33fe30a2b785 64
JDI_Mbed_Team 0:33fe30a2b785 65 #ifdef WANT_ABSTRACTS
JDI_Mbed_Team 0:33fe30a2b785 66 // these are 'generic' drawing functions, so we can share them!
JDI_Mbed_Team 0:33fe30a2b785 67 virtual void drawLine(int16_t x0, int16_t y0, int16_t x1, int16_t y1, uint16_t color);
JDI_Mbed_Team 0:33fe30a2b785 68 virtual void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color);
JDI_Mbed_Team 0:33fe30a2b785 69 virtual void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color);
JDI_Mbed_Team 0:33fe30a2b785 70 virtual void drawRect(int16_t x, int16_t y, int16_t w, int16_t h, uint16_t color);
JDI_Mbed_Team 0:33fe30a2b785 71 virtual void fillRect(int16_t x, int16_t y, int16_t w, int16_t h, uint16_t color);
JDI_Mbed_Team 0:33fe30a2b785 72 virtual void fillScreen(uint16_t color);
JDI_Mbed_Team 0:33fe30a2b785 73
JDI_Mbed_Team 0:33fe30a2b785 74 void drawCircle(int16_t x0, int16_t y0, int16_t r, uint16_t color);
JDI_Mbed_Team 0:33fe30a2b785 75 void drawCircleHelper(int16_t x0, int16_t y0, int16_t r, uint8_t cornername, uint16_t color);
JDI_Mbed_Team 0:33fe30a2b785 76 void fillCircle(int16_t x0, int16_t y0, int16_t r, uint16_t color);
JDI_Mbed_Team 0:33fe30a2b785 77 void fillCircleHelper(int16_t x0, int16_t y0, int16_t r, uint8_t cornername, int16_t delta, uint16_t color);
JDI_Mbed_Team 0:33fe30a2b785 78
JDI_Mbed_Team 0:33fe30a2b785 79 void drawTriangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, int16_t x2, int16_t y2, uint16_t color);
JDI_Mbed_Team 0:33fe30a2b785 80 void fillTriangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, int16_t x2, int16_t y2, uint16_t color);
JDI_Mbed_Team 0:33fe30a2b785 81 void drawRoundRect(int16_t x0, int16_t y0, int16_t w, int16_t h, int16_t radius, uint16_t color);
JDI_Mbed_Team 0:33fe30a2b785 82 void fillRoundRect(int16_t x0, int16_t y0, int16_t w, int16_t h, int16_t radius, uint16_t color);
JDI_Mbed_Team 0:33fe30a2b785 83 #endif
JDI_Mbed_Team 0:33fe30a2b785 84
JDI_Mbed_Team 0:33fe30a2b785 85 void drawBitmap(int16_t x, int16_t y, const uint8_t *bitmap, int16_t w, int16_t h, uint16_t color);
JDI_Mbed_Team 0:33fe30a2b785 86 void drawChar(int16_t x, int16_t y, unsigned char c, uint16_t color, uint16_t bg, uint8_t size);
JDI_Mbed_Team 0:33fe30a2b785 87 size_t writeChar(uint8_t);
JDI_Mbed_Team 0:33fe30a2b785 88
JDI_Mbed_Team 0:33fe30a2b785 89 int16_t width(void) { return _width; };
JDI_Mbed_Team 0:33fe30a2b785 90 int16_t height(void) { return _height; };
JDI_Mbed_Team 0:33fe30a2b785 91
JDI_Mbed_Team 0:33fe30a2b785 92 void setCursor(int16_t x, int16_t y) { cursor_x = x; cursor_y = y; };
JDI_Mbed_Team 0:33fe30a2b785 93 void setTextSize(uint8_t s) { textsize = (s > 0) ? s : 1; };
JDI_Mbed_Team 0:33fe30a2b785 94 void setTextColor(uint16_t c) { textcolor = c; textbgcolor = c; }
JDI_Mbed_Team 0:33fe30a2b785 95 void setTextColor(uint16_t c, uint16_t b) { textcolor = c; textbgcolor = b; };
JDI_Mbed_Team 0:33fe30a2b785 96 void setTextWrap(bool w) { wrap = w; };
JDI_Mbed_Team 0:33fe30a2b785 97
JDI_Mbed_Team 0:33fe30a2b785 98 void setRotation(uint8_t r);
JDI_Mbed_Team 0:33fe30a2b785 99 uint8_t getRotation(void) { rotation %= 4; return rotation; };
JDI_Mbed_Team 0:33fe30a2b785 100
JDI_Mbed_Team 0:33fe30a2b785 101 protected:
JDI_Mbed_Team 0:33fe30a2b785 102 int16_t _rawWidth, _rawHeight; // this is the 'raw' display w/h - never changes
JDI_Mbed_Team 0:33fe30a2b785 103 int16_t _width, _height; // dependent on rotation
JDI_Mbed_Team 0:33fe30a2b785 104 int16_t cursor_x, cursor_y;
JDI_Mbed_Team 0:33fe30a2b785 105 uint16_t textcolor, textbgcolor;
JDI_Mbed_Team 0:33fe30a2b785 106 uint8_t textsize;
JDI_Mbed_Team 0:33fe30a2b785 107 uint8_t rotation;
JDI_Mbed_Team 0:33fe30a2b785 108 bool wrap; // If set, 'wrap' text at right edge of display
JDI_Mbed_Team 0:33fe30a2b785 109 };
JDI_Mbed_Team 0:33fe30a2b785 110
JDI_Mbed_Team 0:33fe30a2b785 111 #endif