ili9328.h
95 lines
| 5.2 KiB
| text/x-c
|
CLexer
|
r32 | /*------------------------------------------------------------------------------ | ||
-- This file is a part of the libuc, microcontroler library | ||||
-- Copyright (C) 2012, Alexis Jeandet | ||||
-- | ||||
-- This program is free software; you can redistribute it and/or modify | ||||
-- it under the terms of the GNU General Public License as published by | ||||
-- the Free Software Foundation; either version 3 of the License, or | ||||
-- (at your option) any later version. | ||||
-- | ||||
-- This program is distributed in the hope that it will be useful, | ||||
-- but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||||
-- GNU General Public License for more details. | ||||
-- | ||||
-- You should have received a copy of the GNU General Public License | ||||
-- along with this program; if not, write to the Free Software | ||||
-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||||
------------------------------------------------------------------------------- | ||||
-- Author : Alexis Jeandet | ||||
-- Mail : alexis.jeandet@gmail.com | ||||
-------------------------------------------------------------------------------*/ | ||||
#ifndef ILI9328_H | ||||
#define ILI9328_H | ||||
#include <uhandle.h> | ||||
#include <genericLCD_Controler.h> | ||||
|
r33 | #include <stdint.h> | ||
|
r37 | #include <fonts.h> | ||
|
r32 | |||
extern int ili9328init(struct LCD_t* LCD); | ||||
|
r36 | extern void ili9328setFrame(LCD_t* LCD,uint16_t X,uint16_t Y,uint16_t W,uint16_t H); | ||
|
r35 | extern void ili9328setGRAMaddress(LCD_t* LCD,uint16_t Haddress,uint16_t Vaddress); | ||
extern void ili9328paint(LCD_t* LCD,void* buffer,uint16_t Xpos,uint16_t Ypos,uint16_t Width,uint16_t Height); | ||||
|
r37 | extern void ili9328paintText(LCD_t* LCD,char* buffer,uint16_t Xpos,uint16_t Ypos,sFONT *font,uint32_t color); | ||
extern void ili9328paintFilRect(LCD_t* LCD,uint16_t Xpos,uint16_t Ypos,uint16_t w,uint16_t h,uint32_t contColor,uint32_t fillColor); | ||||
|
r36 | extern void ili9328refreshenable(struct LCD_t* LCD,int enable); | ||
|
r32 | |||
|
r33 | #define ILI9328_REGISTER_DRIVERCODEREAD ((uint32_t) 0x0000 ) | ||
#define ILI9328_REGISTER_DRIVEROUTPUTCONTROL1 ((uint32_t) 0x0001 ) | ||||
#define ILI9328_REGISTER_LCDDRIVINGCONTROL ((uint32_t) 0x0002 ) | ||||
#define ILI9328_REGISTER_ENTRYMODE ((uint32_t) 0x0003 ) | ||||
#define ILI9328_REGISTER_RESIZECONTROL ((uint32_t) 0x0004 ) | ||||
#define ILI9328_REGISTER_DISPLAYCONTROL1 ((uint32_t) 0x0007 ) | ||||
#define ILI9328_REGISTER_DISPLAYCONTROL2 ((uint32_t) 0x0008 ) | ||||
#define ILI9328_REGISTER_DISPLAYCONTROL3 ((uint32_t) 0x0009 ) | ||||
#define ILI9328_REGISTER_DISPLAYCONTROL4 ((uint32_t) 0x000A ) | ||||
#define ILI9328_REGISTER_RGBDISPLAYINTERFACECONTROL1 ((uint32_t) 0x000C ) | ||||
#define ILI9328_REGISTER_FRAMEMAKERPOSITION ((uint32_t) 0x000D ) | ||||
#define ILI9328_REGISTER_RGBDISPLAYINTERFACECONTROL2 ((uint32_t) 0x000F ) | ||||
#define ILI9328_REGISTER_POWERCONTROL1 ((uint32_t) 0x0010 ) | ||||
#define ILI9328_REGISTER_POWERCONTROL2 ((uint32_t) 0x0011 ) | ||||
#define ILI9328_REGISTER_POWERCONTROL3 ((uint32_t) 0x0012 ) | ||||
#define ILI9328_REGISTER_POWERCONTROL4 ((uint32_t) 0x0013 ) | ||||
#define ILI9328_REGISTER_HORIZONTALGRAMADDRESSSET ((uint32_t) 0x0020 ) | ||||
#define ILI9328_REGISTER_VERTICALGRAMADDRESSSET ((uint32_t) 0x0021 ) | ||||
#define ILI9328_REGISTER_WRITEDATATOGRAM ((uint32_t) 0x0022 ) | ||||
#define ILI9328_REGISTER_POWERCONTROL7 ((uint32_t) 0x0029 ) | ||||
#define ILI9328_REGISTER_FRAMERATEANDCOLORCONTROL ((uint32_t) 0x002B ) | ||||
#define ILI9328_REGISTER_GAMMACONTROL1 ((uint32_t) 0x0030 ) | ||||
#define ILI9328_REGISTER_GAMMACONTROL2 ((uint32_t) 0x0031 ) | ||||
#define ILI9328_REGISTER_GAMMACONTROL3 ((uint32_t) 0x0032 ) | ||||
#define ILI9328_REGISTER_GAMMACONTROL4 ((uint32_t) 0x0035 ) | ||||
#define ILI9328_REGISTER_GAMMACONTROL5 ((uint32_t) 0x0036 ) | ||||
#define ILI9328_REGISTER_GAMMACONTROL6 ((uint32_t) 0x0037 ) | ||||
#define ILI9328_REGISTER_GAMMACONTROL7 ((uint32_t) 0x0038 ) | ||||
#define ILI9328_REGISTER_GAMMACONTROL8 ((uint32_t) 0x0039 ) | ||||
#define ILI9328_REGISTER_GAMMACONTROL9 ((uint32_t) 0x003C ) | ||||
#define ILI9328_REGISTER_GAMMACONTROL10 ((uint32_t) 0x003D ) | ||||
#define ILI9328_REGISTER_HORIZONTALADDRESSSTARTPOSITION ((uint32_t) 0x0050 ) | ||||
#define ILI9328_REGISTER_HORIZONTALADDRESSENDPOSITION ((uint32_t) 0x0051 ) | ||||
#define ILI9328_REGISTER_VERTICALADDRESSSTARTPOSITION ((uint32_t) 0x0052 ) | ||||
#define ILI9328_REGISTER_VERTICALADDRESSENDPOSITION ((uint32_t) 0x0053 ) | ||||
#define ILI9328_REGISTER_DRIVEROUTPUTCONTROL2 ((uint32_t) 0x0060 ) | ||||
#define ILI9328_REGISTER_BASEIMAGEDISPLAYCONTROL ((uint32_t) 0x0061 ) | ||||
#define ILI9328_REGISTER_VERTICALSCROLLCONTROL ((uint32_t) 0x006A ) | ||||
#define ILI9328_REGISTER_PARTIALIMAGE1DISPLAYPOSITION ((uint32_t) 0x0080 ) | ||||
#define ILI9328_REGISTER_PARTIALIMAGE1AREASTARTLINE ((uint32_t) 0x0081 ) | ||||
#define ILI9328_REGISTER_PARTIALIMAGE1AREAENDLINE ((uint32_t) 0x0082 ) | ||||
#define ILI9328_REGISTER_PARTIALIMAGE2DISPLAYPOSITION ((uint32_t) 0x0083 ) | ||||
#define ILI9328_REGISTER_PARTIALIMAGE2AREASTARTLINE ((uint32_t) 0x0084 ) | ||||
#define ILI9328_REGISTER_PARTIALIMAGE2AREAENDLINE ((uint32_t) 0x0085 ) | ||||
#define ILI9328_REGISTER_PANELINTERFACECONTROL1 ((uint32_t) 0x0090 ) | ||||
#define ILI9328_REGISTER_PANELINTERFACECONTROL2 ((uint32_t) 0x0092 ) | ||||
#define ILI9328_REGISTER_PANELINTERFACECONTROL4 ((uint32_t) 0x0095 ) | ||||
#define ILI9328_REGISTER_OTPVCMPROGRAMMINGCONTROL ((uint32_t) 0x00A1 ) | ||||
#define ILI9328_REGISTER_OTPVCMSTATUSANDENABLE ((uint32_t) 0x00A2 ) | ||||
#define ILI9328_REGISTER_OTPPROGRAMMINGIDKEY ((uint32_t) 0x00A5 ) | ||||
|
r32 | |||
#endif | ||||