1 /******************** (C) COPYRIGHT 2006 STMicroelectronics ********************
\r
3 * Author : MCD Application Team
\r
4 * Date First Issued : 05/18/2006 : Version 1.0
\r
5 * Description : This file contains all the functions prototypes for the
\r
6 * lcd software driver.
\r
7 ********************************************************************************
\r
9 * 05/24/2006 : Version 1.1
\r
10 * 05/18/2006 : Version 1.0
\r
11 ********************************************************************************
\r
12 * THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
\r
13 * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
\r
14 * AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
\r
15 * INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
\r
16 * CONTENT OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
\r
17 * INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
\r
18 *******************************************************************************/
\r
20 /* Define to prevent recursive inclusion ---------------------------------------*/
\r
24 /* Includes --------------------------------------------------------------------*/
\r
25 #include "91x_lib.h"
\r
27 /* Exported types --------------------------------------------------------------*/
\r
29 /* Data lines configuration mode */
\r
34 } DataConfigMode_TypeDef;
\r
36 /* Text color mode */
\r
41 } TextColorMode_TypeDef;
\r
43 /* Dot On/Off mode */
\r
50 /* Exported constants ----------------------------------------------------------*/
\r
52 /* LCD Control pins */
\r
53 #define CtrlPin_E2 0x20
\r
54 #define CtrlPin_E1 0x10
\r
55 #define CtrlPin_RW 0x40
\r
56 #define CtrlPin_DI 0x80
\r
59 #define DISPLAY_ON 0xAF
\r
60 #define DISPLAY_OFF 0xAE
\r
61 #define START_LINE 0xC0
\r
62 #define START_COLUMN 0x00
\r
63 #define CLOCKWISE_OUTPUT 0xA0
\r
64 #define DYNAMIC_DRIVE 0xA4
\r
65 #define DUTY_CYCLE 0xA9
\r
66 #define READ_MODIFY_WRITE_OFF 0xEE
\r
67 #define SOFTWARE_RESET 0xE2
\r
69 /* LCD Lines when LCD is managed as 2*17 characters */
\r
73 /* Exported macro --------------------------------------------------------------*/
\r
74 /* Exported functions ----------------------------------------------------------*/
\r
75 /*----- Low layer function -----*/
\r
76 void LCD_CtrlLinesConfig(void);
\r
77 void LCD_CtrlLinesWrite(GPIO_TypeDef* GPIOx, u32 CtrlPins, BitAction BitVal);
\r
78 void LCD_DataLinesConfig(DataConfigMode_TypeDef Mode);
\r
79 void LCD_DataLinesWrite(GPIO_TypeDef* GPIOx, u32 PortVal);
\r
81 /*----- Medium layer function -----*/
\r
82 void LCD_CheckMasterStatus(void);
\r
83 void LCD_CheckSlaveStatus(void);
\r
84 void LCD_SendMasterCmd(u8 Cmd);
\r
85 void LCD_SendSlaveCmd(u8 Cmd);
\r
86 void LCD_SendMasterData(u8 Data);
\r
87 u32 LCD_ReadMasterData(void);
\r
88 void LCD_SendSlaveData(u8 Data);
\r
89 u32 LCD_ReadSlaveData(void);
\r
90 void LCD_SetMasterPage(u8 Page);
\r
91 void LCD_SetSlavePage(u8 Page);
\r
92 void LCD_SetMasterColumn(u8 Address);
\r
93 void LCD_SetSlaveColumn(u8 Address);
\r
94 void LCD_DrawChar(u8 Line, u8 Column, u8 Width, u8 *Bmp);
\r
95 char LCD_HexToAsciiLow(u8 byte);
\r
96 char LCD_HexToAsciiHigh(u8 byte);
\r
97 void LCD_SetTextColor(TextColorMode_TypeDef TextColor);
\r
99 /*----- High layer function -----*/
\r
100 void LCD_Init(void);
\r
101 /* LCD managed as 2 Lines, 17 characters each one (2Lines*17Char) */
\r
102 void LCD_ClearLine(u8 Line);
\r
103 void LCD_DisplayChar(u8 Line, u8 Column, u8 Ascii, TextColorMode_TypeDef CharMode);
\r
104 void LCD_DisplayString(u8 Line, u8 *ptr, TextColorMode_TypeDef CharMode);
\r
105 void LCD_Printf(u8* ptr, ...);
\r
106 /* LCD managed as 122*32 dots */
\r
107 void LCD_ClearMaster(void);
\r
108 void LCD_ClearSlave(void);
\r
109 void LCD_Clear(void);
\r
110 void LCD_DrawMasterGraphic(u8 *Bmp);
\r
111 void LCD_DrawSlaveGraphic(u8 *Bmp);
\r
112 void LCD_DrawGraphic(u8 *Bmp);
\r
113 void LCD_ScrollGraphic(u8 *Bmp, u32 nCount);
\r
114 void LCD_DrawPixel(u8 XPos, u8 YPos, DotMode_TypeDef Mode);
\r
115 void LCD_DrawLine(u8 XPos1, u8 YPos1, u8 XPos2, u8 YPos2);
\r
116 void LCD_DrawBox(u8 XPos, u8 YPos, u8 Dx, u8 Dy);
\r
118 #endif /*__LCD_H */
\r
120 /******************* (C) COPYRIGHT 2006 STMicroelectronics *****END OF FILE******/
\r