STM32L4xx_HAL_Driver  1.14.0
stm32l4xx_hal_lcd.h
Go to the documentation of this file.
1 
20 /* Define to prevent recursive inclusion -------------------------------------*/
21 #ifndef STM32L4xx_HAL_LCD_H
22 #define STM32L4xx_HAL_LCD_H
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 
28 #if defined(STM32L433xx) || defined(STM32L443xx) || defined(STM32L476xx) || defined(STM32L486xx) || defined(STM32L496xx) || defined(STM32L4A6xx)
29 
30 /* Includes ------------------------------------------------------------------*/
31 #include "stm32l4xx_hal_def.h"
32 
41 /* Exported types ------------------------------------------------------------*/
50 typedef struct
51 {
52  uint32_t Prescaler;
54  uint32_t Divider;
56  uint32_t Duty;
58  uint32_t Bias;
60  uint32_t VoltageSource;
62  uint32_t Contrast;
64  uint32_t DeadTime;
66  uint32_t PulseOnDuration;
68  uint32_t HighDrive;
70  uint32_t BlinkMode;
72  uint32_t BlinkFrequency;
74  uint32_t MuxSegment;
77 
81 typedef enum
82 {
89 
93 typedef struct
94 {
95  LCD_TypeDef *Instance; /* LCD registers base address */
96 
97  LCD_InitTypeDef Init; /* LCD communication parameters */
98 
99  HAL_LockTypeDef Lock; /* Locking object */
100 
101  __IO HAL_LCD_StateTypeDef State; /* LCD communication state */
102 
103  __IO uint32_t ErrorCode; /* LCD Error code */
104 
110 /* Exported constants --------------------------------------------------------*/
118 #define HAL_LCD_ERROR_NONE (0x00000000U)
119 #define HAL_LCD_ERROR_FCRSF (0x00000001U)
120 #define HAL_LCD_ERROR_UDR (0x00000002U)
121 #define HAL_LCD_ERROR_UDD (0x00000004U)
122 #define HAL_LCD_ERROR_ENS (0x00000008U)
123 #define HAL_LCD_ERROR_RDY (0x00000010U)
131 #define LCD_PRESCALER_1 (0x00000000U)
132 #define LCD_PRESCALER_2 (0x00400000U)
133 #define LCD_PRESCALER_4 (0x00800000U)
134 #define LCD_PRESCALER_8 (0x00C00000U)
135 #define LCD_PRESCALER_16 (0x01000000U)
136 #define LCD_PRESCALER_32 (0x01400000U)
137 #define LCD_PRESCALER_64 (0x01800000U)
138 #define LCD_PRESCALER_128 (0x01C00000U)
139 #define LCD_PRESCALER_256 (0x02000000U)
140 #define LCD_PRESCALER_512 (0x02400000U)
141 #define LCD_PRESCALER_1024 (0x02800000U)
142 #define LCD_PRESCALER_2048 (0x02C00000U)
143 #define LCD_PRESCALER_4096 (0x03000000U)
144 #define LCD_PRESCALER_8192 (0x03400000U)
145 #define LCD_PRESCALER_16384 (0x03800000U)
146 #define LCD_PRESCALER_32768 (0x03C00000U)
154 #define LCD_DIVIDER_16 (0x00000000U)
155 #define LCD_DIVIDER_17 (0x00040000U)
156 #define LCD_DIVIDER_18 (0x00080000U)
157 #define LCD_DIVIDER_19 (0x000C0000U)
158 #define LCD_DIVIDER_20 (0x00100000U)
159 #define LCD_DIVIDER_21 (0x00140000U)
160 #define LCD_DIVIDER_22 (0x00180000U)
161 #define LCD_DIVIDER_23 (0x001C0000U)
162 #define LCD_DIVIDER_24 (0x00200000U)
163 #define LCD_DIVIDER_25 (0x00240000U)
164 #define LCD_DIVIDER_26 (0x00280000U)
165 #define LCD_DIVIDER_27 (0x002C0000U)
166 #define LCD_DIVIDER_28 (0x00300000U)
167 #define LCD_DIVIDER_29 (0x00340000U)
168 #define LCD_DIVIDER_30 (0x00380000U)
169 #define LCD_DIVIDER_31 (0x003C0000U)
178 #define LCD_DUTY_STATIC (0x00000000U)
179 #define LCD_DUTY_1_2 (LCD_CR_DUTY_0)
180 #define LCD_DUTY_1_3 (LCD_CR_DUTY_1)
181 #define LCD_DUTY_1_4 ((LCD_CR_DUTY_1 | LCD_CR_DUTY_0))
182 #define LCD_DUTY_1_8 (LCD_CR_DUTY_2)
191 #define LCD_BIAS_1_4 (0x00000000U)
192 #define LCD_BIAS_1_2 LCD_CR_BIAS_0
193 #define LCD_BIAS_1_3 LCD_CR_BIAS_1
201 #define LCD_VOLTAGESOURCE_INTERNAL (0x00000000U)
202 #define LCD_VOLTAGESOURCE_EXTERNAL LCD_CR_VSEL
210 #define LCD_IT_SOF LCD_FCR_SOFIE
211 #define LCD_IT_UDD LCD_FCR_UDDIE
212 
219 #define LCD_PULSEONDURATION_0 (0x00000000U)
220 #define LCD_PULSEONDURATION_1 (LCD_FCR_PON_0)
221 #define LCD_PULSEONDURATION_2 (LCD_FCR_PON_1)
222 #define LCD_PULSEONDURATION_3 (LCD_FCR_PON_1 | LCD_FCR_PON_0)
223 #define LCD_PULSEONDURATION_4 (LCD_FCR_PON_2)
224 #define LCD_PULSEONDURATION_5 (LCD_FCR_PON_2 | LCD_FCR_PON_0)
225 #define LCD_PULSEONDURATION_6 (LCD_FCR_PON_2 | LCD_FCR_PON_1)
226 #define LCD_PULSEONDURATION_7 (LCD_FCR_PON)
235 #define LCD_DEADTIME_0 (0x00000000U)
236 #define LCD_DEADTIME_1 (LCD_FCR_DEAD_0)
237 #define LCD_DEADTIME_2 (LCD_FCR_DEAD_1)
238 #define LCD_DEADTIME_3 (LCD_FCR_DEAD_1 | LCD_FCR_DEAD_0)
239 #define LCD_DEADTIME_4 (LCD_FCR_DEAD_2)
240 #define LCD_DEADTIME_5 (LCD_FCR_DEAD_2 | LCD_FCR_DEAD_0)
241 #define LCD_DEADTIME_6 (LCD_FCR_DEAD_2 | LCD_FCR_DEAD_1)
242 #define LCD_DEADTIME_7 (LCD_FCR_DEAD)
250 #define LCD_BLINKMODE_OFF (0x00000000U)
251 #define LCD_BLINKMODE_SEG0_COM0 (LCD_FCR_BLINK_0)
252 #define LCD_BLINKMODE_SEG0_ALLCOM (LCD_FCR_BLINK_1)
254 #define LCD_BLINKMODE_ALLSEG_ALLCOM (LCD_FCR_BLINK)
262 #define LCD_BLINKFREQUENCY_DIV8 (0x00000000U)
263 #define LCD_BLINKFREQUENCY_DIV16 (LCD_FCR_BLINKF_0)
264 #define LCD_BLINKFREQUENCY_DIV32 (LCD_FCR_BLINKF_1)
265 #define LCD_BLINKFREQUENCY_DIV64 (LCD_FCR_BLINKF_1 | LCD_FCR_BLINKF_0)
266 #define LCD_BLINKFREQUENCY_DIV128 (LCD_FCR_BLINKF_2)
267 #define LCD_BLINKFREQUENCY_DIV256 (LCD_FCR_BLINKF_2 |LCD_FCR_BLINKF_0)
268 #define LCD_BLINKFREQUENCY_DIV512 (LCD_FCR_BLINKF_2 |LCD_FCR_BLINKF_1)
269 #define LCD_BLINKFREQUENCY_DIV1024 (LCD_FCR_BLINKF)
277 #define LCD_CONTRASTLEVEL_0 (0x00000000U)
278 #define LCD_CONTRASTLEVEL_1 (LCD_FCR_CC_0)
279 #define LCD_CONTRASTLEVEL_2 (LCD_FCR_CC_1)
280 #define LCD_CONTRASTLEVEL_3 (LCD_FCR_CC_1 | LCD_FCR_CC_0)
281 #define LCD_CONTRASTLEVEL_4 (LCD_FCR_CC_2)
282 #define LCD_CONTRASTLEVEL_5 (LCD_FCR_CC_2 | LCD_FCR_CC_0)
283 #define LCD_CONTRASTLEVEL_6 (LCD_FCR_CC_2 | LCD_FCR_CC_1)
284 #define LCD_CONTRASTLEVEL_7 (LCD_FCR_CC)
292 #define LCD_RAM_REGISTER0 (0x00000000U)
293 #define LCD_RAM_REGISTER1 (0x00000001U)
294 #define LCD_RAM_REGISTER2 (0x00000002U)
295 #define LCD_RAM_REGISTER3 (0x00000003U)
296 #define LCD_RAM_REGISTER4 (0x00000004U)
297 #define LCD_RAM_REGISTER5 (0x00000005U)
298 #define LCD_RAM_REGISTER6 (0x00000006U)
299 #define LCD_RAM_REGISTER7 (0x00000007U)
300 #define LCD_RAM_REGISTER8 (0x00000008U)
301 #define LCD_RAM_REGISTER9 (0x00000009U)
302 #define LCD_RAM_REGISTER10 (0x0000000AU)
303 #define LCD_RAM_REGISTER11 (0x0000000BU)
304 #define LCD_RAM_REGISTER12 (0x0000000CU)
305 #define LCD_RAM_REGISTER13 (0x0000000DU)
306 #define LCD_RAM_REGISTER14 (0x0000000EU)
307 #define LCD_RAM_REGISTER15 (0x0000000FU)
316 #define LCD_HIGHDRIVE_DISABLE ((uint32_t)0x00000000)
317 #define LCD_HIGHDRIVE_ENABLE (LCD_FCR_HD)
326 #define LCD_MUXSEGMENT_DISABLE (0x00000000U)
327 #define LCD_MUXSEGMENT_ENABLE (LCD_CR_MUX_SEG)
335 #define LCD_FLAG_ENS LCD_SR_ENS
336 #define LCD_FLAG_SOF LCD_SR_SOF
337 #define LCD_FLAG_UDR LCD_SR_UDR
338 #define LCD_FLAG_UDD LCD_SR_UDD
339 #define LCD_FLAG_RDY LCD_SR_RDY
340 #define LCD_FLAG_FCRSF LCD_SR_FCRSR
349 /* Exported macros -----------------------------------------------------------*/
350 
358 #define __HAL_LCD_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_LCD_STATE_RESET)
359 
364 #define __HAL_LCD_ENABLE(__HANDLE__) SET_BIT((__HANDLE__)->Instance->CR, LCD_CR_LCDEN)
365 
370 #define __HAL_LCD_DISABLE(__HANDLE__) CLEAR_BIT((__HANDLE__)->Instance->CR, LCD_CR_LCDEN)
371 
381 #define __HAL_LCD_HIGHDRIVER_ENABLE(__HANDLE__) \
382  do { \
383  SET_BIT((__HANDLE__)->Instance->FCR, LCD_FCR_HD); \
384  LCD_WaitForSynchro(__HANDLE__); \
385  } while(0)
386 
391 #define __HAL_LCD_HIGHDRIVER_DISABLE(__HANDLE__) \
392  do { \
393  CLEAR_BIT((__HANDLE__)->Instance->FCR, LCD_FCR_HD); \
394  LCD_WaitForSynchro(__HANDLE__); \
395  } while(0)
396 
401 #define __HAL_LCD_VOLTAGE_BUFFER_ENABLE(__HANDLE__) SET_BIT((__HANDLE__)->Instance->CR, LCD_CR_BUFEN)
402 
407 #define __HAL_LCD_VOLTAGE_BUFFER_DISABLE(__HANDLE__) CLEAR_BIT((__HANDLE__)->Instance->CR, LCD_CR_BUFEN)
408 
425 #define __HAL_LCD_PULSEONDURATION_CONFIG(__HANDLE__, __DURATION__) \
426  do { \
427  MODIFY_REG((__HANDLE__)->Instance->FCR, LCD_FCR_PON, (__DURATION__)); \
428  LCD_WaitForSynchro(__HANDLE__); \
429  } while(0)
430 
446 #define __HAL_LCD_DEADTIME_CONFIG(__HANDLE__, __DEADTIME__) \
447  do { \
448  MODIFY_REG((__HANDLE__)->Instance->FCR, LCD_FCR_DEAD, (__DEADTIME__)); \
449  LCD_WaitForSynchro(__HANDLE__); \
450  } while(0)
451 
467 #define __HAL_LCD_CONTRAST_CONFIG(__HANDLE__, __CONTRAST__) \
468  do { \
469  MODIFY_REG((__HANDLE__)->Instance->FCR, LCD_FCR_CC, (__CONTRAST__)); \
470  LCD_WaitForSynchro(__HANDLE__); \
471  } while(0)
472 
495 #define __HAL_LCD_BLINK_CONFIG(__HANDLE__, __BLINKMODE__, __BLINKFREQUENCY__) \
496  do { \
497  MODIFY_REG((__HANDLE__)->Instance->FCR, (LCD_FCR_BLINKF | LCD_FCR_BLINK), ((__BLINKMODE__) | (__BLINKFREQUENCY__))); \
498  LCD_WaitForSynchro(__HANDLE__); \
499  } while(0)
500 
509 #define __HAL_LCD_ENABLE_IT(__HANDLE__, __INTERRUPT__) \
510  do { \
511  SET_BIT((__HANDLE__)->Instance->FCR, (__INTERRUPT__)); \
512  LCD_WaitForSynchro(__HANDLE__); \
513  } while(0)
514 
523 #define __HAL_LCD_DISABLE_IT(__HANDLE__, __INTERRUPT__) \
524  do { \
525  CLEAR_BIT((__HANDLE__)->Instance->FCR, (__INTERRUPT__)); \
526  LCD_WaitForSynchro(__HANDLE__); \
527  } while(0)
528 
540 #define __HAL_LCD_GET_IT_SOURCE(__HANDLE__, __IT__) (((__HANDLE__)->Instance->FCR) & (__IT__))
541 
562 #define __HAL_LCD_GET_FLAG(__HANDLE__, __FLAG__) (((__HANDLE__)->Instance->SR & (__FLAG__)) == (__FLAG__))
563 
572 #define __HAL_LCD_CLEAR_FLAG(__HANDLE__, __FLAG__) WRITE_REG((__HANDLE__)->Instance->CLR, (__FLAG__))
573 
578 /* Exported functions ------------------------------------------------------- */
583 /* Initialization/de-initialization methods **********************************/
587 HAL_StatusTypeDef HAL_LCD_DeInit(LCD_HandleTypeDef *hlcd);
588 HAL_StatusTypeDef HAL_LCD_Init(LCD_HandleTypeDef *hlcd);
595 /* IO operation methods *******************************************************/
599 HAL_StatusTypeDef HAL_LCD_Write(LCD_HandleTypeDef *hlcd, uint32_t RAMRegisterIndex, uint32_t RAMRegisterMask, uint32_t Data);
600 HAL_StatusTypeDef HAL_LCD_Clear(LCD_HandleTypeDef *hlcd);
601 HAL_StatusTypeDef HAL_LCD_UpdateDisplayRequest(LCD_HandleTypeDef *hlcd);
606 /* Peripheral State methods **************************************************/
611 uint32_t HAL_LCD_GetError(LCD_HandleTypeDef *hlcd);
620 /* Private types -------------------------------------------------------------*/
621 /* Private variables ---------------------------------------------------------*/
622 /* Private constants ---------------------------------------------------------*/
623 /* Private macros ------------------------------------------------------------*/
628 #define IS_LCD_PRESCALER(__PRESCALER__) (((__PRESCALER__) == LCD_PRESCALER_1) || \
629  ((__PRESCALER__) == LCD_PRESCALER_2) || \
630  ((__PRESCALER__) == LCD_PRESCALER_4) || \
631  ((__PRESCALER__) == LCD_PRESCALER_8) || \
632  ((__PRESCALER__) == LCD_PRESCALER_16) || \
633  ((__PRESCALER__) == LCD_PRESCALER_32) || \
634  ((__PRESCALER__) == LCD_PRESCALER_64) || \
635  ((__PRESCALER__) == LCD_PRESCALER_128) || \
636  ((__PRESCALER__) == LCD_PRESCALER_256) || \
637  ((__PRESCALER__) == LCD_PRESCALER_512) || \
638  ((__PRESCALER__) == LCD_PRESCALER_1024) || \
639  ((__PRESCALER__) == LCD_PRESCALER_2048) || \
640  ((__PRESCALER__) == LCD_PRESCALER_4096) || \
641  ((__PRESCALER__) == LCD_PRESCALER_8192) || \
642  ((__PRESCALER__) == LCD_PRESCALER_16384) || \
643  ((__PRESCALER__) == LCD_PRESCALER_32768))
644 
645 #define IS_LCD_DIVIDER(__DIVIDER__) (((__DIVIDER__) == LCD_DIVIDER_16) || \
646  ((__DIVIDER__) == LCD_DIVIDER_17) || \
647  ((__DIVIDER__) == LCD_DIVIDER_18) || \
648  ((__DIVIDER__) == LCD_DIVIDER_19) || \
649  ((__DIVIDER__) == LCD_DIVIDER_20) || \
650  ((__DIVIDER__) == LCD_DIVIDER_21) || \
651  ((__DIVIDER__) == LCD_DIVIDER_22) || \
652  ((__DIVIDER__) == LCD_DIVIDER_23) || \
653  ((__DIVIDER__) == LCD_DIVIDER_24) || \
654  ((__DIVIDER__) == LCD_DIVIDER_25) || \
655  ((__DIVIDER__) == LCD_DIVIDER_26) || \
656  ((__DIVIDER__) == LCD_DIVIDER_27) || \
657  ((__DIVIDER__) == LCD_DIVIDER_28) || \
658  ((__DIVIDER__) == LCD_DIVIDER_29) || \
659  ((__DIVIDER__) == LCD_DIVIDER_30) || \
660  ((__DIVIDER__) == LCD_DIVIDER_31))
661 
662 #define IS_LCD_DUTY(__DUTY__) (((__DUTY__) == LCD_DUTY_STATIC) || \
663  ((__DUTY__) == LCD_DUTY_1_2) || \
664  ((__DUTY__) == LCD_DUTY_1_3) || \
665  ((__DUTY__) == LCD_DUTY_1_4) || \
666  ((__DUTY__) == LCD_DUTY_1_8))
667 
668 #define IS_LCD_BIAS(__BIAS__) (((__BIAS__) == LCD_BIAS_1_4) || \
669  ((__BIAS__) == LCD_BIAS_1_2) || \
670  ((__BIAS__) == LCD_BIAS_1_3))
671 
672 #define IS_LCD_VOLTAGE_SOURCE(SOURCE) (((SOURCE) == LCD_VOLTAGESOURCE_INTERNAL) || \
673  ((SOURCE) == LCD_VOLTAGESOURCE_EXTERNAL))
674 
675 
676 #define IS_LCD_PULSE_ON_DURATION(__DURATION__) (((__DURATION__) == LCD_PULSEONDURATION_0) || \
677  ((__DURATION__) == LCD_PULSEONDURATION_1) || \
678  ((__DURATION__) == LCD_PULSEONDURATION_2) || \
679  ((__DURATION__) == LCD_PULSEONDURATION_3) || \
680  ((__DURATION__) == LCD_PULSEONDURATION_4) || \
681  ((__DURATION__) == LCD_PULSEONDURATION_5) || \
682  ((__DURATION__) == LCD_PULSEONDURATION_6) || \
683  ((__DURATION__) == LCD_PULSEONDURATION_7))
684 
685 #define IS_LCD_DEAD_TIME(__TIME__) (((__TIME__) == LCD_DEADTIME_0) || \
686  ((__TIME__) == LCD_DEADTIME_1) || \
687  ((__TIME__) == LCD_DEADTIME_2) || \
688  ((__TIME__) == LCD_DEADTIME_3) || \
689  ((__TIME__) == LCD_DEADTIME_4) || \
690  ((__TIME__) == LCD_DEADTIME_5) || \
691  ((__TIME__) == LCD_DEADTIME_6) || \
692  ((__TIME__) == LCD_DEADTIME_7))
693 
694 #define IS_LCD_BLINK_MODE(__MODE__) (((__MODE__) == LCD_BLINKMODE_OFF) || \
695  ((__MODE__) == LCD_BLINKMODE_SEG0_COM0) || \
696  ((__MODE__) == LCD_BLINKMODE_SEG0_ALLCOM) || \
697  ((__MODE__) == LCD_BLINKMODE_ALLSEG_ALLCOM))
698 
699 #define IS_LCD_BLINK_FREQUENCY(__FREQUENCY__) (((__FREQUENCY__) == LCD_BLINKFREQUENCY_DIV8) || \
700  ((__FREQUENCY__) == LCD_BLINKFREQUENCY_DIV16) || \
701  ((__FREQUENCY__) == LCD_BLINKFREQUENCY_DIV32) || \
702  ((__FREQUENCY__) == LCD_BLINKFREQUENCY_DIV64) || \
703  ((__FREQUENCY__) == LCD_BLINKFREQUENCY_DIV128) || \
704  ((__FREQUENCY__) == LCD_BLINKFREQUENCY_DIV256) || \
705  ((__FREQUENCY__) == LCD_BLINKFREQUENCY_DIV512) || \
706  ((__FREQUENCY__) == LCD_BLINKFREQUENCY_DIV1024))
707 
708 #define IS_LCD_CONTRAST(__CONTRAST__) (((__CONTRAST__) == LCD_CONTRASTLEVEL_0) || \
709  ((__CONTRAST__) == LCD_CONTRASTLEVEL_1) || \
710  ((__CONTRAST__) == LCD_CONTRASTLEVEL_2) || \
711  ((__CONTRAST__) == LCD_CONTRASTLEVEL_3) || \
712  ((__CONTRAST__) == LCD_CONTRASTLEVEL_4) || \
713  ((__CONTRAST__) == LCD_CONTRASTLEVEL_5) || \
714  ((__CONTRAST__) == LCD_CONTRASTLEVEL_6) || \
715  ((__CONTRAST__) == LCD_CONTRASTLEVEL_7))
716 
717 #define IS_LCD_RAM_REGISTER(__REGISTER__) (((__REGISTER__) == LCD_RAM_REGISTER0) || \
718  ((__REGISTER__) == LCD_RAM_REGISTER1) || \
719  ((__REGISTER__) == LCD_RAM_REGISTER2) || \
720  ((__REGISTER__) == LCD_RAM_REGISTER3) || \
721  ((__REGISTER__) == LCD_RAM_REGISTER4) || \
722  ((__REGISTER__) == LCD_RAM_REGISTER5) || \
723  ((__REGISTER__) == LCD_RAM_REGISTER6) || \
724  ((__REGISTER__) == LCD_RAM_REGISTER7) || \
725  ((__REGISTER__) == LCD_RAM_REGISTER8) || \
726  ((__REGISTER__) == LCD_RAM_REGISTER9) || \
727  ((__REGISTER__) == LCD_RAM_REGISTER10) || \
728  ((__REGISTER__) == LCD_RAM_REGISTER11) || \
729  ((__REGISTER__) == LCD_RAM_REGISTER12) || \
730  ((__REGISTER__) == LCD_RAM_REGISTER13) || \
731  ((__REGISTER__) == LCD_RAM_REGISTER14) || \
732  ((__REGISTER__) == LCD_RAM_REGISTER15))
733 
734 #define IS_LCD_HIGH_DRIVE(__VALUE__) (((__VALUE__) == LCD_HIGHDRIVE_DISABLE) || \
735  ((__VALUE__) == LCD_HIGHDRIVE_ENABLE))
736 
737 #define IS_LCD_MUX_SEGMENT(__VALUE__) (((__VALUE__) == LCD_MUXSEGMENT_ENABLE) || \
738  ((__VALUE__) == LCD_MUXSEGMENT_DISABLE))
739 
744 /* Private functions ---------------------------------------------------------*/
749 HAL_StatusTypeDef LCD_WaitForSynchro(LCD_HandleTypeDef *hlcd);
750 
763 #endif /* STM32L433xx || STM32L443xx || STM32L476xx || STM32L486xx || STM32L496xx || STM32L4A6xx */
764 
765 #ifdef __cplusplus
766 }
767 #endif
768 
769 #endif /* STM32L4xx_HAL_LCD_H */
770 
771 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
HAL_StatusTypeDef HAL_LCD_Init(LCD_HandleTypeDef *hlcd)
Initialize the LCD peripheral according to the specified parameters in the LCD_InitStruct and initial...
uint32_t PulseOnDuration
HAL_StatusTypeDef HAL_LCD_DeInit(LCD_HandleTypeDef *hlcd)
DeInitialize the LCD peripheral.
HAL_LCD_StateTypeDef
HAL LCD State structures definition.
This file contains HAL common defines, enumeration, macros and structures definitions.
__IO HAL_LCD_StateTypeDef State
HAL_StatusTypeDef HAL_LCD_Write(LCD_HandleTypeDef *hlcd, uint32_t RAMRegisterIndex, uint32_t RAMRegisterMask, uint32_t Data)
Write a word in the specific LCD RAM.
HAL_StatusTypeDef HAL_LCD_Clear(LCD_HandleTypeDef *hlcd)
Clear the LCD RAM registers.
void HAL_LCD_MspInit(LCD_HandleTypeDef *hlcd)
Initialize the LCD MSP.
LCD_InitTypeDef Init
uint32_t HAL_LCD_GetError(LCD_HandleTypeDef *hlcd)
Return the LCD error code.
__IO uint32_t ErrorCode
HAL_LockTypeDef Lock
UART handle Structure definition.
LCD_TypeDef * Instance
HAL_LockTypeDef
HAL Lock structures definition.
LCD Init structure definition.
void HAL_LCD_MspDeInit(LCD_HandleTypeDef *hlcd)
DeInitialize the LCD MSP.
HAL_StatusTypeDef HAL_LCD_UpdateDisplayRequest(LCD_HandleTypeDef *hlcd)
Enable the Update Display Request.
HAL_LCD_StateTypeDef HAL_LCD_GetState(LCD_HandleTypeDef *hlcd)
Return the LCD handle state.
HAL_StatusTypeDef LCD_WaitForSynchro(LCD_HandleTypeDef *hlcd)
Wait until the LCD FCR register is synchronized in the LCDCLK domain. This function must be called af...