2012-06-10 20:28:02 +00:00
|
|
|
#ifndef SSD1289_H
|
|
|
|
#define SSD1289_H
|
|
|
|
|
2012-06-10 22:00:07 +00:00
|
|
|
#include "glcd.h"
|
2012-06-11 16:12:05 +00:00
|
|
|
|
|
|
|
#ifdef LCD_USE_SSD1289
|
2012-06-10 22:00:07 +00:00
|
|
|
|
2012-06-19 19:05:01 +00:00
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
2012-06-11 15:38:26 +00:00
|
|
|
|
2012-06-10 22:00:07 +00:00
|
|
|
void lld_lcdInit(void);
|
2012-06-17 00:00:48 +00:00
|
|
|
void lld_lcdWriteStreamStart(void);
|
|
|
|
void lld_lcdWriteStreamStop(void);
|
2012-06-16 23:43:06 +00:00
|
|
|
void lld_lcdWriteStream(uint16_t *buffer, uint16_t size);
|
2012-06-10 21:51:36 +00:00
|
|
|
void lld_lcdSetCursor(uint16_t x, uint16_t y);
|
|
|
|
void lld_lcdSetOrientation(uint8_t newOrientation);
|
2012-06-10 22:00:07 +00:00
|
|
|
void lld_lcdSetWindow(uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1);
|
2012-06-10 21:51:36 +00:00
|
|
|
void lld_lcdClear(uint16_t color);
|
2012-06-10 22:00:07 +00:00
|
|
|
void lld_lcdDrawPixel(uint16_t x, uint16_t y, uint16_t color);
|
2012-06-15 20:09:19 +00:00
|
|
|
void lld_lcdFillArea(uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1, uint16_t color);
|
2012-06-19 22:17:10 +00:00
|
|
|
void lld_lcdSetPowerMode(uint8_t powerMode);
|
2012-06-15 19:55:31 +00:00
|
|
|
uint16_t lld_lcdGetPixelColor(uint16_t x, uint16_t y);
|
2012-06-10 22:00:07 +00:00
|
|
|
uint16_t lld_lcdGetOrientation(void);
|
2012-06-10 20:28:02 +00:00
|
|
|
uint16_t lld_lcdGetHeight(void);
|
|
|
|
uint16_t lld_lcdGetWidth(void);
|
2012-07-25 02:00:30 +00:00
|
|
|
void lld_lcdVerticalScroll(uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1, int16_t lines);
|
2012-06-10 20:28:02 +00:00
|
|
|
|
2012-06-19 19:05:01 +00:00
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
2012-06-19 21:26:30 +00:00
|
|
|
#ifdef LCD_USE_GPIO
|
|
|
|
#define Set_CS palSetPad(LCD_CMD_PORT, LCD_CS);
|
|
|
|
#define Clr_CS palClearPad(LCD_CMD_PORT, LCD_CS);
|
|
|
|
#define Set_RS palSetPad(LCD_CMD_PORT, LCD_RS);
|
|
|
|
#define Clr_RS palClearPad(LCD_CMD_PORT, LCD_RS);
|
|
|
|
#define Set_WR palSetPad(LCD_CMD_PORT, LCD_WR);
|
|
|
|
#define Clr_WR palClearPad(LCD_CMD_PORT, LCD_WR);
|
|
|
|
#define Set_RD palSetPad(LCD_CMD_PORT, LCD_RD);
|
|
|
|
#define Clr_RD palClearPad(LCD_CMD_PORT, LCD_RD);
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef LCD_USE_SPI
|
|
|
|
/* TODO */
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef LCD_USE_FSMC
|
|
|
|
/* LCD Registers */
|
|
|
|
#define R0 0x00
|
|
|
|
#define R1 0x01
|
|
|
|
#define R2 0x02
|
|
|
|
#define R3 0x03
|
|
|
|
#define R4 0x04
|
|
|
|
#define R5 0x05
|
|
|
|
#define R6 0x06
|
|
|
|
#define R7 0x07
|
|
|
|
#define R8 0x08
|
|
|
|
#define R9 0x09
|
|
|
|
#define R10 0x0A
|
|
|
|
#define R12 0x0C
|
|
|
|
#define R13 0x0D
|
|
|
|
#define R14 0x0E
|
|
|
|
#define R15 0x0F
|
|
|
|
#define R16 0x10
|
|
|
|
#define R17 0x11
|
|
|
|
#define R18 0x12
|
|
|
|
#define R19 0x13
|
|
|
|
#define R20 0x14
|
|
|
|
#define R21 0x15
|
|
|
|
#define R22 0x16
|
|
|
|
#define R23 0x17
|
|
|
|
#define R24 0x18
|
|
|
|
#define R25 0x19
|
|
|
|
#define R26 0x1A
|
|
|
|
#define R27 0x1B
|
|
|
|
#define R28 0x1C
|
|
|
|
#define R29 0x1D
|
|
|
|
#define R30 0x1E
|
|
|
|
#define R31 0x1F
|
|
|
|
#define R32 0x20
|
|
|
|
#define R33 0x21
|
|
|
|
#define R34 0x22
|
|
|
|
#define R36 0x24
|
|
|
|
#define R37 0x25
|
|
|
|
#define R40 0x28
|
|
|
|
#define R41 0x29
|
|
|
|
#define R43 0x2B
|
|
|
|
#define R45 0x2D
|
|
|
|
#define R48 0x30
|
|
|
|
#define R49 0x31
|
|
|
|
#define R50 0x32
|
|
|
|
#define R51 0x33
|
|
|
|
#define R52 0x34
|
|
|
|
#define R53 0x35
|
|
|
|
#define R54 0x36
|
|
|
|
#define R55 0x37
|
|
|
|
#define R56 0x38
|
|
|
|
#define R57 0x39
|
|
|
|
#define R59 0x3B
|
|
|
|
#define R60 0x3C
|
|
|
|
#define R61 0x3D
|
|
|
|
#define R62 0x3E
|
|
|
|
#define R63 0x3F
|
|
|
|
#define R64 0x40
|
|
|
|
#define R65 0x41
|
|
|
|
#define R66 0x42
|
|
|
|
#define R67 0x43
|
|
|
|
#define R68 0x44
|
|
|
|
#define R69 0x45
|
|
|
|
#define R70 0x46
|
|
|
|
#define R71 0x47
|
|
|
|
#define R72 0x48
|
|
|
|
#define R73 0x49
|
|
|
|
#define R74 0x4A
|
|
|
|
#define R75 0x4B
|
|
|
|
#define R76 0x4C
|
|
|
|
#define R77 0x4D
|
|
|
|
#define R78 0x4E
|
|
|
|
#define R79 0x4F
|
|
|
|
#define R80 0x50
|
|
|
|
#define R81 0x51
|
|
|
|
#define R82 0x52
|
|
|
|
#define R83 0x53
|
|
|
|
#define R96 0x60
|
|
|
|
#define R97 0x61
|
|
|
|
#define R106 0x6A
|
|
|
|
#define R118 0x76
|
|
|
|
#define R128 0x80
|
|
|
|
#define R129 0x81
|
|
|
|
#define R130 0x82
|
|
|
|
#define R131 0x83
|
|
|
|
#define R132 0x84
|
|
|
|
#define R133 0x85
|
|
|
|
#define R134 0x86
|
|
|
|
#define R135 0x87
|
|
|
|
#define R136 0x88
|
|
|
|
#define R137 0x89
|
|
|
|
#define R139 0x8B
|
|
|
|
#define R140 0x8C
|
|
|
|
#define R141 0x8D
|
|
|
|
#define R143 0x8F
|
|
|
|
#define R144 0x90
|
|
|
|
#define R145 0x91
|
|
|
|
#define R146 0x92
|
|
|
|
#define R147 0x93
|
|
|
|
#define R148 0x94
|
|
|
|
#define R149 0x95
|
|
|
|
#define R150 0x96
|
|
|
|
#define R151 0x97
|
|
|
|
#define R152 0x98
|
|
|
|
#define R153 0x99
|
|
|
|
#define R154 0x9A
|
|
|
|
#define R157 0x9D
|
|
|
|
#define R192 0xC0
|
|
|
|
#define R193 0xC1
|
|
|
|
#define R229 0xE5
|
|
|
|
#endif
|
|
|
|
|
2012-06-10 20:28:02 +00:00
|
|
|
#endif
|
|
|
|
#endif
|
2012-06-11 16:12:05 +00:00
|
|
|
|