2 ******************************************************************************
\r
3 * @file stm32l1xx_lcd.h
\r
4 * @author MCD Application Team
\r
6 * @date 31-December-2010
\r
7 * @brief This file contains all the functions prototypes for the LCD firmware
\r
9 ******************************************************************************
\r
12 * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
\r
13 * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
\r
14 * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
\r
15 * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
\r
16 * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
\r
17 * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
\r
19 * <h2><center>© COPYRIGHT 2010 STMicroelectronics</center></h2>
\r
20 ******************************************************************************
\r
23 /* Define to prevent recursive inclusion -------------------------------------*/
\r
24 #ifndef __STM32L1xx_LCD_H
\r
25 #define __STM32L1xx_LCD_H
\r
31 /* Includes ------------------------------------------------------------------*/
\r
32 #include "stm32l1xx.h"
\r
34 /** @addtogroup STM32L1xx_StdPeriph_Driver
\r
42 /* Exported types ------------------------------------------------------------*/
\r
45 * @brief LCD Init structure definition
\r
50 uint32_t LCD_Prescaler; /*!< Configures the LCD Prescaler.
\r
51 This parameter can be one value of @ref LCD_Prescaler */
\r
52 uint32_t LCD_Divider; /*!< Configures the LCD Divider.
\r
53 This parameter can be one value of @ref LCD_Divider */
\r
54 uint32_t LCD_Duty; /*!< Configures the LCD Duty.
\r
55 This parameter can be one value of @ref LCD_Duty */
\r
56 uint32_t LCD_Bias; /*!< Configures the LCD Bias.
\r
57 This parameter can be one value of @ref LCD_Bias */
\r
58 uint32_t LCD_VoltageSource; /*!< Selects the LCD Voltage source.
\r
59 This parameter can be one value of @ref LCD_Voltage_Source */
\r
63 /* Exported constants --------------------------------------------------------*/
\r
65 /** @defgroup LCD_Exported_Constants
\r
69 /** @defgroup LCD_Prescaler
\r
73 #define LCD_Prescaler_1 ((uint32_t)0x00000000) /*!< CLKPS = LCDCLK */
\r
74 #define LCD_Prescaler_2 ((uint32_t)0x00400000) /*!< CLKPS = LCDCLK/2 */
\r
75 #define LCD_Prescaler_4 ((uint32_t)0x00800000) /*!< CLKPS = LCDCLK/4 */
\r
76 #define LCD_Prescaler_8 ((uint32_t)0x00C00000) /*!< CLKPS = LCDCLK/8 */
\r
77 #define LCD_Prescaler_16 ((uint32_t)0x01000000) /*!< CLKPS = LCDCLK/16 */
\r
78 #define LCD_Prescaler_32 ((uint32_t)0x01400000) /*!< CLKPS = LCDCLK/32 */
\r
79 #define LCD_Prescaler_64 ((uint32_t)0x01800000) /*!< CLKPS = LCDCLK/64 */
\r
80 #define LCD_Prescaler_128 ((uint32_t)0x01C00000) /*!< CLKPS = LCDCLK/128 */
\r
81 #define LCD_Prescaler_256 ((uint32_t)0x02000000) /*!< CLKPS = LCDCLK/256 */
\r
82 #define LCD_Prescaler_512 ((uint32_t)0x02400000) /*!< CLKPS = LCDCLK/512 */
\r
83 #define LCD_Prescaler_1024 ((uint32_t)0x02800000) /*!< CLKPS = LCDCLK/1024 */
\r
84 #define LCD_Prescaler_2048 ((uint32_t)0x02C00000) /*!< CLKPS = LCDCLK/2048 */
\r
85 #define LCD_Prescaler_4096 ((uint32_t)0x03000000) /*!< CLKPS = LCDCLK/4096 */
\r
86 #define LCD_Prescaler_8192 ((uint32_t)0x03400000) /*!< CLKPS = LCDCLK/8192 */
\r
87 #define LCD_Prescaler_16384 ((uint32_t)0x03800000) /*!< CLKPS = LCDCLK/16384 */
\r
88 #define LCD_Prescaler_32768 ((uint32_t)0x03C00000) /*!< CLKPS = LCDCLK/32768 */
\r
90 #define IS_LCD_PRESCALER(PRESCALER) (((PRESCALER) == LCD_Prescaler_1) || \
\r
91 ((PRESCALER) == LCD_Prescaler_2) || \
\r
92 ((PRESCALER) == LCD_Prescaler_4) || \
\r
93 ((PRESCALER) == LCD_Prescaler_8) || \
\r
94 ((PRESCALER) == LCD_Prescaler_16) || \
\r
95 ((PRESCALER) == LCD_Prescaler_32) || \
\r
96 ((PRESCALER) == LCD_Prescaler_64) || \
\r
97 ((PRESCALER) == LCD_Prescaler_128) || \
\r
98 ((PRESCALER) == LCD_Prescaler_256) || \
\r
99 ((PRESCALER) == LCD_Prescaler_512) || \
\r
100 ((PRESCALER) == LCD_Prescaler_1024) || \
\r
101 ((PRESCALER) == LCD_Prescaler_2048) || \
\r
102 ((PRESCALER) == LCD_Prescaler_4096) || \
\r
103 ((PRESCALER) == LCD_Prescaler_8192) || \
\r
104 ((PRESCALER) == LCD_Prescaler_16384) || \
\r
105 ((PRESCALER) == LCD_Prescaler_32768))
\r
111 /** @defgroup LCD_Divider
\r
115 #define LCD_Divider_16 ((uint32_t)0x00000000) /*!< LCD frequency = CLKPS/16 */
\r
116 #define LCD_Divider_17 ((uint32_t)0x00040000) /*!< LCD frequency = CLKPS/17 */
\r
117 #define LCD_Divider_18 ((uint32_t)0x00080000) /*!< LCD frequency = CLKPS/18 */
\r
118 #define LCD_Divider_19 ((uint32_t)0x000C0000) /*!< LCD frequency = CLKPS/19 */
\r
119 #define LCD_Divider_20 ((uint32_t)0x00100000) /*!< LCD frequency = CLKPS/20 */
\r
120 #define LCD_Divider_21 ((uint32_t)0x00140000) /*!< LCD frequency = CLKPS/21 */
\r
121 #define LCD_Divider_22 ((uint32_t)0x00180000) /*!< LCD frequency = CLKPS/22 */
\r
122 #define LCD_Divider_23 ((uint32_t)0x001C0000) /*!< LCD frequency = CLKPS/23 */
\r
123 #define LCD_Divider_24 ((uint32_t)0x00200000) /*!< LCD frequency = CLKPS/24 */
\r
124 #define LCD_Divider_25 ((uint32_t)0x00240000) /*!< LCD frequency = CLKPS/25 */
\r
125 #define LCD_Divider_26 ((uint32_t)0x00280000) /*!< LCD frequency = CLKPS/26 */
\r
126 #define LCD_Divider_27 ((uint32_t)0x002C0000) /*!< LCD frequency = CLKPS/27 */
\r
127 #define LCD_Divider_28 ((uint32_t)0x00300000) /*!< LCD frequency = CLKPS/28 */
\r
128 #define LCD_Divider_29 ((uint32_t)0x00340000) /*!< LCD frequency = CLKPS/29 */
\r
129 #define LCD_Divider_30 ((uint32_t)0x00380000) /*!< LCD frequency = CLKPS/30 */
\r
130 #define LCD_Divider_31 ((uint32_t)0x003C0000) /*!< LCD frequency = CLKPS/31 */
\r
132 #define IS_LCD_DIVIDER(DIVIDER) (((DIVIDER) == LCD_Divider_16) || \
\r
133 ((DIVIDER) == LCD_Divider_17) || \
\r
134 ((DIVIDER) == LCD_Divider_18) || \
\r
135 ((DIVIDER) == LCD_Divider_19) || \
\r
136 ((DIVIDER) == LCD_Divider_20) || \
\r
137 ((DIVIDER) == LCD_Divider_21) || \
\r
138 ((DIVIDER) == LCD_Divider_22) || \
\r
139 ((DIVIDER) == LCD_Divider_23) || \
\r
140 ((DIVIDER) == LCD_Divider_24) || \
\r
141 ((DIVIDER) == LCD_Divider_25) || \
\r
142 ((DIVIDER) == LCD_Divider_26) || \
\r
143 ((DIVIDER) == LCD_Divider_27) || \
\r
144 ((DIVIDER) == LCD_Divider_28) || \
\r
145 ((DIVIDER) == LCD_Divider_29) || \
\r
146 ((DIVIDER) == LCD_Divider_30) || \
\r
147 ((DIVIDER) == LCD_Divider_31))
\r
154 /** @defgroup LCD_Duty
\r
158 #define LCD_Duty_Static ((uint32_t)0x00000000) /*!< Static duty */
\r
159 #define LCD_Duty_1_2 ((uint32_t)0x00000004) /*!< 1/2 duty */
\r
160 #define LCD_Duty_1_3 ((uint32_t)0x00000008) /*!< 1/3 duty */
\r
161 #define LCD_Duty_1_4 ((uint32_t)0x0000000C) /*!< 1/4 duty */
\r
162 #define LCD_Duty_1_8 ((uint32_t)0x00000010) /*!< 1/4 duty */
\r
164 #define IS_LCD_DUTY(DUTY) (((DUTY) == LCD_Duty_Static) || \
\r
165 ((DUTY) == LCD_Duty_1_2) || \
\r
166 ((DUTY) == LCD_Duty_1_3) || \
\r
167 ((DUTY) == LCD_Duty_1_4) || \
\r
168 ((DUTY) == LCD_Duty_1_8))
\r
175 /** @defgroup LCD_Bias
\r
179 #define LCD_Bias_1_4 ((uint32_t)0x00000000) /*!< 1/4 Bias */
\r
180 #define LCD_Bias_1_2 LCD_CR_BIAS_0 /*!< 1/2 Bias */
\r
181 #define LCD_Bias_1_3 LCD_CR_BIAS_1 /*!< 1/3 Bias */
\r
183 #define IS_LCD_BIAS(BIAS) (((BIAS) == LCD_Bias_1_4) || \
\r
184 ((BIAS) == LCD_Bias_1_2) || \
\r
185 ((BIAS) == LCD_Bias_1_3))
\r
190 /** @defgroup LCD_Voltage_Source
\r
194 #define LCD_VoltageSource_Internal ((uint32_t)0x00000000) /*!< Internal voltage source for the LCD */
\r
195 #define LCD_VoltageSource_External LCD_CR_VSEL /*!< External voltage source for the LCD */
\r
197 #define IS_LCD_VOLTAGE_SOURCE(SOURCE) (((SOURCE) == LCD_VoltageSource_Internal) || \
\r
198 ((SOURCE) == LCD_VoltageSource_External))
\r
204 /** @defgroup LCD_Interrupts
\r
207 #define LCD_IT_SOF LCD_FCR_SOFIE
\r
208 #define LCD_IT_UDD LCD_FCR_UDDIE
\r
210 #define IS_LCD_IT(IT) ((((IT) & (uint32_t)0xFFFFFFF5) == 0x00) && ((IT) != 0x00))
\r
212 #define IS_LCD_GET_IT(IT) (((IT) == LCD_IT_SOF) || ((IT) == LCD_IT_UDD))
\r
218 /** @defgroup LCD_PulseOnDuration
\r
222 #define LCD_PulseOnDuration_0 ((uint32_t)0x00000000) /*!< Pulse ON duration = 0 pulse */
\r
223 #define LCD_PulseOnDuration_1 ((uint32_t)0x00000010) /*!< Pulse ON duration = 1/CK_PS */
\r
224 #define LCD_PulseOnDuration_2 ((uint32_t)0x00000020) /*!< Pulse ON duration = 2/CK_PS */
\r
225 #define LCD_PulseOnDuration_3 ((uint32_t)0x00000030) /*!< Pulse ON duration = 3/CK_PS */
\r
226 #define LCD_PulseOnDuration_4 ((uint32_t)0x00000040) /*!< Pulse ON duration = 4/CK_PS */
\r
227 #define LCD_PulseOnDuration_5 ((uint32_t)0x00000050) /*!< Pulse ON duration = 5/CK_PS */
\r
228 #define LCD_PulseOnDuration_6 ((uint32_t)0x00000060) /*!< Pulse ON duration = 6/CK_PS */
\r
229 #define LCD_PulseOnDuration_7 ((uint32_t)0x00000070) /*!< Pulse ON duration = 7/CK_PS */
\r
231 #define IS_LCD_PULSE_ON_DURATION(DURATION) (((DURATION) == LCD_PulseOnDuration_0) || \
\r
232 ((DURATION) == LCD_PulseOnDuration_1) || \
\r
233 ((DURATION) == LCD_PulseOnDuration_2) || \
\r
234 ((DURATION) == LCD_PulseOnDuration_3) || \
\r
235 ((DURATION) == LCD_PulseOnDuration_4) || \
\r
236 ((DURATION) == LCD_PulseOnDuration_5) || \
\r
237 ((DURATION) == LCD_PulseOnDuration_6) || \
\r
238 ((DURATION) == LCD_PulseOnDuration_7))
\r
244 /** @defgroup LCD_DeadTime
\r
248 #define LCD_DeadTime_0 ((uint32_t)0x00000000) /*!< No dead Time */
\r
249 #define LCD_DeadTime_1 ((uint32_t)0x00000080) /*!< One Phase between different couple of Frame */
\r
250 #define LCD_DeadTime_2 ((uint32_t)0x00000100) /*!< Two Phase between different couple of Frame */
\r
251 #define LCD_DeadTime_3 ((uint32_t)0x00000180) /*!< Three Phase between different couple of Frame */
\r
252 #define LCD_DeadTime_4 ((uint32_t)0x00000200) /*!< Four Phase between different couple of Frame */
\r
253 #define LCD_DeadTime_5 ((uint32_t)0x00000280) /*!< Five Phase between different couple of Frame */
\r
254 #define LCD_DeadTime_6 ((uint32_t)0x00000300) /*!< Six Phase between different couple of Frame */
\r
255 #define LCD_DeadTime_7 ((uint32_t)0x00000380) /*!< Seven Phase between different couple of Frame */
\r
257 #define IS_LCD_DEAD_TIME(TIME) (((TIME) == LCD_DeadTime_0) || \
\r
258 ((TIME) == LCD_DeadTime_1) || \
\r
259 ((TIME) == LCD_DeadTime_2) || \
\r
260 ((TIME) == LCD_DeadTime_3) || \
\r
261 ((TIME) == LCD_DeadTime_4) || \
\r
262 ((TIME) == LCD_DeadTime_5) || \
\r
263 ((TIME) == LCD_DeadTime_6) || \
\r
264 ((TIME) == LCD_DeadTime_7))
\r
269 /** @defgroup LCD_BlinkMode
\r
273 #define LCD_BlinkMode_Off ((uint32_t)0x00000000) /*!< Blink disabled */
\r
274 #define LCD_BlinkMode_SEG0_COM0 ((uint32_t)0x00010000) /*!< Blink enabled on SEG[0], COM[0] (1 pixel) */
\r
275 #define LCD_BlinkMode_SEG0_AllCOM ((uint32_t)0x00020000) /*!< Blink enabled on SEG[0], all COM (up to
\r
276 8 pixels according to the programmed duty) */
\r
277 #define LCD_BlinkMode_AllSEG_AllCOM ((uint32_t)0x00030000) /*!< Blink enabled on all SEG and all COM (all pixels) */
\r
279 #define IS_LCD_BLINK_MODE(MODE) (((MODE) == LCD_BlinkMode_Off) || \
\r
280 ((MODE) == LCD_BlinkMode_SEG0_COM0) || \
\r
281 ((MODE) == LCD_BlinkMode_SEG0_AllCOM) || \
\r
282 ((MODE) == LCD_BlinkMode_AllSEG_AllCOM))
\r
287 /** @defgroup LCD_BlinkFrequency
\r
291 #define LCD_BlinkFrequency_Div8 ((uint32_t)0x00000000) /*!< The Blink frequency = fLCD/8 */
\r
292 #define LCD_BlinkFrequency_Div16 ((uint32_t)0x00002000) /*!< The Blink frequency = fLCD/16 */
\r
293 #define LCD_BlinkFrequency_Div32 ((uint32_t)0x00004000) /*!< The Blink frequency = fLCD/32 */
\r
294 #define LCD_BlinkFrequency_Div64 ((uint32_t)0x00006000) /*!< The Blink frequency = fLCD/64 */
\r
295 #define LCD_BlinkFrequency_Div128 ((uint32_t)0x00008000) /*!< The Blink frequency = fLCD/128 */
\r
296 #define LCD_BlinkFrequency_Div256 ((uint32_t)0x0000A000) /*!< The Blink frequency = fLCD/256 */
\r
297 #define LCD_BlinkFrequency_Div512 ((uint32_t)0x0000C000) /*!< The Blink frequency = fLCD/512 */
\r
298 #define LCD_BlinkFrequency_Div1024 ((uint32_t)0x0000E000) /*!< The Blink frequency = fLCD/1024 */
\r
300 #define IS_LCD_BLINK_FREQUENCY(FREQUENCY) (((FREQUENCY) == LCD_BlinkFrequency_Div8) || \
\r
301 ((FREQUENCY) == LCD_BlinkFrequency_Div16) || \
\r
302 ((FREQUENCY) == LCD_BlinkFrequency_Div32) || \
\r
303 ((FREQUENCY) == LCD_BlinkFrequency_Div64) || \
\r
304 ((FREQUENCY) == LCD_BlinkFrequency_Div128) || \
\r
305 ((FREQUENCY) == LCD_BlinkFrequency_Div256) || \
\r
306 ((FREQUENCY) == LCD_BlinkFrequency_Div512) || \
\r
307 ((FREQUENCY) == LCD_BlinkFrequency_Div1024))
\r
312 /** @defgroup LCD_Contrast
\r
316 #define LCD_Contrast_Level_0 ((uint32_t)0x00000000) /*!< Maximum Voltage = 2.60V */
\r
317 #define LCD_Contrast_Level_1 ((uint32_t)0x00000400) /*!< Maximum Voltage = 2.73V */
\r
318 #define LCD_Contrast_Level_2 ((uint32_t)0x00000800) /*!< Maximum Voltage = 2.86V */
\r
319 #define LCD_Contrast_Level_3 ((uint32_t)0x00000C00) /*!< Maximum Voltage = 2.99V */
\r
320 #define LCD_Contrast_Level_4 ((uint32_t)0x00001000) /*!< Maximum Voltage = 3.12V */
\r
321 #define LCD_Contrast_Level_5 ((uint32_t)0x00001400) /*!< Maximum Voltage = 3.25V */
\r
322 #define LCD_Contrast_Level_6 ((uint32_t)0x00001800) /*!< Maximum Voltage = 3.38V */
\r
323 #define LCD_Contrast_Level_7 ((uint32_t)0x00001C00) /*!< Maximum Voltage = 3.51V */
\r
325 #define IS_LCD_CONTRAST(CONTRAST) (((CONTRAST) == LCD_Contrast_Level_0) || \
\r
326 ((CONTRAST) == LCD_Contrast_Level_1) || \
\r
327 ((CONTRAST) == LCD_Contrast_Level_2) || \
\r
328 ((CONTRAST) == LCD_Contrast_Level_3) || \
\r
329 ((CONTRAST) == LCD_Contrast_Level_4) || \
\r
330 ((CONTRAST) == LCD_Contrast_Level_5) || \
\r
331 ((CONTRAST) == LCD_Contrast_Level_6) || \
\r
332 ((CONTRAST) == LCD_Contrast_Level_7))
\r
337 /** @defgroup LCD_Flag
\r
341 #define LCD_FLAG_ENS LCD_SR_ENS
\r
342 #define LCD_FLAG_SOF LCD_SR_SOF
\r
343 #define LCD_FLAG_UDR LCD_SR_UDR
\r
344 #define LCD_FLAG_UDD LCD_SR_UDD
\r
345 #define LCD_FLAG_RDY LCD_SR_RDY
\r
346 #define LCD_FLAG_FCRSF LCD_SR_FCRSR
\r
348 #define IS_LCD_GET_FLAG(FLAG) (((FLAG) == LCD_FLAG_ENS) || ((FLAG) == LCD_FLAG_SOF) || \
\r
349 ((FLAG) == LCD_FLAG_UDR) || ((FLAG) == LCD_FLAG_UDD) || \
\r
350 ((FLAG) == LCD_FLAG_RDY) || ((FLAG) == LCD_FLAG_FCRSF))
\r
352 #define IS_LCD_CLEAR_FLAG(FLAG) ((((FLAG) & (uint32_t)0xFFFFFFF5) == 0x00) && ((FLAG) != 0x00))
\r
357 /** @defgroup LCD_RAMRegister
\r
361 #define LCD_RAMRegister_0 ((uint32_t)0x00000000) /*!< LCD RAM Register 0 */
\r
362 #define LCD_RAMRegister_1 ((uint32_t)0x00000001) /*!< LCD RAM Register 1 */
\r
363 #define LCD_RAMRegister_2 ((uint32_t)0x00000002) /*!< LCD RAM Register 2 */
\r
364 #define LCD_RAMRegister_3 ((uint32_t)0x00000003) /*!< LCD RAM Register 3 */
\r
365 #define LCD_RAMRegister_4 ((uint32_t)0x00000004) /*!< LCD RAM Register 4 */
\r
366 #define LCD_RAMRegister_5 ((uint32_t)0x00000005) /*!< LCD RAM Register 5 */
\r
367 #define LCD_RAMRegister_6 ((uint32_t)0x00000006) /*!< LCD RAM Register 6 */
\r
368 #define LCD_RAMRegister_7 ((uint32_t)0x00000007) /*!< LCD RAM Register 7 */
\r
369 #define LCD_RAMRegister_8 ((uint32_t)0x00000008) /*!< LCD RAM Register 8 */
\r
370 #define LCD_RAMRegister_9 ((uint32_t)0x00000009) /*!< LCD RAM Register 9 */
\r
371 #define LCD_RAMRegister_10 ((uint32_t)0x0000000A) /*!< LCD RAM Register 10 */
\r
372 #define LCD_RAMRegister_11 ((uint32_t)0x0000000B) /*!< LCD RAM Register 11 */
\r
373 #define LCD_RAMRegister_12 ((uint32_t)0x0000000C) /*!< LCD RAM Register 12 */
\r
374 #define LCD_RAMRegister_13 ((uint32_t)0x0000000D) /*!< LCD RAM Register 13 */
\r
375 #define LCD_RAMRegister_14 ((uint32_t)0x0000000E) /*!< LCD RAM Register 14 */
\r
376 #define LCD_RAMRegister_15 ((uint32_t)0x0000000F) /*!< LCD RAM Register 15 */
\r
378 #define IS_LCD_RAM_REGISTER(REGISTER) (((REGISTER) == LCD_RAMRegister_0) || \
\r
379 ((REGISTER) == LCD_RAMRegister_1) || \
\r
380 ((REGISTER) == LCD_RAMRegister_2) || \
\r
381 ((REGISTER) == LCD_RAMRegister_3) || \
\r
382 ((REGISTER) == LCD_RAMRegister_4) || \
\r
383 ((REGISTER) == LCD_RAMRegister_5) || \
\r
384 ((REGISTER) == LCD_RAMRegister_6) || \
\r
385 ((REGISTER) == LCD_RAMRegister_7) || \
\r
386 ((REGISTER) == LCD_RAMRegister_8) || \
\r
387 ((REGISTER) == LCD_RAMRegister_9) || \
\r
388 ((REGISTER) == LCD_RAMRegister_10) || \
\r
389 ((REGISTER) == LCD_RAMRegister_11) || \
\r
390 ((REGISTER) == LCD_RAMRegister_12) || \
\r
391 ((REGISTER) == LCD_RAMRegister_13) || \
\r
392 ((REGISTER) == LCD_RAMRegister_14) || \
\r
393 ((REGISTER) == LCD_RAMRegister_15))
\r
403 /* Exported macro ------------------------------------------------------------*/
\r
404 /* Exported functions ------------------------------------------------------- */
\r
406 /* Function used to set the LCD configuration to the default reset state *****/
\r
407 void LCD_DeInit(void);
\r
409 /* Initialization and Configuration functions *********************************/
\r
410 void LCD_Init(LCD_InitTypeDef* LCD_InitStruct);
\r
411 void LCD_StructInit(LCD_InitTypeDef* LCD_InitStruct);
\r
412 void LCD_Cmd(FunctionalState NewState);
\r
413 void LCD_WaitForSynchro(void);
\r
414 void LCD_HighDriveCmd(FunctionalState NewState);
\r
415 void LCD_MuxSegmentCmd(FunctionalState NewState);
\r
416 void LCD_PulseOnDurationConfig(uint32_t LCD_PulseOnDuration);
\r
417 void LCD_DeadTimeConfig(uint32_t LCD_DeadTime);
\r
418 void LCD_BlinkConfig(uint32_t LCD_BlinkMode, uint32_t LCD_BlinkFrequency);
\r
419 void LCD_ContrastConfig(uint32_t LCD_Contrast);
\r
421 /* LCD RAM memory write functions *********************************************/
\r
422 void LCD_Write(uint32_t LCD_RAMRegister, uint32_t LCD_Data);
\r
423 void LCD_UpdateDisplayRequest(void);
\r
425 /* Interrupts and flags management functions **********************************/
\r
426 void LCD_ITConfig(uint32_t LCD_IT, FunctionalState NewState);
\r
427 FlagStatus LCD_GetFlagStatus(uint32_t LCD_FLAG);
\r
428 void LCD_ClearFlag(uint32_t LCD_FLAG);
\r
429 ITStatus LCD_GetITStatus(uint32_t LCD_IT);
\r
430 void LCD_ClearITPendingBit(uint32_t LCD_IT);
\r
436 #endif /* __STM32L1xx_LCD_H */
\r
446 /******************* (C) COPYRIGHT 2010 STMicroelectronics *****END OF FILE****/
\r