32 #include <mraa/common.hpp> 33 #include <mraa/gpio.hpp> 34 #include <mraa/spi.hpp> 35 #include "ili9341_gfx.hpp" 38 #define ILI9341_TFTWIDTH 240 39 #define ILI9341_TFTHEIGHT 320 41 #define SPI_FREQ 15000000 43 #define ILI9341_NOP 0x00 44 #define ILI9341_SWRESET 0x01 45 #define ILI9341_RDDID 0x04 46 #define ILI9341_RDDST 0x09 48 #define ILI9341_SLPIN 0x10 49 #define ILI9341_SLPOUT 0x11 50 #define ILI9341_PTLON 0x12 51 #define ILI9341_NORON 0x13 53 #define ILI9341_RDMODE 0x0A 54 #define ILI9341_RDMADCTL 0x0B 55 #define ILI9341_RDPIXFMT 0x0C 56 #define ILI9341_RDIMGFMT 0x0D 57 #define ILI9341_RDSELFDIAG 0x0F 59 #define ILI9341_INVOFF 0x20 60 #define ILI9341_INVON 0x21 61 #define ILI9341_GAMMASET 0x26 62 #define ILI9341_DISPOFF 0x28 63 #define ILI9341_DISPON 0x29 65 #define ILI9341_CASET 0x2A 66 #define ILI9341_PASET 0x2B 67 #define ILI9341_RAMWR 0x2C 68 #define ILI9341_RAMRD 0x2E 70 #define ILI9341_PTLAR 0x30 71 #define ILI9341_MADCTL 0x36 72 #define ILI9341_PIXFMT 0x3A 74 #define ILI9341_FRMCTR1 0xB1 75 #define ILI9341_FRMCTR2 0xB2 76 #define ILI9341_FRMCTR3 0xB3 77 #define ILI9341_INVCTR 0xB4 78 #define ILI9341_DFUNCTR 0xB6 80 #define ILI9341_PWCTR1 0xC0 81 #define ILI9341_PWCTR2 0xC1 82 #define ILI9341_PWCTR3 0xC2 83 #define ILI9341_PWCTR4 0xC3 84 #define ILI9341_PWCTR5 0xC4 85 #define ILI9341_VMCTR1 0xC5 86 #define ILI9341_VMCTR2 0xC7 88 #define ILI9341_RDID1 0xDA 89 #define ILI9341_RDID2 0xDB 90 #define ILI9341_RDID3 0xDC 91 #define ILI9341_RDID4 0xDD 93 #define ILI9341_GMCTRP1 0xE0 94 #define ILI9341_GMCTRN1 0xE1 96 #define MADCTL_MY 0x80 97 #define MADCTL_MX 0x40 98 #define MADCTL_MV 0x20 99 #define MADCTL_ML 0x10 100 #define MADCTL_RGB 0x00 101 #define MADCTL_BGR 0x08 102 #define MADCTL_MH 0x04 110 #define ILI9341_BLACK 0x0000 111 #define ILI9341_NAVY 0x000F 112 #define ILI9341_DARKGREEN 0x03E0 113 #define ILI9341_DARKCYAN 0x03EF 114 #define ILI9341_MAROON 0x7800 115 #define ILI9341_PURPLE 0x780F 116 #define ILI9341_OLIVE 0x7BE0 117 #define ILI9341_LIGHTGREY 0xC618 118 #define ILI9341_DARKGREY 0x7BEF 119 #define ILI9341_BLUE 0x001F 120 #define ILI9341_GREEN 0x07E0 121 #define ILI9341_CYAN 0x07FF 122 #define ILI9341_RED 0xF800 123 #define ILI9341_MAGENTA 0xF81F 124 #define ILI9341_YELLOW 0xFFE0 125 #define ILI9341_WHITE 0xFFFF 126 #define ILI9341_ORANGE 0xFD20 127 #define ILI9341_GREENYELLOW 0xAFE5 128 #define ILI9341_PINK 0xF81F 162 ILI9341(
int csLCD,
int csSD,
int dc,
int rst);
203 void drawPixel(int16_t x, int16_t y, uint16_t color);
213 void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color);
223 void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color);
269 uint16_t
color565(uint8_t r, uint8_t g, uint8_t b);
320 mraa::Result
dcLow();
333 mraa::Gpio m_csLCDPinCtx;
334 mraa::Gpio m_csSDPinCtx;
335 mraa::Gpio m_dcPinCtx;
336 mraa::Gpio m_rstPinCtx;
uint16_t color565(uint8_t r, uint8_t g, uint8_t b)
Definition: ili9341.cxx:349
void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color)
Definition: ili9341.cxx:285
void invertDisplay(bool i)
Definition: ili9341.cxx:345
void executeCMDList(const uint8_t *addr)
Definition: ili9341.cxx:353
void drawPixel(int16_t x, int16_t y, uint16_t color)
Definition: ili9341.cxx:246
mraa::Result lcdCSOn()
Definition: ili9341.cxx:391
mraa::Result lcdCSOff()
Definition: ili9341.cxx:407
void setAddrWindow(uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1)
Definition: ili9341.cxx:226
GFX helper class.
Definition: ili9341_gfx.hpp:39
std::string name()
Definition: ili9341.hpp:167
void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color)
Definition: ili9341.cxx:258
mraa::Result dcHigh()
Definition: ili9341.cxx:445
C++ API wrapper for the bh1749 driver.
Definition: a110x.hpp:29
void writecommand(uint8_t c)
Definition: ili9341.cxx:377
mraa::Result rstLow()
Definition: ili9341.cxx:478
mraa::Result rstHigh()
Definition: ili9341.cxx:467
void fillRect(int16_t x, int16_t y, int16_t w, int16_t h, uint16_t color)
Definition: ili9341.cxx:312
ILI9341(int csLCD, int csSD, int dc, int rst)
Definition: ili9341.cxx:40
void fillScreen(uint16_t color)
Definition: ili9341.cxx:341
void initModule()
Definition: ili9341.cxx:48
API for the ILI9342 LCD.
Definition: ili9341.hpp:152
mraa::Result sdCSOff()
Definition: ili9341.cxx:434
void writedata(uint8_t d)
Definition: ili9341.cxx:384
void configModule()
Definition: ili9341.cxx:107
mraa::Result sdCSOn()
Definition: ili9341.cxx:418
void setRotation(uint8_t r)
Definition: ili9341.cxx:79
mraa::Result dcLow()
Definition: ili9341.cxx:456