A library for LPM013M126A – JDI Color Memory LCD. This library is an inherited class from the “GraphicDisplay”, and Its functions are similar to “C12832_lcd” or ”SPI_TFT” library.

Dependents:   Test_ColorMemLCD rIoTwear_LCD

1.28" (176x176 193ppi) 8 Color Memory LCD of ultra-low power consumption in sub uA.

Committer:
KURETA90
Date:
Thu Jun 23 04:34:39 2016 +0000
Revision:
1:b035a997ec3f
Parent:
0:76a4e97c113f
deleting unused parameter

Who changed what in which revision?

UserRevisionLine numberNew contents of line
KURETA90 0:76a4e97c113f 1 /*
KURETA90 0:76a4e97c113f 2 * mbed library for the JDI color memory LCD LPM013M126A
KURETA90 0:76a4e97c113f 3 * derived from C12832_lcd
KURETA90 0:76a4e97c113f 4 * Copyright (c) 2016 Tadayuki Okamoto
KURETA90 0:76a4e97c113f 5 * Released under the MIT License: http://mbed.org/license/mit
KURETA90 0:76a4e97c113f 6 *
KURETA90 0:76a4e97c113f 7 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
KURETA90 0:76a4e97c113f 8 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
KURETA90 0:76a4e97c113f 9 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
KURETA90 0:76a4e97c113f 10 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
KURETA90 0:76a4e97c113f 11 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
KURETA90 0:76a4e97c113f 12 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
KURETA90 0:76a4e97c113f 13 * THE SOFTWARE.
KURETA90 0:76a4e97c113f 14 */
KURETA90 0:76a4e97c113f 15
KURETA90 0:76a4e97c113f 16 #ifndef MBED_COLOR_MEM_LCD_H
KURETA90 0:76a4e97c113f 17 #define MBED_COLOR_MEM_LCD_H
KURETA90 0:76a4e97c113f 18
KURETA90 0:76a4e97c113f 19 #include "mbed.h"
KURETA90 0:76a4e97c113f 20 #include "GraphicsDisplay.h"
KURETA90 0:76a4e97c113f 21
KURETA90 0:76a4e97c113f 22
KURETA90 0:76a4e97c113f 23 /** @def
KURETA90 0:76a4e97c113f 24 * Device define
KURETA90 0:76a4e97c113f 25 */
KURETA90 0:76a4e97c113f 26 #define LCD_DEVICE_WIDTH (176)
KURETA90 0:76a4e97c113f 27 #define LCD_DEVICE_HEIGHT (176)
KURETA90 0:76a4e97c113f 28
KURETA90 0:76a4e97c113f 29 /** @def
KURETA90 0:76a4e97c113f 30 * window system define
KURETA90 0:76a4e97c113f 31 */
KURETA90 0:76a4e97c113f 32 #define LCD_DISP_WIDTH (176)
KURETA90 0:76a4e97c113f 33 #define LCD_DISP_HEIGHT (176)
KURETA90 0:76a4e97c113f 34 #define LCD_DISP_HEIGHT_MAX_BUF (44)
KURETA90 0:76a4e97c113f 35
KURETA90 0:76a4e97c113f 36
KURETA90 0:76a4e97c113f 37 /** @def
KURETA90 0:76a4e97c113f 38 * some RGB color definitions
KURETA90 0:76a4e97c113f 39 */
KURETA90 0:76a4e97c113f 40 /* R, G, B */
KURETA90 0:76a4e97c113f 41 #define LCD_COLOR_BLACK (0x00) /* 0 0 0 0 */
KURETA90 0:76a4e97c113f 42 #define LCD_COLOR_BLUE (0x02) /* 0 0 1 0 */
KURETA90 0:76a4e97c113f 43 #define LCD_COLOR_GREEN (0x04) /* 0 1 0 0 */
KURETA90 0:76a4e97c113f 44 #define LCD_COLOR_CYAN (0x06) /* 0 1 1 0 */
KURETA90 0:76a4e97c113f 45 #define LCD_COLOR_RED (0x08) /* 1 0 0 0 */
KURETA90 0:76a4e97c113f 46 #define LCD_COLOR_MAGENTA (0x0a) /* 1 0 1 0 */
KURETA90 0:76a4e97c113f 47 #define LCD_COLOR_YELLOW (0x0c) /* 1 1 0 0 */
KURETA90 0:76a4e97c113f 48 #define LCD_COLOR_WHITE (0x0e) /* 1 1 1 0 */
KURETA90 0:76a4e97c113f 49
KURETA90 0:76a4e97c113f 50 /** @def
KURETA90 0:76a4e97c113f 51 * ID for setTransMode
KURETA90 0:76a4e97c113f 52 */
KURETA90 0:76a4e97c113f 53 #define LCD_TRANSMODE_OPAQUE (0x00) //!< BackGroud is Opaque
KURETA90 0:76a4e97c113f 54 #define LCD_TRANSMODE_TRANSPARENT (0x01) //!< BackGroud is Transparent
KURETA90 0:76a4e97c113f 55 #define LCD_TRANSMODE_TRANSLUCENT (0x02) //!< BackGroud is Translucent
KURETA90 0:76a4e97c113f 56
KURETA90 0:76a4e97c113f 57 /** @def
KURETA90 0:76a4e97c113f 58 *ID for setBlinkMode
KURETA90 0:76a4e97c113f 59 */
KURETA90 0:76a4e97c113f 60 #define LCD_BLINKMODE_NONE (0x00) //!< Blinking None
KURETA90 0:76a4e97c113f 61 #define LCD_BLINKMODE_WHITE (0x01) //!< Blinking White
KURETA90 0:76a4e97c113f 62 #define LCD_BLINKMODE_BLACK (0x02) //!< Blinking Black
KURETA90 0:76a4e97c113f 63 #define LCD_BLINKMODE_INVERSE (0x03) //!< Inversion Mode
KURETA90 0:76a4e97c113f 64
KURETA90 0:76a4e97c113f 65 /** A class for Color Memory LCD Library
KURETA90 0:76a4e97c113f 66 */
KURETA90 0:76a4e97c113f 67 class ColorMemLCD : public GraphicsDisplay {
KURETA90 0:76a4e97c113f 68 public:
KURETA90 0:76a4e97c113f 69
KURETA90 0:76a4e97c113f 70 /** Create a SPI_LCD object connected to SPI
KURETA90 0:76a4e97c113f 71 *
KURETA90 0:76a4e97c113f 72 * @param mosi pin connected to SDO of display
KURETA90 0:76a4e97c113f 73 * @param miso pin connected to SDI of display
KURETA90 0:76a4e97c113f 74 * @param sclk pin connected to RS of display
KURETA90 0:76a4e97c113f 75 * @param cs pin connected to CS of display
KURETA90 0:76a4e97c113f 76 * @param disp pin connected to DISP of display
KURETA90 0:76a4e97c113f 77 * @param power pin connected to POWER of display
KURETA90 0:76a4e97c113f 78 */
KURETA90 0:76a4e97c113f 79 ColorMemLCD( PinName mosi, PinName miso, PinName sclk, PinName cs, PinName disp, PinName power, const char* name ="TFT" );
KURETA90 0:76a4e97c113f 80
KURETA90 0:76a4e97c113f 81 /** Get the width of the screen in pixel
KURETA90 0:76a4e97c113f 82 *
KURETA90 0:76a4e97c113f 83 * @return width of screen in pixel
KURETA90 0:76a4e97c113f 84 *
KURETA90 0:76a4e97c113f 85 */
KURETA90 0:76a4e97c113f 86 virtual int width();
KURETA90 0:76a4e97c113f 87
KURETA90 0:76a4e97c113f 88 /** Get the height of the screen in pixel
KURETA90 0:76a4e97c113f 89 *
KURETA90 0:76a4e97c113f 90 * @return height of screen in pixel
KURETA90 0:76a4e97c113f 91 *
KURETA90 0:76a4e97c113f 92 */
KURETA90 0:76a4e97c113f 93 virtual int height();
KURETA90 0:76a4e97c113f 94
KURETA90 0:76a4e97c113f 95 /** Set window region
KURETA90 0:76a4e97c113f 96 *
KURETA90 0:76a4e97c113f 97 * @param x horizontal position
KURETA90 0:76a4e97c113f 98 * @param y vertical position
KURETA90 0:76a4e97c113f 99 * @param w window width in pixel
KURETA90 0:76a4e97c113f 100 * @param h window height in pixels
KURETA90 0:76a4e97c113f 101 */
KURETA90 0:76a4e97c113f 102 virtual void window( int x, int y, int w, int h );
KURETA90 0:76a4e97c113f 103
KURETA90 0:76a4e97c113f 104 /** Set a pixel on the window memory
KURETA90 0:76a4e97c113f 105 *
KURETA90 0:76a4e97c113f 106 * @param x horizontal position
KURETA90 0:76a4e97c113f 107 * @param y vertical position
KURETA90 0:76a4e97c113f 108 * @param color 4 bit pixel color
KURETA90 0:76a4e97c113f 109 */
KURETA90 0:76a4e97c113f 110 virtual void pixel(int x, int y,int colour);
KURETA90 0:76a4e97c113f 111
KURETA90 0:76a4e97c113f 112 /** Set a pixel on the window memory (alpha blend)
KURETA90 0:76a4e97c113f 113 *
KURETA90 0:76a4e97c113f 114 * @param x horizontal position
KURETA90 0:76a4e97c113f 115 * @param y vertical position
KURETA90 0:76a4e97c113f 116 * @param color 4 bit pixel color
KURETA90 0:76a4e97c113f 117 */
KURETA90 0:76a4e97c113f 118 virtual void pixel_alpha(int x, int y,int colour);
KURETA90 0:76a4e97c113f 119
KURETA90 0:76a4e97c113f 120 /** Fill the window memory with background color
KURETA90 0:76a4e97c113f 121 *
KURETA90 0:76a4e97c113f 122 */
KURETA90 0:76a4e97c113f 123 virtual void cls (void);
KURETA90 0:76a4e97c113f 124
KURETA90 0:76a4e97c113f 125 /** draw a circle
KURETA90 0:76a4e97c113f 126 *
KURETA90 0:76a4e97c113f 127 * @param x0,y0 center
KURETA90 0:76a4e97c113f 128 * @param r radius
KURETA90 0:76a4e97c113f 129 * @param color 4 bit color
KURETA90 0:76a4e97c113f 130 *
KURETA90 0:76a4e97c113f 131 */
KURETA90 0:76a4e97c113f 132 void circle(int x, int y, int r, int colour);
KURETA90 0:76a4e97c113f 133
KURETA90 0:76a4e97c113f 134 /** draw a filled circle
KURETA90 0:76a4e97c113f 135 *
KURETA90 0:76a4e97c113f 136 * @param x0,y0 center
KURETA90 0:76a4e97c113f 137 * @param r radius
KURETA90 0:76a4e97c113f 138 * @param color 4 bit color
KURETA90 0:76a4e97c113f 139 */
KURETA90 0:76a4e97c113f 140 void fillcircle(int x, int y, int r, int colour);
KURETA90 0:76a4e97c113f 141
KURETA90 0:76a4e97c113f 142 /** draw a horizontal line
KURETA90 0:76a4e97c113f 143 *
KURETA90 0:76a4e97c113f 144 * @param x0 horizontal start
KURETA90 0:76a4e97c113f 145 * @param x1 horizontal stop
KURETA90 0:76a4e97c113f 146 * @param y vertical position
KURETA90 0:76a4e97c113f 147 * @param color 4 bit color
KURETA90 0:76a4e97c113f 148 *
KURETA90 0:76a4e97c113f 149 */
KURETA90 0:76a4e97c113f 150 void hline(int x0, int x1, int y, int colour);
KURETA90 0:76a4e97c113f 151
KURETA90 0:76a4e97c113f 152 /** draw a vertical line
KURETA90 0:76a4e97c113f 153 *
KURETA90 0:76a4e97c113f 154 * @param x horizontal position
KURETA90 0:76a4e97c113f 155 * @param y0 vertical start
KURETA90 0:76a4e97c113f 156 * @param y1 vertical stop
KURETA90 0:76a4e97c113f 157 * @param color 4 bit color
KURETA90 0:76a4e97c113f 158 */
KURETA90 0:76a4e97c113f 159 void vline(int y0, int y1, int x, int colour);
KURETA90 0:76a4e97c113f 160
KURETA90 0:76a4e97c113f 161 /** draw a 1 pixel line
KURETA90 0:76a4e97c113f 162 *
KURETA90 0:76a4e97c113f 163 * @param x0,y0 start point
KURETA90 0:76a4e97c113f 164 * @param x1,y1 stop point
KURETA90 0:76a4e97c113f 165 * @param color 4 bit color
KURETA90 0:76a4e97c113f 166 *
KURETA90 0:76a4e97c113f 167 */
KURETA90 0:76a4e97c113f 168 void line(int x0, int y0, int x1, int y1, int colour);
KURETA90 0:76a4e97c113f 169
KURETA90 0:76a4e97c113f 170 /** draw a rect
KURETA90 0:76a4e97c113f 171 *
KURETA90 0:76a4e97c113f 172 * @param x0,y0 top left corner
KURETA90 0:76a4e97c113f 173 * @param x1,y1 down right corner
KURETA90 0:76a4e97c113f 174 * @param color 4 bit color
KURETA90 0:76a4e97c113f 175 *
KURETA90 0:76a4e97c113f 176 */
KURETA90 0:76a4e97c113f 177 void rect(int x0, int y0, int x1, int y1, int colour);
KURETA90 0:76a4e97c113f 178
KURETA90 0:76a4e97c113f 179 /** draw a filled rect
KURETA90 0:76a4e97c113f 180 *
KURETA90 0:76a4e97c113f 181 * @param x0,y0 top left corner
KURETA90 0:76a4e97c113f 182 * @param x1,y1 down right corner
KURETA90 0:76a4e97c113f 183 * @param color 4 bit color
KURETA90 0:76a4e97c113f 184 *
KURETA90 0:76a4e97c113f 185 */
KURETA90 0:76a4e97c113f 186 void fillrect(int x0, int y0, int x1, int y1, int colour);
KURETA90 0:76a4e97c113f 187
KURETA90 0:76a4e97c113f 188 /** setup cursor position
KURETA90 0:76a4e97c113f 189 *
KURETA90 0:76a4e97c113f 190 * @param x x-position (top left)
KURETA90 0:76a4e97c113f 191 * @param y y-position
KURETA90 0:76a4e97c113f 192 */
KURETA90 0:76a4e97c113f 193 virtual void locate(int x, int y);
KURETA90 0:76a4e97c113f 194
KURETA90 0:76a4e97c113f 195 /** calculate the max number of char in a line
KURETA90 0:76a4e97c113f 196 *
KURETA90 0:76a4e97c113f 197 * @return max columns depends on actual font size
KURETA90 0:76a4e97c113f 198 *
KURETA90 0:76a4e97c113f 199 */
KURETA90 0:76a4e97c113f 200 virtual int columns(void);
KURETA90 0:76a4e97c113f 201
KURETA90 0:76a4e97c113f 202 /** calculate the max number of columns
KURETA90 0:76a4e97c113f 203 *
KURETA90 0:76a4e97c113f 204 * @return max columndepends on actual font size
KURETA90 0:76a4e97c113f 205 *
KURETA90 0:76a4e97c113f 206 */
KURETA90 0:76a4e97c113f 207 virtual int rows(void);
KURETA90 0:76a4e97c113f 208
KURETA90 0:76a4e97c113f 209 /** put a char on the screen
KURETA90 0:76a4e97c113f 210 *
KURETA90 0:76a4e97c113f 211 * @param value char to print
KURETA90 0:76a4e97c113f 212 * @return printed char
KURETA90 0:76a4e97c113f 213 *
KURETA90 0:76a4e97c113f 214 */
KURETA90 0:76a4e97c113f 215 virtual int _putc(int value);
KURETA90 0:76a4e97c113f 216
KURETA90 0:76a4e97c113f 217 /** draw a character of selected font
KURETA90 0:76a4e97c113f 218 *
KURETA90 0:76a4e97c113f 219 * @param x x-position of char (top left)
KURETA90 0:76a4e97c113f 220 * @param y y-position
KURETA90 0:76a4e97c113f 221 * @param c char to print
KURETA90 0:76a4e97c113f 222 *
KURETA90 0:76a4e97c113f 223 */
KURETA90 0:76a4e97c113f 224 virtual void character(int x, int y, int c);
KURETA90 0:76a4e97c113f 225
KURETA90 0:76a4e97c113f 226 /** select the font
KURETA90 0:76a4e97c113f 227 *
KURETA90 0:76a4e97c113f 228 * @param f pointer to font array
KURETA90 0:76a4e97c113f 229 *
KURETA90 0:76a4e97c113f 230 */
KURETA90 0:76a4e97c113f 231 void set_font(unsigned char* f);
KURETA90 0:76a4e97c113f 232
KURETA90 0:76a4e97c113f 233 /** set transpalent effect
KURETA90 0:76a4e97c113f 234 *
KURETA90 0:76a4e97c113f 235 * @param mode trans mode
KURETA90 0:76a4e97c113f 236 *
KURETA90 0:76a4e97c113f 237 */
KURETA90 0:76a4e97c113f 238 void setTransMode( char mode );
KURETA90 0:76a4e97c113f 239
KURETA90 0:76a4e97c113f 240 /** set a bitmap on the window buffer
KURETA90 0:76a4e97c113f 241 *
KURETA90 0:76a4e97c113f 242 * @param x,y upper left corner
KURETA90 0:76a4e97c113f 243 * @param w width of bitmap
KURETA90 0:76a4e97c113f 244 * @param h high of bitmap
KURETA90 0:76a4e97c113f 245 * @param *bitmap pointer to the bitmap data
KURETA90 0:76a4e97c113f 246 *
KURETA90 0:76a4e97c113f 247 * @remarks bitmap format 4 bit R1 G1 B1
KURETA90 0:76a4e97c113f 248 *
KURETA90 0:76a4e97c113f 249 */
KURETA90 0:76a4e97c113f 250 void Bitmap4bit( int x, int y, int w, int h, unsigned char *bitmap);
KURETA90 0:76a4e97c113f 251
KURETA90 0:76a4e97c113f 252 /** set a bitmap on the window buffer
KURETA90 0:76a4e97c113f 253 *
KURETA90 0:76a4e97c113f 254 * @param x,y upper left corner
KURETA90 0:76a4e97c113f 255 * @param w width of draw rect
KURETA90 0:76a4e97c113f 256 * @param h high of draw rect
KURETA90 0:76a4e97c113f 257 * @param *bitmap pointer to the bitmap data
KURETA90 0:76a4e97c113f 258 * @param bmp_x,bmp_y upper left corner at BMP files
KURETA90 0:76a4e97c113f 259 * @param bmp_w width of bitmap
KURETA90 0:76a4e97c113f 260 * @param bmp_h high of bitmap
KURETA90 0:76a4e97c113f 261 *
KURETA90 0:76a4e97c113f 262 * @remarks bitmap format 4 bit R1 G1 B1
KURETA90 0:76a4e97c113f 263 *
KURETA90 0:76a4e97c113f 264 */
KURETA90 0:76a4e97c113f 265 void Bitmap4bit( int x, int y, int w, int h, unsigned char *bitmap, int bmp_x, int bmp_y, int bmp_w, int bmp_h );
KURETA90 0:76a4e97c113f 266
KURETA90 0:76a4e97c113f 267 /** set a bitmap on the window buffer
KURETA90 0:76a4e97c113f 268 *
KURETA90 0:76a4e97c113f 269 * @param x,y upper left corner
KURETA90 0:76a4e97c113f 270 * @param w width of bitmap
KURETA90 0:76a4e97c113f 271 * @param h high of bitmap
KURETA90 0:76a4e97c113f 272 * @param *bitmap pointer to the bitmap data
KURETA90 0:76a4e97c113f 273 *
KURETA90 0:76a4e97c113f 274 * @remarks bitmap format 1 bit
KURETA90 0:76a4e97c113f 275 *
KURETA90 0:76a4e97c113f 276 */
KURETA90 0:76a4e97c113f 277 void Bitmap1bit( int x, int y, int w, int h, unsigned char *bitmap);
KURETA90 0:76a4e97c113f 278
KURETA90 0:76a4e97c113f 279 /** set a bitmap on the window buffer
KURETA90 0:76a4e97c113f 280 *
KURETA90 0:76a4e97c113f 281 * @param x,y upper left corner
KURETA90 0:76a4e97c113f 282 * @param w width of draw rect
KURETA90 0:76a4e97c113f 283 * @param h high of draw rect
KURETA90 0:76a4e97c113f 284 * @param *bitmap pointer to the bitmap data
KURETA90 0:76a4e97c113f 285 * @param bmp_x,bmp_y upper left corner at BMP files
KURETA90 0:76a4e97c113f 286 * @param bmp_w width of bitmap
KURETA90 0:76a4e97c113f 287 * @param bmp_h high of bitmap
KURETA90 0:76a4e97c113f 288 *
KURETA90 0:76a4e97c113f 289 * @remarks bitmap format 1 bit
KURETA90 0:76a4e97c113f 290 *
KURETA90 0:76a4e97c113f 291 */
KURETA90 0:76a4e97c113f 292 void Bitmap1bit( int x, int y, int w, int h, unsigned char *bitmap, int bmp_x, int bmp_y, int bmp_w, int bmp_h );
KURETA90 0:76a4e97c113f 293
KURETA90 0:76a4e97c113f 294 /** Transfer to the LCD from diaply buffer
KURETA90 0:76a4e97c113f 295 *
KURETA90 0:76a4e97c113f 296 */
KURETA90 0:76a4e97c113f 297 void update();
KURETA90 0:76a4e97c113f 298
KURETA90 0:76a4e97c113f 299 /** Transfer a 24 bit BMP to the LCD from filesytem
KURETA90 0:76a4e97c113f 300 *
KURETA90 0:76a4e97c113f 301 * @param x,y position of upper left corner
KURETA90 0:76a4e97c113f 302 * @param *filenameBMP name of the BMP file
KURETA90 0:76a4e97c113f 303 *
KURETA90 0:76a4e97c113f 304 * @retval 1 succes
KURETA90 0:76a4e97c113f 305 * @retval 0 error
KURETA90 0:76a4e97c113f 306 *
KURETA90 0:76a4e97c113f 307 * @remarks bitmap format 24 bit R8 G8 B8
KURETA90 0:76a4e97c113f 308 *
KURETA90 0:76a4e97c113f 309 */
KURETA90 0:76a4e97c113f 310 int BMP_24( int x, int y, const char *filenameBMP );
KURETA90 0:76a4e97c113f 311
KURETA90 0:76a4e97c113f 312 /** Command for setting the state of LCD
KURETA90 0:76a4e97c113f 313 *
KURETA90 0:76a4e97c113f 314 */
KURETA90 0:76a4e97c113f 315 void command_SetState();
KURETA90 0:76a4e97c113f 316
KURETA90 0:76a4e97c113f 317 /** Command to clear whole the LCD
KURETA90 0:76a4e97c113f 318 *
KURETA90 0:76a4e97c113f 319 */
KURETA90 0:76a4e97c113f 320 void command_AllClear();
KURETA90 0:76a4e97c113f 321
KURETA90 0:76a4e97c113f 322 /** Command to blink
KURETA90 0:76a4e97c113f 323 * @param mode Blinking Mode or Inversion Mode
KURETA90 0:76a4e97c113f 324 *
KURETA90 0:76a4e97c113f 325 */
KURETA90 0:76a4e97c113f 326 void setBlinkMode( char mode );
KURETA90 0:76a4e97c113f 327
KURETA90 0:76a4e97c113f 328 /** Toggle the LCD polarity
KURETA90 0:76a4e97c113f 329 *
KURETA90 0:76a4e97c113f 330 */
KURETA90 0:76a4e97c113f 331 void polling();
KURETA90 0:76a4e97c113f 332
KURETA90 0:76a4e97c113f 333 void symbol(unsigned int x, unsigned int y, unsigned char *symbol);
KURETA90 0:76a4e97c113f 334
KURETA90 0:76a4e97c113f 335 protected:
KURETA90 0:76a4e97c113f 336
KURETA90 0:76a4e97c113f 337 /* Instance of inteface */
KURETA90 0:76a4e97c113f 338 SPI _spi;
KURETA90 0:76a4e97c113f 339 DigitalOut _cs;
KURETA90 0:76a4e97c113f 340 DigitalOut _disp;
KURETA90 0:76a4e97c113f 341 DigitalOut _power;
KURETA90 0:76a4e97c113f 342
KURETA90 0:76a4e97c113f 343 /* polarity variable */
KURETA90 0:76a4e97c113f 344 char polarity;
KURETA90 0:76a4e97c113f 345 char blink_cmd;
KURETA90 0:76a4e97c113f 346
KURETA90 0:76a4e97c113f 347 /* trans mode variable */
KURETA90 0:76a4e97c113f 348 char trans_mode;
KURETA90 0:76a4e97c113f 349
KURETA90 0:76a4e97c113f 350 /* data for character variable */
KURETA90 0:76a4e97c113f 351 unsigned char* font;
KURETA90 0:76a4e97c113f 352 int char_x;
KURETA90 0:76a4e97c113f 353 int char_y;
KURETA90 0:76a4e97c113f 354
KURETA90 0:76a4e97c113f 355 /* window variable */
KURETA90 0:76a4e97c113f 356 int window_x;
KURETA90 0:76a4e97c113f 357 int window_y;
KURETA90 0:76a4e97c113f 358 int window_w;
KURETA90 0:76a4e97c113f 359 int window_h;
KURETA90 0:76a4e97c113f 360
KURETA90 0:76a4e97c113f 361 /* temporary buffer */
KURETA90 0:76a4e97c113f 362 char cmd_buf[LCD_DISP_WIDTH/2]; /* for sending command */
KURETA90 0:76a4e97c113f 363 char disp_buf[(LCD_DISP_WIDTH/2)*LCD_DISP_HEIGHT_MAX_BUF]; /* display buffer */
KURETA90 0:76a4e97c113f 364 char file_buf[118]; /* for reading files */
KURETA90 0:76a4e97c113f 365
KURETA90 0:76a4e97c113f 366 /** send command
KURETA90 0:76a4e97c113f 367 *
KURETA90 0:76a4e97c113f 368 * @param line_cmd cmannd data
KURETA90 0:76a4e97c113f 369 * @param line line of display
KURETA90 0:76a4e97c113f 370 *
KURETA90 0:76a4e97c113f 371 */
KURETA90 0:76a4e97c113f 372 void sendLineCommand( char* line_cmd, int line );
KURETA90 0:76a4e97c113f 373 };
KURETA90 0:76a4e97c113f 374
KURETA90 0:76a4e97c113f 375 #endif /* MBED_COLOR_MEM_LCD_H */