mbed library sources

Dependents:   frdm_kl05z_gpio_test

Fork of mbed-src by mbed official

Committer:
mbed_official
Date:
Wed May 07 13:15:08 2014 +0100
Revision:
181:a4cbdfbbd2f4
Synchronized with git revision 7751e759576c6fd68deccb81ea82bac19ed41745

Full URL: https://github.com/mbedmicro/mbed/commit/7751e759576c6fd68deccb81ea82bac19ed41745/

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 181:a4cbdfbbd2f4 1 /**
mbed_official 181:a4cbdfbbd2f4 2 ******************************************************************************
mbed_official 181:a4cbdfbbd2f4 3 * @file stm32l0xx_hal_lcd.h
mbed_official 181:a4cbdfbbd2f4 4 * @author MCD Application Team
mbed_official 181:a4cbdfbbd2f4 5 * @version V1.0.0
mbed_official 181:a4cbdfbbd2f4 6 * @date 22-April-2014
mbed_official 181:a4cbdfbbd2f4 7 * @brief Header file of LCD Controller HAL module.
mbed_official 181:a4cbdfbbd2f4 8 ******************************************************************************
mbed_official 181:a4cbdfbbd2f4 9 * @attention
mbed_official 181:a4cbdfbbd2f4 10 *
mbed_official 181:a4cbdfbbd2f4 11 * <h2><center>&copy; COPYRIGHT(c) 2014 STMicroelectronics</center></h2>
mbed_official 181:a4cbdfbbd2f4 12 *
mbed_official 181:a4cbdfbbd2f4 13 * Redistribution and use in source and binary forms, with or without modification,
mbed_official 181:a4cbdfbbd2f4 14 * are permitted provided that the following conditions are met:
mbed_official 181:a4cbdfbbd2f4 15 * 1. Redistributions of source code must retain the above copyright notice,
mbed_official 181:a4cbdfbbd2f4 16 * this list of conditions and the following disclaimer.
mbed_official 181:a4cbdfbbd2f4 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
mbed_official 181:a4cbdfbbd2f4 18 * this list of conditions and the following disclaimer in the documentation
mbed_official 181:a4cbdfbbd2f4 19 * and/or other materials provided with the distribution.
mbed_official 181:a4cbdfbbd2f4 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
mbed_official 181:a4cbdfbbd2f4 21 * may be used to endorse or promote products derived from this software
mbed_official 181:a4cbdfbbd2f4 22 * without specific prior written permission.
mbed_official 181:a4cbdfbbd2f4 23 *
mbed_official 181:a4cbdfbbd2f4 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
mbed_official 181:a4cbdfbbd2f4 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
mbed_official 181:a4cbdfbbd2f4 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
mbed_official 181:a4cbdfbbd2f4 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
mbed_official 181:a4cbdfbbd2f4 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
mbed_official 181:a4cbdfbbd2f4 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
mbed_official 181:a4cbdfbbd2f4 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
mbed_official 181:a4cbdfbbd2f4 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
mbed_official 181:a4cbdfbbd2f4 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
mbed_official 181:a4cbdfbbd2f4 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
mbed_official 181:a4cbdfbbd2f4 34 *
mbed_official 181:a4cbdfbbd2f4 35 ******************************************************************************
mbed_official 181:a4cbdfbbd2f4 36 */
mbed_official 181:a4cbdfbbd2f4 37
mbed_official 181:a4cbdfbbd2f4 38 /* Define to prevent recursive inclusion -------------------------------------*/
mbed_official 181:a4cbdfbbd2f4 39 #ifndef __STM32L0xx_HAL_LCD_H
mbed_official 181:a4cbdfbbd2f4 40 #define __STM32L0xx_HAL_LCD_H
mbed_official 181:a4cbdfbbd2f4 41
mbed_official 181:a4cbdfbbd2f4 42 #ifdef __cplusplus
mbed_official 181:a4cbdfbbd2f4 43 extern "C" {
mbed_official 181:a4cbdfbbd2f4 44 #endif
mbed_official 181:a4cbdfbbd2f4 45
mbed_official 181:a4cbdfbbd2f4 46 #if !defined (STM32L051xx) && !defined (STM32L052xx) && !defined (STM32L062xx) && !defined (STM32L061xx)
mbed_official 181:a4cbdfbbd2f4 47
mbed_official 181:a4cbdfbbd2f4 48 /* Includes ------------------------------------------------------------------*/
mbed_official 181:a4cbdfbbd2f4 49 #include "stm32l0xx_hal_def.h"
mbed_official 181:a4cbdfbbd2f4 50
mbed_official 181:a4cbdfbbd2f4 51 /** @addtogroup STM32L0xx_HAL_Driver
mbed_official 181:a4cbdfbbd2f4 52 * @{
mbed_official 181:a4cbdfbbd2f4 53 */
mbed_official 181:a4cbdfbbd2f4 54
mbed_official 181:a4cbdfbbd2f4 55 /** @addtogroup LCD
mbed_official 181:a4cbdfbbd2f4 56 * @{
mbed_official 181:a4cbdfbbd2f4 57 */
mbed_official 181:a4cbdfbbd2f4 58
mbed_official 181:a4cbdfbbd2f4 59 /* Exported types ------------------------------------------------------------*/
mbed_official 181:a4cbdfbbd2f4 60
mbed_official 181:a4cbdfbbd2f4 61 /**
mbed_official 181:a4cbdfbbd2f4 62 * @brief LCD Init structure definition
mbed_official 181:a4cbdfbbd2f4 63 */
mbed_official 181:a4cbdfbbd2f4 64
mbed_official 181:a4cbdfbbd2f4 65 typedef struct
mbed_official 181:a4cbdfbbd2f4 66 {
mbed_official 181:a4cbdfbbd2f4 67 uint32_t Prescaler; /*!< Configures the LCD Prescaler.
mbed_official 181:a4cbdfbbd2f4 68 This parameter can be one value of @ref LCD_Prescaler */
mbed_official 181:a4cbdfbbd2f4 69 uint32_t Divider; /*!< Configures the LCD Divider.
mbed_official 181:a4cbdfbbd2f4 70 This parameter can be one value of @ref LCD_Divider */
mbed_official 181:a4cbdfbbd2f4 71 uint32_t Duty; /*!< Configures the LCD Duty.
mbed_official 181:a4cbdfbbd2f4 72 This parameter can be one value of @ref LCD_Duty */
mbed_official 181:a4cbdfbbd2f4 73 uint32_t Bias; /*!< Configures the LCD Bias.
mbed_official 181:a4cbdfbbd2f4 74 This parameter can be one value of @ref LCD_Bias */
mbed_official 181:a4cbdfbbd2f4 75 uint32_t VoltageSource; /*!< Selects the LCD Voltage source.
mbed_official 181:a4cbdfbbd2f4 76 This parameter can be one value of @ref LCD_Voltage_Source */
mbed_official 181:a4cbdfbbd2f4 77 uint32_t Contrast; /*!< Configures the LCD Contrast.
mbed_official 181:a4cbdfbbd2f4 78 This parameter can be one value of @ref LCD_Contrast */
mbed_official 181:a4cbdfbbd2f4 79 uint32_t DeadTime; /*!< Configures the LCD Dead Time.
mbed_official 181:a4cbdfbbd2f4 80 This parameter can be one value of @ref LCD_DeadTime */
mbed_official 181:a4cbdfbbd2f4 81 uint32_t PulseOnDuration; /*!< Configures the LCD Pulse On Duration.
mbed_official 181:a4cbdfbbd2f4 82 This parameter can be one value of @ref LCD_PulseOnDuration */
mbed_official 181:a4cbdfbbd2f4 83 uint32_t HighDrive; /*!< Enable or disable the low resistance divider.
mbed_official 181:a4cbdfbbd2f4 84 This parameter can be set to ENABLE or DISABLE. */
mbed_official 181:a4cbdfbbd2f4 85 uint32_t BlinkMode; /*!< Configures the LCD Blink Mode.
mbed_official 181:a4cbdfbbd2f4 86 This parameter can be one value of @ref LCD_BlinkMode */
mbed_official 181:a4cbdfbbd2f4 87 uint32_t BlinkFrequency; /*!< Configures the LCD Blink frequency.
mbed_official 181:a4cbdfbbd2f4 88 This parameter can be one value of @ref LCD_BlinkFrequency */
mbed_official 181:a4cbdfbbd2f4 89 }LCD_InitTypeDef;
mbed_official 181:a4cbdfbbd2f4 90
mbed_official 181:a4cbdfbbd2f4 91 /**
mbed_official 181:a4cbdfbbd2f4 92 * @brief HAL LCD State structures definition
mbed_official 181:a4cbdfbbd2f4 93 */
mbed_official 181:a4cbdfbbd2f4 94 typedef enum
mbed_official 181:a4cbdfbbd2f4 95 {
mbed_official 181:a4cbdfbbd2f4 96 HAL_LCD_STATE_RESET = 0x00, /*!< Peripheral is not yet Initialized */
mbed_official 181:a4cbdfbbd2f4 97 HAL_LCD_STATE_READY = 0x01, /*!< Peripheral Initialized and ready for use */
mbed_official 181:a4cbdfbbd2f4 98 HAL_LCD_STATE_BUSY = 0x02, /*!< an internal process is ongoing */
mbed_official 181:a4cbdfbbd2f4 99 HAL_LCD_STATE_TIMEOUT = 0x03, /*!< Timeout state */
mbed_official 181:a4cbdfbbd2f4 100 HAL_LCD_STATE_ERROR = 0x04 /*!< Error */
mbed_official 181:a4cbdfbbd2f4 101 }HAL_LCD_StateTypeDef;
mbed_official 181:a4cbdfbbd2f4 102
mbed_official 181:a4cbdfbbd2f4 103 /**
mbed_official 181:a4cbdfbbd2f4 104 * @brief HAL LCD Error Code structure definition
mbed_official 181:a4cbdfbbd2f4 105 */
mbed_official 181:a4cbdfbbd2f4 106 typedef enum
mbed_official 181:a4cbdfbbd2f4 107 {
mbed_official 181:a4cbdfbbd2f4 108 HAL_LCD_ERROR_NONE = 0x00, /*!< No error */
mbed_official 181:a4cbdfbbd2f4 109 HAL_LCD_ERROR_FCRSF = 0x01, /*!< Synchro flag timeout error */
mbed_official 181:a4cbdfbbd2f4 110 HAL_LCD_ERROR_UDR = 0x02, /*!< Update display request flag timeout error */
mbed_official 181:a4cbdfbbd2f4 111 HAL_LCD_ERROR_UDD = 0x04, /*!< Update display done flag timeout error */
mbed_official 181:a4cbdfbbd2f4 112 HAL_LCD_ERROR_ENS = 0x08, /*!< LCD enabled status flag timeout error */
mbed_official 181:a4cbdfbbd2f4 113 HAL_LCD_ERROR_RDY = 0x10 /*!< LCD Booster ready timeout error */
mbed_official 181:a4cbdfbbd2f4 114 }HAL_LCD_ErrorTypeDef;
mbed_official 181:a4cbdfbbd2f4 115
mbed_official 181:a4cbdfbbd2f4 116 /**
mbed_official 181:a4cbdfbbd2f4 117 * @brief UART handle Structure definition
mbed_official 181:a4cbdfbbd2f4 118 */
mbed_official 181:a4cbdfbbd2f4 119 typedef struct
mbed_official 181:a4cbdfbbd2f4 120 {
mbed_official 181:a4cbdfbbd2f4 121 LCD_TypeDef *Instance; /* LCD registers base address */
mbed_official 181:a4cbdfbbd2f4 122
mbed_official 181:a4cbdfbbd2f4 123 LCD_InitTypeDef Init; /* LCD communication parameters */
mbed_official 181:a4cbdfbbd2f4 124
mbed_official 181:a4cbdfbbd2f4 125 HAL_LockTypeDef Lock; /* Locking object */
mbed_official 181:a4cbdfbbd2f4 126
mbed_official 181:a4cbdfbbd2f4 127 __IO HAL_LCD_StateTypeDef State; /* LCD communication state */
mbed_official 181:a4cbdfbbd2f4 128
mbed_official 181:a4cbdfbbd2f4 129 __IO HAL_LCD_ErrorTypeDef ErrorCode; /* LCD Error code */
mbed_official 181:a4cbdfbbd2f4 130
mbed_official 181:a4cbdfbbd2f4 131 }LCD_HandleTypeDef;
mbed_official 181:a4cbdfbbd2f4 132
mbed_official 181:a4cbdfbbd2f4 133 /* Exported constants --------------------------------------------------------*/
mbed_official 181:a4cbdfbbd2f4 134
mbed_official 181:a4cbdfbbd2f4 135 /** @defgroup LCD_Exported_Constants
mbed_official 181:a4cbdfbbd2f4 136 * @{
mbed_official 181:a4cbdfbbd2f4 137 */
mbed_official 181:a4cbdfbbd2f4 138
mbed_official 181:a4cbdfbbd2f4 139 #define IS_LCD_ALL_INSTANCE(INSTANCE) ((INSTANCE) == LCD)
mbed_official 181:a4cbdfbbd2f4 140
mbed_official 181:a4cbdfbbd2f4 141 /** @defgroup LCD_Prescaler
mbed_official 181:a4cbdfbbd2f4 142 * @{
mbed_official 181:a4cbdfbbd2f4 143 */
mbed_official 181:a4cbdfbbd2f4 144
mbed_official 181:a4cbdfbbd2f4 145 #define LCD_PRESCALER_1 ((uint32_t)0x00000000) /*!< CLKPS = LCDCLK */
mbed_official 181:a4cbdfbbd2f4 146 #define LCD_PRESCALER_2 ((uint32_t)0x00400000) /*!< CLKPS = LCDCLK/2 */
mbed_official 181:a4cbdfbbd2f4 147 #define LCD_PRESCALER_4 ((uint32_t)0x00800000) /*!< CLKPS = LCDCLK/4 */
mbed_official 181:a4cbdfbbd2f4 148 #define LCD_PRESCALER_8 ((uint32_t)0x00C00000) /*!< CLKPS = LCDCLK/8 */
mbed_official 181:a4cbdfbbd2f4 149 #define LCD_PRESCALER_16 ((uint32_t)0x01000000) /*!< CLKPS = LCDCLK/16 */
mbed_official 181:a4cbdfbbd2f4 150 #define LCD_PRESCALER_32 ((uint32_t)0x01400000) /*!< CLKPS = LCDCLK/32 */
mbed_official 181:a4cbdfbbd2f4 151 #define LCD_PRESCALER_64 ((uint32_t)0x01800000) /*!< CLKPS = LCDCLK/64 */
mbed_official 181:a4cbdfbbd2f4 152 #define LCD_PRESCALER_128 ((uint32_t)0x01C00000) /*!< CLKPS = LCDCLK/128 */
mbed_official 181:a4cbdfbbd2f4 153 #define LCD_PRESCALER_256 ((uint32_t)0x02000000) /*!< CLKPS = LCDCLK/256 */
mbed_official 181:a4cbdfbbd2f4 154 #define LCD_PRESCALER_512 ((uint32_t)0x02400000) /*!< CLKPS = LCDCLK/512 */
mbed_official 181:a4cbdfbbd2f4 155 #define LCD_PRESCALER_1024 ((uint32_t)0x02800000) /*!< CLKPS = LCDCLK/1024 */
mbed_official 181:a4cbdfbbd2f4 156 #define LCD_PRESCALER_2048 ((uint32_t)0x02C00000) /*!< CLKPS = LCDCLK/2048 */
mbed_official 181:a4cbdfbbd2f4 157 #define LCD_PRESCALER_4096 ((uint32_t)0x03000000) /*!< CLKPS = LCDCLK/4096 */
mbed_official 181:a4cbdfbbd2f4 158 #define LCD_PRESCALER_8192 ((uint32_t)0x03400000) /*!< CLKPS = LCDCLK/8192 */
mbed_official 181:a4cbdfbbd2f4 159 #define LCD_PRESCALER_16384 ((uint32_t)0x03800000) /*!< CLKPS = LCDCLK/16384 */
mbed_official 181:a4cbdfbbd2f4 160 #define LCD_PRESCALER_32768 ((uint32_t)0x03C00000) /*!< CLKPS = LCDCLK/32768 */
mbed_official 181:a4cbdfbbd2f4 161
mbed_official 181:a4cbdfbbd2f4 162 #define IS_LCD_PRESCALER(PRESCALER) (((PRESCALER) == LCD_PRESCALER_1) || \
mbed_official 181:a4cbdfbbd2f4 163 ((PRESCALER) == LCD_PRESCALER_2) || \
mbed_official 181:a4cbdfbbd2f4 164 ((PRESCALER) == LCD_PRESCALER_4) || \
mbed_official 181:a4cbdfbbd2f4 165 ((PRESCALER) == LCD_PRESCALER_8) || \
mbed_official 181:a4cbdfbbd2f4 166 ((PRESCALER) == LCD_PRESCALER_16) || \
mbed_official 181:a4cbdfbbd2f4 167 ((PRESCALER) == LCD_PRESCALER_32) || \
mbed_official 181:a4cbdfbbd2f4 168 ((PRESCALER) == LCD_PRESCALER_64) || \
mbed_official 181:a4cbdfbbd2f4 169 ((PRESCALER) == LCD_PRESCALER_128) || \
mbed_official 181:a4cbdfbbd2f4 170 ((PRESCALER) == LCD_PRESCALER_256) || \
mbed_official 181:a4cbdfbbd2f4 171 ((PRESCALER) == LCD_PRESCALER_512) || \
mbed_official 181:a4cbdfbbd2f4 172 ((PRESCALER) == LCD_PRESCALER_1024) || \
mbed_official 181:a4cbdfbbd2f4 173 ((PRESCALER) == LCD_PRESCALER_2048) || \
mbed_official 181:a4cbdfbbd2f4 174 ((PRESCALER) == LCD_PRESCALER_4096) || \
mbed_official 181:a4cbdfbbd2f4 175 ((PRESCALER) == LCD_PRESCALER_8192) || \
mbed_official 181:a4cbdfbbd2f4 176 ((PRESCALER) == LCD_PRESCALER_16384) || \
mbed_official 181:a4cbdfbbd2f4 177 ((PRESCALER) == LCD_PRESCALER_32768))
mbed_official 181:a4cbdfbbd2f4 178
mbed_official 181:a4cbdfbbd2f4 179 /**
mbed_official 181:a4cbdfbbd2f4 180 * @}
mbed_official 181:a4cbdfbbd2f4 181 */
mbed_official 181:a4cbdfbbd2f4 182
mbed_official 181:a4cbdfbbd2f4 183 /** @defgroup LCD_Divider
mbed_official 181:a4cbdfbbd2f4 184 * @{
mbed_official 181:a4cbdfbbd2f4 185 */
mbed_official 181:a4cbdfbbd2f4 186
mbed_official 181:a4cbdfbbd2f4 187 #define LCD_DIVIDER_16 ((uint32_t)0x00000000) /*!< LCD frequency = CLKPS/16 */
mbed_official 181:a4cbdfbbd2f4 188 #define LCD_DIVIDER_17 ((uint32_t)0x00040000) /*!< LCD frequency = CLKPS/17 */
mbed_official 181:a4cbdfbbd2f4 189 #define LCD_DIVIDER_18 ((uint32_t)0x00080000) /*!< LCD frequency = CLKPS/18 */
mbed_official 181:a4cbdfbbd2f4 190 #define LCD_DIVIDER_19 ((uint32_t)0x000C0000) /*!< LCD frequency = CLKPS/19 */
mbed_official 181:a4cbdfbbd2f4 191 #define LCD_DIVIDER_20 ((uint32_t)0x00100000) /*!< LCD frequency = CLKPS/20 */
mbed_official 181:a4cbdfbbd2f4 192 #define LCD_DIVIDER_21 ((uint32_t)0x00140000) /*!< LCD frequency = CLKPS/21 */
mbed_official 181:a4cbdfbbd2f4 193 #define LCD_DIVIDER_22 ((uint32_t)0x00180000) /*!< LCD frequency = CLKPS/22 */
mbed_official 181:a4cbdfbbd2f4 194 #define LCD_DIVIDER_23 ((uint32_t)0x001C0000) /*!< LCD frequency = CLKPS/23 */
mbed_official 181:a4cbdfbbd2f4 195 #define LCD_DIVIDER_24 ((uint32_t)0x00200000) /*!< LCD frequency = CLKPS/24 */
mbed_official 181:a4cbdfbbd2f4 196 #define LCD_DIVIDER_25 ((uint32_t)0x00240000) /*!< LCD frequency = CLKPS/25 */
mbed_official 181:a4cbdfbbd2f4 197 #define LCD_DIVIDER_26 ((uint32_t)0x00280000) /*!< LCD frequency = CLKPS/26 */
mbed_official 181:a4cbdfbbd2f4 198 #define LCD_DIVIDER_27 ((uint32_t)0x002C0000) /*!< LCD frequency = CLKPS/27 */
mbed_official 181:a4cbdfbbd2f4 199 #define LCD_DIVIDER_28 ((uint32_t)0x00300000) /*!< LCD frequency = CLKPS/28 */
mbed_official 181:a4cbdfbbd2f4 200 #define LCD_DIVIDER_29 ((uint32_t)0x00340000) /*!< LCD frequency = CLKPS/29 */
mbed_official 181:a4cbdfbbd2f4 201 #define LCD_DIVIDER_30 ((uint32_t)0x00380000) /*!< LCD frequency = CLKPS/30 */
mbed_official 181:a4cbdfbbd2f4 202 #define LCD_DIVIDER_31 ((uint32_t)0x003C0000) /*!< LCD frequency = CLKPS/31 */
mbed_official 181:a4cbdfbbd2f4 203
mbed_official 181:a4cbdfbbd2f4 204 #define IS_LCD_DIVIDER(DIVIDER) (((DIVIDER) == LCD_DIVIDER_16) || \
mbed_official 181:a4cbdfbbd2f4 205 ((DIVIDER) == LCD_DIVIDER_17) || \
mbed_official 181:a4cbdfbbd2f4 206 ((DIVIDER) == LCD_DIVIDER_18) || \
mbed_official 181:a4cbdfbbd2f4 207 ((DIVIDER) == LCD_DIVIDER_19) || \
mbed_official 181:a4cbdfbbd2f4 208 ((DIVIDER) == LCD_DIVIDER_20) || \
mbed_official 181:a4cbdfbbd2f4 209 ((DIVIDER) == LCD_DIVIDER_21) || \
mbed_official 181:a4cbdfbbd2f4 210 ((DIVIDER) == LCD_DIVIDER_22) || \
mbed_official 181:a4cbdfbbd2f4 211 ((DIVIDER) == LCD_DIVIDER_23) || \
mbed_official 181:a4cbdfbbd2f4 212 ((DIVIDER) == LCD_DIVIDER_24) || \
mbed_official 181:a4cbdfbbd2f4 213 ((DIVIDER) == LCD_DIVIDER_25) || \
mbed_official 181:a4cbdfbbd2f4 214 ((DIVIDER) == LCD_DIVIDER_26) || \
mbed_official 181:a4cbdfbbd2f4 215 ((DIVIDER) == LCD_DIVIDER_27) || \
mbed_official 181:a4cbdfbbd2f4 216 ((DIVIDER) == LCD_DIVIDER_28) || \
mbed_official 181:a4cbdfbbd2f4 217 ((DIVIDER) == LCD_DIVIDER_29) || \
mbed_official 181:a4cbdfbbd2f4 218 ((DIVIDER) == LCD_DIVIDER_30) || \
mbed_official 181:a4cbdfbbd2f4 219 ((DIVIDER) == LCD_DIVIDER_31))
mbed_official 181:a4cbdfbbd2f4 220
mbed_official 181:a4cbdfbbd2f4 221 /**
mbed_official 181:a4cbdfbbd2f4 222 * @}
mbed_official 181:a4cbdfbbd2f4 223 */
mbed_official 181:a4cbdfbbd2f4 224
mbed_official 181:a4cbdfbbd2f4 225
mbed_official 181:a4cbdfbbd2f4 226 /** @defgroup LCD_Duty
mbed_official 181:a4cbdfbbd2f4 227 * @{
mbed_official 181:a4cbdfbbd2f4 228 */
mbed_official 181:a4cbdfbbd2f4 229
mbed_official 181:a4cbdfbbd2f4 230 #define LCD_DUTY_STATIC ((uint32_t)0x00000000) /*!< Static duty */
mbed_official 181:a4cbdfbbd2f4 231 #define LCD_DUTY_1_2 ((uint32_t)0x00000004) /*!< 1/2 duty */
mbed_official 181:a4cbdfbbd2f4 232 #define LCD_DUTY_1_3 ((uint32_t)0x00000008) /*!< 1/3 duty */
mbed_official 181:a4cbdfbbd2f4 233 #define LCD_DUTY_1_4 ((uint32_t)0x0000000C) /*!< 1/4 duty */
mbed_official 181:a4cbdfbbd2f4 234 #define LCD_DUTY_1_8 ((uint32_t)0x00000010) /*!< 1/4 duty */
mbed_official 181:a4cbdfbbd2f4 235
mbed_official 181:a4cbdfbbd2f4 236 #define IS_LCD_DUTY(DUTY) (((DUTY) == LCD_DUTY_STATIC) || \
mbed_official 181:a4cbdfbbd2f4 237 ((DUTY) == LCD_DUTY_1_2) || \
mbed_official 181:a4cbdfbbd2f4 238 ((DUTY) == LCD_DUTY_1_3) || \
mbed_official 181:a4cbdfbbd2f4 239 ((DUTY) == LCD_DUTY_1_4) || \
mbed_official 181:a4cbdfbbd2f4 240 ((DUTY) == LCD_DUTY_1_8))
mbed_official 181:a4cbdfbbd2f4 241
mbed_official 181:a4cbdfbbd2f4 242 /**
mbed_official 181:a4cbdfbbd2f4 243 * @}
mbed_official 181:a4cbdfbbd2f4 244 */
mbed_official 181:a4cbdfbbd2f4 245
mbed_official 181:a4cbdfbbd2f4 246
mbed_official 181:a4cbdfbbd2f4 247 /** @defgroup LCD_Bias
mbed_official 181:a4cbdfbbd2f4 248 * @{
mbed_official 181:a4cbdfbbd2f4 249 */
mbed_official 181:a4cbdfbbd2f4 250
mbed_official 181:a4cbdfbbd2f4 251 #define LCD_BIAS_1_4 ((uint32_t)0x00000000) /*!< 1/4 Bias */
mbed_official 181:a4cbdfbbd2f4 252 #define LCD_BIAS_1_2 LCD_CR_BIAS_0 /*!< 1/2 Bias */
mbed_official 181:a4cbdfbbd2f4 253 #define LCD_BIAS_1_3 LCD_CR_BIAS_1 /*!< 1/3 Bias */
mbed_official 181:a4cbdfbbd2f4 254
mbed_official 181:a4cbdfbbd2f4 255 #define IS_LCD_BIAS(BIAS) (((BIAS) == LCD_BIAS_1_4) || \
mbed_official 181:a4cbdfbbd2f4 256 ((BIAS) == LCD_BIAS_1_2) || \
mbed_official 181:a4cbdfbbd2f4 257 ((BIAS) == LCD_BIAS_1_3))
mbed_official 181:a4cbdfbbd2f4 258 /**
mbed_official 181:a4cbdfbbd2f4 259 * @}
mbed_official 181:a4cbdfbbd2f4 260 */
mbed_official 181:a4cbdfbbd2f4 261
mbed_official 181:a4cbdfbbd2f4 262 /** @defgroup LCD_Voltage_Source
mbed_official 181:a4cbdfbbd2f4 263 * @{
mbed_official 181:a4cbdfbbd2f4 264 */
mbed_official 181:a4cbdfbbd2f4 265
mbed_official 181:a4cbdfbbd2f4 266 #define LCD_VOLTAGESOURCE_INTERNAL ((uint32_t)0x00000000) /*!< Internal voltage source for the LCD */
mbed_official 181:a4cbdfbbd2f4 267 #define LCD_VOLTAGESOURCE_EXTERNAL LCD_CR_VSEL /*!< External voltage source for the LCD */
mbed_official 181:a4cbdfbbd2f4 268
mbed_official 181:a4cbdfbbd2f4 269 #define IS_LCD_VOLTAGE_SOURCE(SOURCE) (((SOURCE) == LCD_VOLTAGESOURCE_INTERNAL) || \
mbed_official 181:a4cbdfbbd2f4 270 ((SOURCE) == LCD_VOLTAGESOURCE_EXTERNAL))
mbed_official 181:a4cbdfbbd2f4 271
mbed_official 181:a4cbdfbbd2f4 272 /**
mbed_official 181:a4cbdfbbd2f4 273 * @}
mbed_official 181:a4cbdfbbd2f4 274 */
mbed_official 181:a4cbdfbbd2f4 275
mbed_official 181:a4cbdfbbd2f4 276 /** @defgroup LCD_Interrupts
mbed_official 181:a4cbdfbbd2f4 277 * @{
mbed_official 181:a4cbdfbbd2f4 278 */
mbed_official 181:a4cbdfbbd2f4 279 #define LCD_IT_SOF LCD_FCR_SOFIE
mbed_official 181:a4cbdfbbd2f4 280 #define LCD_IT_UDD LCD_FCR_UDDIE
mbed_official 181:a4cbdfbbd2f4 281
mbed_official 181:a4cbdfbbd2f4 282 #define IS_LCD_IT(IT) ((((IT) & (uint32_t)0xFFFFFFF5) == 0x00) && ((IT) != 0x00))
mbed_official 181:a4cbdfbbd2f4 283
mbed_official 181:a4cbdfbbd2f4 284 #define IS_LCD_GET_IT(IT) (((IT) == LCD_IT_SOF) || ((IT) == LCD_IT_UDD))
mbed_official 181:a4cbdfbbd2f4 285
mbed_official 181:a4cbdfbbd2f4 286 /**
mbed_official 181:a4cbdfbbd2f4 287 * @}
mbed_official 181:a4cbdfbbd2f4 288 */
mbed_official 181:a4cbdfbbd2f4 289
mbed_official 181:a4cbdfbbd2f4 290 /** @defgroup LCD_PulseOnDuration
mbed_official 181:a4cbdfbbd2f4 291 * @{
mbed_official 181:a4cbdfbbd2f4 292 */
mbed_official 181:a4cbdfbbd2f4 293
mbed_official 181:a4cbdfbbd2f4 294 #define LCD_PULSEONDURATION_0 ((uint32_t)0x00000000) /*!< Pulse ON duration = 0 pulse */
mbed_official 181:a4cbdfbbd2f4 295 #define LCD_PULSEONDURATION_1 ((uint32_t)0x00000010) /*!< Pulse ON duration = 1/CK_PS */
mbed_official 181:a4cbdfbbd2f4 296 #define LCD_PULSEONDURATION_2 ((uint32_t)0x00000020) /*!< Pulse ON duration = 2/CK_PS */
mbed_official 181:a4cbdfbbd2f4 297 #define LCD_PULSEONDURATION_3 ((uint32_t)0x00000030) /*!< Pulse ON duration = 3/CK_PS */
mbed_official 181:a4cbdfbbd2f4 298 #define LCD_PULSEONDURATION_4 ((uint32_t)0x00000040) /*!< Pulse ON duration = 4/CK_PS */
mbed_official 181:a4cbdfbbd2f4 299 #define LCD_PULSEONDURATION_5 ((uint32_t)0x00000050) /*!< Pulse ON duration = 5/CK_PS */
mbed_official 181:a4cbdfbbd2f4 300 #define LCD_PULSEONDURATION_6 ((uint32_t)0x00000060) /*!< Pulse ON duration = 6/CK_PS */
mbed_official 181:a4cbdfbbd2f4 301 #define LCD_PULSEONDURATION_7 ((uint32_t)0x00000070) /*!< Pulse ON duration = 7/CK_PS */
mbed_official 181:a4cbdfbbd2f4 302
mbed_official 181:a4cbdfbbd2f4 303 #define IS_LCD_PULSE_ON_DURATION(DURATION) (((DURATION) == LCD_PULSEONDURATION_0) || \
mbed_official 181:a4cbdfbbd2f4 304 ((DURATION) == LCD_PULSEONDURATION_1) || \
mbed_official 181:a4cbdfbbd2f4 305 ((DURATION) == LCD_PULSEONDURATION_2) || \
mbed_official 181:a4cbdfbbd2f4 306 ((DURATION) == LCD_PULSEONDURATION_3) || \
mbed_official 181:a4cbdfbbd2f4 307 ((DURATION) == LCD_PULSEONDURATION_4) || \
mbed_official 181:a4cbdfbbd2f4 308 ((DURATION) == LCD_PULSEONDURATION_5) || \
mbed_official 181:a4cbdfbbd2f4 309 ((DURATION) == LCD_PULSEONDURATION_6) || \
mbed_official 181:a4cbdfbbd2f4 310 ((DURATION) == LCD_PULSEONDURATION_7))
mbed_official 181:a4cbdfbbd2f4 311 /**
mbed_official 181:a4cbdfbbd2f4 312 * @}
mbed_official 181:a4cbdfbbd2f4 313 */
mbed_official 181:a4cbdfbbd2f4 314
mbed_official 181:a4cbdfbbd2f4 315
mbed_official 181:a4cbdfbbd2f4 316 /** @defgroup LCD_DeadTime
mbed_official 181:a4cbdfbbd2f4 317 * @{
mbed_official 181:a4cbdfbbd2f4 318 */
mbed_official 181:a4cbdfbbd2f4 319
mbed_official 181:a4cbdfbbd2f4 320 #define LCD_DEADTIME_0 ((uint32_t)0x00000000) /*!< No dead Time */
mbed_official 181:a4cbdfbbd2f4 321 #define LCD_DEADTIME_1 ((uint32_t)0x00000080) /*!< One Phase between different couple of Frame */
mbed_official 181:a4cbdfbbd2f4 322 #define LCD_DEADTIME_2 ((uint32_t)0x00000100) /*!< Two Phase between different couple of Frame */
mbed_official 181:a4cbdfbbd2f4 323 #define LCD_DEADTIME_3 ((uint32_t)0x00000180) /*!< Three Phase between different couple of Frame */
mbed_official 181:a4cbdfbbd2f4 324 #define LCD_DEADTIME_4 ((uint32_t)0x00000200) /*!< Four Phase between different couple of Frame */
mbed_official 181:a4cbdfbbd2f4 325 #define LCD_DEADTIME_5 ((uint32_t)0x00000280) /*!< Five Phase between different couple of Frame */
mbed_official 181:a4cbdfbbd2f4 326 #define LCD_DEADTIME_6 ((uint32_t)0x00000300) /*!< Six Phase between different couple of Frame */
mbed_official 181:a4cbdfbbd2f4 327 #define LCD_DEADTIME_7 ((uint32_t)0x00000380) /*!< Seven Phase between different couple of Frame */
mbed_official 181:a4cbdfbbd2f4 328
mbed_official 181:a4cbdfbbd2f4 329 #define IS_LCD_DEAD_TIME(TIME) (((TIME) == LCD_DEADTIME_0) || \
mbed_official 181:a4cbdfbbd2f4 330 ((TIME) == LCD_DEADTIME_1) || \
mbed_official 181:a4cbdfbbd2f4 331 ((TIME) == LCD_DEADTIME_2) || \
mbed_official 181:a4cbdfbbd2f4 332 ((TIME) == LCD_DEADTIME_3) || \
mbed_official 181:a4cbdfbbd2f4 333 ((TIME) == LCD_DEADTIME_4) || \
mbed_official 181:a4cbdfbbd2f4 334 ((TIME) == LCD_DEADTIME_5) || \
mbed_official 181:a4cbdfbbd2f4 335 ((TIME) == LCD_DEADTIME_6) || \
mbed_official 181:a4cbdfbbd2f4 336 ((TIME) == LCD_DEADTIME_7))
mbed_official 181:a4cbdfbbd2f4 337 /**
mbed_official 181:a4cbdfbbd2f4 338 * @}
mbed_official 181:a4cbdfbbd2f4 339 */
mbed_official 181:a4cbdfbbd2f4 340
mbed_official 181:a4cbdfbbd2f4 341 /** @defgroup LCD_BlinkMode
mbed_official 181:a4cbdfbbd2f4 342 * @{
mbed_official 181:a4cbdfbbd2f4 343 */
mbed_official 181:a4cbdfbbd2f4 344
mbed_official 181:a4cbdfbbd2f4 345 #define LCD_BLINKMODE_OFF ((uint32_t)0x00000000) /*!< Blink disabled */
mbed_official 181:a4cbdfbbd2f4 346 #define LCD_BLINKMODE_SEG0_COM0 ((uint32_t)0x00010000) /*!< Blink enabled on SEG[0], COM[0] (1 pixel) */
mbed_official 181:a4cbdfbbd2f4 347 #define LCD_BLINKMODE_SEG0_ALLCOM ((uint32_t)0x00020000) /*!< Blink enabled on SEG[0], all COM (up to
mbed_official 181:a4cbdfbbd2f4 348 8 pixels according to the programmed duty) */
mbed_official 181:a4cbdfbbd2f4 349 #define LCD_BLINKMODE_ALLSEG_ALLCOM ((uint32_t)0x00030000) /*!< Blink enabled on all SEG and all COM (all pixels) */
mbed_official 181:a4cbdfbbd2f4 350
mbed_official 181:a4cbdfbbd2f4 351 #define IS_LCD_BLINK_MODE(MODE) (((MODE) == LCD_BLINKMODE_OFF) || \
mbed_official 181:a4cbdfbbd2f4 352 ((MODE) == LCD_BLINKMODE_SEG0_COM0) || \
mbed_official 181:a4cbdfbbd2f4 353 ((MODE) == LCD_BLINKMODE_SEG0_ALLCOM) || \
mbed_official 181:a4cbdfbbd2f4 354 ((MODE) == LCD_BLINKMODE_ALLSEG_ALLCOM))
mbed_official 181:a4cbdfbbd2f4 355 /**
mbed_official 181:a4cbdfbbd2f4 356 * @}
mbed_official 181:a4cbdfbbd2f4 357 */
mbed_official 181:a4cbdfbbd2f4 358
mbed_official 181:a4cbdfbbd2f4 359 /** @defgroup LCD_BlinkFrequency
mbed_official 181:a4cbdfbbd2f4 360 * @{
mbed_official 181:a4cbdfbbd2f4 361 */
mbed_official 181:a4cbdfbbd2f4 362
mbed_official 181:a4cbdfbbd2f4 363 #define LCD_BLINKFREQUENCY_DIV8 ((uint32_t)0x00000000) /*!< The Blink frequency = fLCD/8 */
mbed_official 181:a4cbdfbbd2f4 364 #define LCD_BLINKFREQUENCY_DIV16 ((uint32_t)0x00002000) /*!< The Blink frequency = fLCD/16 */
mbed_official 181:a4cbdfbbd2f4 365 #define LCD_BLINKFREQUENCY_DIV32 ((uint32_t)0x00004000) /*!< The Blink frequency = fLCD/32 */
mbed_official 181:a4cbdfbbd2f4 366 #define LCD_BLINKFREQUENCY_DIV64 ((uint32_t)0x00006000) /*!< The Blink frequency = fLCD/64 */
mbed_official 181:a4cbdfbbd2f4 367 #define LCD_BLINKFREQUENCY_DIV128 ((uint32_t)0x00008000) /*!< The Blink frequency = fLCD/128 */
mbed_official 181:a4cbdfbbd2f4 368 #define LCD_BLINKFREQUENCY_DIV256 ((uint32_t)0x0000A000) /*!< The Blink frequency = fLCD/256 */
mbed_official 181:a4cbdfbbd2f4 369 #define LCD_BLINKFREQUENCY_DIV512 ((uint32_t)0x0000C000) /*!< The Blink frequency = fLCD/512 */
mbed_official 181:a4cbdfbbd2f4 370 #define LCD_BLINKFREQUENCY_DIV1024 ((uint32_t)0x0000E000) /*!< The Blink frequency = fLCD/1024 */
mbed_official 181:a4cbdfbbd2f4 371
mbed_official 181:a4cbdfbbd2f4 372 #define IS_LCD_BLINK_FREQUENCY(FREQUENCY) (((FREQUENCY) == LCD_BLINKFREQUENCY_DIV8) || \
mbed_official 181:a4cbdfbbd2f4 373 ((FREQUENCY) == LCD_BLINKFREQUENCY_DIV16) || \
mbed_official 181:a4cbdfbbd2f4 374 ((FREQUENCY) == LCD_BLINKFREQUENCY_DIV32) || \
mbed_official 181:a4cbdfbbd2f4 375 ((FREQUENCY) == LCD_BLINKFREQUENCY_DIV64) || \
mbed_official 181:a4cbdfbbd2f4 376 ((FREQUENCY) == LCD_BLINKFREQUENCY_DIV128) || \
mbed_official 181:a4cbdfbbd2f4 377 ((FREQUENCY) == LCD_BLINKFREQUENCY_DIV256) || \
mbed_official 181:a4cbdfbbd2f4 378 ((FREQUENCY) == LCD_BLINKFREQUENCY_DIV512) || \
mbed_official 181:a4cbdfbbd2f4 379 ((FREQUENCY) == LCD_BLINKFREQUENCY_DIV1024))
mbed_official 181:a4cbdfbbd2f4 380 /**
mbed_official 181:a4cbdfbbd2f4 381 * @}
mbed_official 181:a4cbdfbbd2f4 382 */
mbed_official 181:a4cbdfbbd2f4 383
mbed_official 181:a4cbdfbbd2f4 384 /** @defgroup LCD_Contrast
mbed_official 181:a4cbdfbbd2f4 385 * @{
mbed_official 181:a4cbdfbbd2f4 386 */
mbed_official 181:a4cbdfbbd2f4 387
mbed_official 181:a4cbdfbbd2f4 388 #define LCD_CONTRASTLEVEL_0 ((uint32_t)0x00000000) /*!< Maximum Voltage = 2.60V */
mbed_official 181:a4cbdfbbd2f4 389 #define LCD_CONTRASTLEVEL_1 ((uint32_t)0x00000400) /*!< Maximum Voltage = 2.73V */
mbed_official 181:a4cbdfbbd2f4 390 #define LCD_CONTRASTLEVEL_2 ((uint32_t)0x00000800) /*!< Maximum Voltage = 2.86V */
mbed_official 181:a4cbdfbbd2f4 391 #define LCD_CONTRASTLEVEL_3 ((uint32_t)0x00000C00) /*!< Maximum Voltage = 2.99V */
mbed_official 181:a4cbdfbbd2f4 392 #define LCD_CONTRASTLEVEL_4 ((uint32_t)0x00001000) /*!< Maximum Voltage = 3.12V */
mbed_official 181:a4cbdfbbd2f4 393 #define LCD_CONTRASTLEVEL_5 ((uint32_t)0x00001400) /*!< Maximum Voltage = 3.25V */
mbed_official 181:a4cbdfbbd2f4 394 #define LCD_CONTRASTLEVEL_6 ((uint32_t)0x00001800) /*!< Maximum Voltage = 3.38V */
mbed_official 181:a4cbdfbbd2f4 395 #define LCD_CONTRASTLEVEL_7 ((uint32_t)0x00001C00) /*!< Maximum Voltage = 3.51V */
mbed_official 181:a4cbdfbbd2f4 396
mbed_official 181:a4cbdfbbd2f4 397 #define IS_LCD_CONTRAST(CONTRAST) (((CONTRAST) == LCD_CONTRASTLEVEL_0) || \
mbed_official 181:a4cbdfbbd2f4 398 ((CONTRAST) == LCD_CONTRASTLEVEL_1) || \
mbed_official 181:a4cbdfbbd2f4 399 ((CONTRAST) == LCD_CONTRASTLEVEL_2) || \
mbed_official 181:a4cbdfbbd2f4 400 ((CONTRAST) == LCD_CONTRASTLEVEL_3) || \
mbed_official 181:a4cbdfbbd2f4 401 ((CONTRAST) == LCD_CONTRASTLEVEL_4) || \
mbed_official 181:a4cbdfbbd2f4 402 ((CONTRAST) == LCD_CONTRASTLEVEL_5) || \
mbed_official 181:a4cbdfbbd2f4 403 ((CONTRAST) == LCD_CONTRASTLEVEL_6) || \
mbed_official 181:a4cbdfbbd2f4 404 ((CONTRAST) == LCD_CONTRASTLEVEL_7))
mbed_official 181:a4cbdfbbd2f4 405 /**
mbed_official 181:a4cbdfbbd2f4 406 * @}
mbed_official 181:a4cbdfbbd2f4 407 */
mbed_official 181:a4cbdfbbd2f4 408
mbed_official 181:a4cbdfbbd2f4 409 /** @defgroup LCD_Flag
mbed_official 181:a4cbdfbbd2f4 410 * @{
mbed_official 181:a4cbdfbbd2f4 411 */
mbed_official 181:a4cbdfbbd2f4 412
mbed_official 181:a4cbdfbbd2f4 413 #define LCD_FLAG_ENS LCD_SR_ENS
mbed_official 181:a4cbdfbbd2f4 414 #define LCD_FLAG_SOF LCD_SR_SOF
mbed_official 181:a4cbdfbbd2f4 415 #define LCD_FLAG_UDR LCD_SR_UDR
mbed_official 181:a4cbdfbbd2f4 416 #define LCD_FLAG_UDD LCD_SR_UDD
mbed_official 181:a4cbdfbbd2f4 417 #define LCD_FLAG_RDY LCD_SR_RDY
mbed_official 181:a4cbdfbbd2f4 418 #define LCD_FLAG_FCRSF LCD_SR_FCRSR
mbed_official 181:a4cbdfbbd2f4 419
mbed_official 181:a4cbdfbbd2f4 420 #define IS_LCD_GET_FLAG(FLAG) (((FLAG) == LCD_FLAG_ENS) || ((FLAG) == LCD_FLAG_SOF) || \
mbed_official 181:a4cbdfbbd2f4 421 ((FLAG) == LCD_FLAG_UDR) || ((FLAG) == LCD_FLAG_UDD) || \
mbed_official 181:a4cbdfbbd2f4 422 ((FLAG) == LCD_FLAG_RDY) || ((FLAG) == LCD_FLAG_FCRSF))
mbed_official 181:a4cbdfbbd2f4 423
mbed_official 181:a4cbdfbbd2f4 424 #define IS_LCD_CLEAR_FLAG(FLAG) ((((FLAG) & (uint32_t)0xFFFFFFF5) == 0x00) && ((FLAG) != 0x00))
mbed_official 181:a4cbdfbbd2f4 425 /**
mbed_official 181:a4cbdfbbd2f4 426 * @}
mbed_official 181:a4cbdfbbd2f4 427 */
mbed_official 181:a4cbdfbbd2f4 428
mbed_official 181:a4cbdfbbd2f4 429 /** @defgroup LCD_RAMRegister
mbed_official 181:a4cbdfbbd2f4 430 * @{
mbed_official 181:a4cbdfbbd2f4 431 */
mbed_official 181:a4cbdfbbd2f4 432
mbed_official 181:a4cbdfbbd2f4 433 #define LCD_RAM_REGISTER0 ((uint32_t)0x00000000) /*!< LCD RAM Register 0 */
mbed_official 181:a4cbdfbbd2f4 434 #define LCD_RAM_REGISTER1 ((uint32_t)0x00000001) /*!< LCD RAM Register 1 */
mbed_official 181:a4cbdfbbd2f4 435 #define LCD_RAM_REGISTER2 ((uint32_t)0x00000002) /*!< LCD RAM Register 2 */
mbed_official 181:a4cbdfbbd2f4 436 #define LCD_RAM_REGISTER3 ((uint32_t)0x00000003) /*!< LCD RAM Register 3 */
mbed_official 181:a4cbdfbbd2f4 437 #define LCD_RAM_REGISTER4 ((uint32_t)0x00000004) /*!< LCD RAM Register 4 */
mbed_official 181:a4cbdfbbd2f4 438 #define LCD_RAM_REGISTER5 ((uint32_t)0x00000005) /*!< LCD RAM Register 5 */
mbed_official 181:a4cbdfbbd2f4 439 #define LCD_RAM_REGISTER6 ((uint32_t)0x00000006) /*!< LCD RAM Register 6 */
mbed_official 181:a4cbdfbbd2f4 440 #define LCD_RAM_REGISTER7 ((uint32_t)0x00000007) /*!< LCD RAM Register 7 */
mbed_official 181:a4cbdfbbd2f4 441 #define LCD_RAM_REGISTER8 ((uint32_t)0x00000008) /*!< LCD RAM Register 8 */
mbed_official 181:a4cbdfbbd2f4 442 #define LCD_RAM_REGISTER9 ((uint32_t)0x00000009) /*!< LCD RAM Register 9 */
mbed_official 181:a4cbdfbbd2f4 443 #define LCD_RAM_REGISTER10 ((uint32_t)0x0000000A) /*!< LCD RAM Register 10 */
mbed_official 181:a4cbdfbbd2f4 444 #define LCD_RAM_REGISTER11 ((uint32_t)0x0000000B) /*!< LCD RAM Register 11 */
mbed_official 181:a4cbdfbbd2f4 445 #define LCD_RAM_REGISTER12 ((uint32_t)0x0000000C) /*!< LCD RAM Register 12 */
mbed_official 181:a4cbdfbbd2f4 446 #define LCD_RAM_REGISTER13 ((uint32_t)0x0000000D) /*!< LCD RAM Register 13 */
mbed_official 181:a4cbdfbbd2f4 447 #define LCD_RAM_REGISTER14 ((uint32_t)0x0000000E) /*!< LCD RAM Register 14 */
mbed_official 181:a4cbdfbbd2f4 448 #define LCD_RAM_REGISTER15 ((uint32_t)0x0000000F) /*!< LCD RAM Register 15 */
mbed_official 181:a4cbdfbbd2f4 449
mbed_official 181:a4cbdfbbd2f4 450 #define IS_LCD_RAM_REGISTER(REGISTER) (((REGISTER) == LCD_RAM_REGISTER0) || \
mbed_official 181:a4cbdfbbd2f4 451 ((REGISTER) == LCD_RAM_REGISTER1) || \
mbed_official 181:a4cbdfbbd2f4 452 ((REGISTER) == LCD_RAM_REGISTER2) || \
mbed_official 181:a4cbdfbbd2f4 453 ((REGISTER) == LCD_RAM_REGISTER3) || \
mbed_official 181:a4cbdfbbd2f4 454 ((REGISTER) == LCD_RAM_REGISTER4) || \
mbed_official 181:a4cbdfbbd2f4 455 ((REGISTER) == LCD_RAM_REGISTER5) || \
mbed_official 181:a4cbdfbbd2f4 456 ((REGISTER) == LCD_RAM_REGISTER6) || \
mbed_official 181:a4cbdfbbd2f4 457 ((REGISTER) == LCD_RAM_REGISTER7) || \
mbed_official 181:a4cbdfbbd2f4 458 ((REGISTER) == LCD_RAM_REGISTER8) || \
mbed_official 181:a4cbdfbbd2f4 459 ((REGISTER) == LCD_RAM_REGISTER9) || \
mbed_official 181:a4cbdfbbd2f4 460 ((REGISTER) == LCD_RAM_REGISTER10) || \
mbed_official 181:a4cbdfbbd2f4 461 ((REGISTER) == LCD_RAM_REGISTER11) || \
mbed_official 181:a4cbdfbbd2f4 462 ((REGISTER) == LCD_RAM_REGISTER12) || \
mbed_official 181:a4cbdfbbd2f4 463 ((REGISTER) == LCD_RAM_REGISTER13) || \
mbed_official 181:a4cbdfbbd2f4 464 ((REGISTER) == LCD_RAM_REGISTER14) || \
mbed_official 181:a4cbdfbbd2f4 465 ((REGISTER) == LCD_RAM_REGISTER15))
mbed_official 181:a4cbdfbbd2f4 466
mbed_official 181:a4cbdfbbd2f4 467 /**
mbed_official 181:a4cbdfbbd2f4 468 * @}
mbed_official 181:a4cbdfbbd2f4 469 */
mbed_official 181:a4cbdfbbd2f4 470
mbed_official 181:a4cbdfbbd2f4 471 /**
mbed_official 181:a4cbdfbbd2f4 472 * @}
mbed_official 181:a4cbdfbbd2f4 473 */
mbed_official 181:a4cbdfbbd2f4 474
mbed_official 181:a4cbdfbbd2f4 475 /* Exported macro ------------------------------------------------------------*/
mbed_official 181:a4cbdfbbd2f4 476
mbed_official 181:a4cbdfbbd2f4 477 /** @brief Reset LCD handle state
mbed_official 181:a4cbdfbbd2f4 478 * @param __HANDLE__: specifies the LCD Handle.
mbed_official 181:a4cbdfbbd2f4 479 * @retval None
mbed_official 181:a4cbdfbbd2f4 480 */
mbed_official 181:a4cbdfbbd2f4 481 #define __HAL_LCD_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_LCD_STATE_RESET)
mbed_official 181:a4cbdfbbd2f4 482
mbed_official 181:a4cbdfbbd2f4 483 /** @brief macros to enables or disables the LCD
mbed_official 181:a4cbdfbbd2f4 484 * @param __HANDLE__: specifies the LCD Handle.
mbed_official 181:a4cbdfbbd2f4 485 * @retval None
mbed_official 181:a4cbdfbbd2f4 486 */
mbed_official 181:a4cbdfbbd2f4 487 #define __HAL_LCD_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->CR |= LCD_CR_LCDEN)
mbed_official 181:a4cbdfbbd2f4 488 #define __HAL_LCD_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->CR &= ~LCD_CR_LCDEN)
mbed_official 181:a4cbdfbbd2f4 489
mbed_official 181:a4cbdfbbd2f4 490 /** @brief Macros to enable or disable the low resistance divider. Displays with high
mbed_official 181:a4cbdfbbd2f4 491 * internal resistance may need a longer drive time to achieve
mbed_official 181:a4cbdfbbd2f4 492 * satisfactory contrast. This function is useful in this case if some
mbed_official 181:a4cbdfbbd2f4 493 * additional power consumption can be tolerated.
mbed_official 181:a4cbdfbbd2f4 494 * @param __HANDLE__: specifies the LCD Handle.
mbed_official 181:a4cbdfbbd2f4 495 * @note When this mode is enabled, the PulseOn Duration (PON) have to be
mbed_official 181:a4cbdfbbd2f4 496 * programmed to 1/CK_PS (LCD_PULSEONDURATION_1).
mbed_official 181:a4cbdfbbd2f4 497 * @retval None
mbed_official 181:a4cbdfbbd2f4 498 */
mbed_official 181:a4cbdfbbd2f4 499 #define __HAL_LCD_HIGHDRIVER_ENABLE(__HANDLE__) \
mbed_official 181:a4cbdfbbd2f4 500 do{ \
mbed_official 181:a4cbdfbbd2f4 501 ((__HANDLE__)->Instance->FCR |= LCD_FCR_HD); \
mbed_official 181:a4cbdfbbd2f4 502 LCD_WaitForSynchro(__HANDLE__); \
mbed_official 181:a4cbdfbbd2f4 503 }while(0)
mbed_official 181:a4cbdfbbd2f4 504
mbed_official 181:a4cbdfbbd2f4 505 #define __HAL_LCD_HIGHDRIVER_DISABLE(__HANDLE__) \
mbed_official 181:a4cbdfbbd2f4 506 do{ \
mbed_official 181:a4cbdfbbd2f4 507 ((__HANDLE__)->Instance->FCR &= ~LCD_FCR_HD); \
mbed_official 181:a4cbdfbbd2f4 508 LCD_WaitForSynchro(__HANDLE__); \
mbed_official 181:a4cbdfbbd2f4 509 }while(0)
mbed_official 181:a4cbdfbbd2f4 510 /**
mbed_official 181:a4cbdfbbd2f4 511 * @brief Macro to configure the LCD pulses on duration.
mbed_official 181:a4cbdfbbd2f4 512 * @param __HANDLE__: specifies the LCD Handle.
mbed_official 181:a4cbdfbbd2f4 513 * @param __DURATION__: specifies the LCD pulse on duration in terms of
mbed_official 181:a4cbdfbbd2f4 514 * CK_PS (prescaled LCD clock period) pulses.
mbed_official 181:a4cbdfbbd2f4 515 * This parameter can be one of the following values:
mbed_official 181:a4cbdfbbd2f4 516 * @arg LCD_PULSEONDURATION_0: 0 pulse
mbed_official 181:a4cbdfbbd2f4 517 * @arg LCD_PULSEONDURATION_1: Pulse ON duration = 1/CK_PS
mbed_official 181:a4cbdfbbd2f4 518 * @arg LCD_PULSEONDURATION_2: Pulse ON duration = 2/CK_PS
mbed_official 181:a4cbdfbbd2f4 519 * @arg LCD_PULSEONDURATION_3: Pulse ON duration = 3/CK_PS
mbed_official 181:a4cbdfbbd2f4 520 * @arg LCD_PULSEONDURATION_4: Pulse ON duration = 4/CK_PS
mbed_official 181:a4cbdfbbd2f4 521 * @arg LCD_PULSEONDURATION_5: Pulse ON duration = 5/CK_PS
mbed_official 181:a4cbdfbbd2f4 522 * @arg LCD_PULSEONDURATION_6: Pulse ON duration = 6/CK_PS
mbed_official 181:a4cbdfbbd2f4 523 * @arg LCD_PULSEONDURATION_7: Pulse ON duration = 7/CK_PS
mbed_official 181:a4cbdfbbd2f4 524 * @retval None
mbed_official 181:a4cbdfbbd2f4 525 */
mbed_official 181:a4cbdfbbd2f4 526 #define __HAL_LCD_PULSEONDURATION_CONFIG(__HANDLE__, __DURATION__) \
mbed_official 181:a4cbdfbbd2f4 527 do{ \
mbed_official 181:a4cbdfbbd2f4 528 MODIFY_REG((__HANDLE__)->Instance->FCR, LCD_FCR_PON, (__DURATION__)); \
mbed_official 181:a4cbdfbbd2f4 529 LCD_WaitForSynchro(__HANDLE__); \
mbed_official 181:a4cbdfbbd2f4 530 }while(0)
mbed_official 181:a4cbdfbbd2f4 531
mbed_official 181:a4cbdfbbd2f4 532 /**
mbed_official 181:a4cbdfbbd2f4 533 * @brief Macro to configure the LCD dead time.
mbed_official 181:a4cbdfbbd2f4 534 * @param __HANDLE__: specifies the LCD Handle.
mbed_official 181:a4cbdfbbd2f4 535 * @param __DEADTIME__: specifies the LCD dead time.
mbed_official 181:a4cbdfbbd2f4 536 * This parameter can be one of the following values:
mbed_official 181:a4cbdfbbd2f4 537 * @arg LCD_DEADTIME_0: No dead Time
mbed_official 181:a4cbdfbbd2f4 538 * @arg LCD_DEADTIME_1: One Phase between different couple of Frame
mbed_official 181:a4cbdfbbd2f4 539 * @arg LCD_DEADTIME_2: Two Phase between different couple of Frame
mbed_official 181:a4cbdfbbd2f4 540 * @arg LCD_DEADTIME_3: Three Phase between different couple of Frame
mbed_official 181:a4cbdfbbd2f4 541 * @arg LCD_DEADTIME_4: Four Phase between different couple of Frame
mbed_official 181:a4cbdfbbd2f4 542 * @arg LCD_DEADTIME_5: Five Phase between different couple of Frame
mbed_official 181:a4cbdfbbd2f4 543 * @arg LCD_DEADTIME_6: Six Phase between different couple of Frame
mbed_official 181:a4cbdfbbd2f4 544 * @arg LCD_DEADTIME_7: Seven Phase between different couple of Frame
mbed_official 181:a4cbdfbbd2f4 545 * @retval None
mbed_official 181:a4cbdfbbd2f4 546 */
mbed_official 181:a4cbdfbbd2f4 547 #define __HAL_LCD_DEADTIME_CONFIG(__HANDLE__, __DEADTIME__) \
mbed_official 181:a4cbdfbbd2f4 548 do{ \
mbed_official 181:a4cbdfbbd2f4 549 MODIFY_REG((__HANDLE__)->Instance->FCR, LCD_FCR_DEAD, (__DEADTIME__)); \
mbed_official 181:a4cbdfbbd2f4 550 LCD_WaitForSynchro(__HANDLE__); \
mbed_official 181:a4cbdfbbd2f4 551 }while(0)
mbed_official 181:a4cbdfbbd2f4 552
mbed_official 181:a4cbdfbbd2f4 553 /**
mbed_official 181:a4cbdfbbd2f4 554 * @brief Macro to configure the LCD Contrast.
mbed_official 181:a4cbdfbbd2f4 555 * @param __HANDLE__: specifies the LCD Handle.
mbed_official 181:a4cbdfbbd2f4 556 * @param __CONTRAST__: specifies the LCD Contrast.
mbed_official 181:a4cbdfbbd2f4 557 * This parameter can be one of the following values:
mbed_official 181:a4cbdfbbd2f4 558 * @arg LCD_CONTRASTLEVEL_0: Maximum Voltage = 2.60V
mbed_official 181:a4cbdfbbd2f4 559 * @arg LCD_CONTRASTLEVEL_1: Maximum Voltage = 2.73V
mbed_official 181:a4cbdfbbd2f4 560 * @arg LCD_CONTRASTLEVEL_2: Maximum Voltage = 2.86V
mbed_official 181:a4cbdfbbd2f4 561 * @arg LCD_CONTRASTLEVEL_3: Maximum Voltage = 2.99V
mbed_official 181:a4cbdfbbd2f4 562 * @arg LCD_CONTRASTLEVEL_4: Maximum Voltage = 3.12V
mbed_official 181:a4cbdfbbd2f4 563 * @arg LCD_CONTRASTLEVEL_5: Maximum Voltage = 3.25V
mbed_official 181:a4cbdfbbd2f4 564 * @arg LCD_CONTRASTLEVEL_6: Maximum Voltage = 3.38V
mbed_official 181:a4cbdfbbd2f4 565 * @arg LCD_CONTRASTLEVEL_7: Maximum Voltage = 3.51V
mbed_official 181:a4cbdfbbd2f4 566 * @retval None
mbed_official 181:a4cbdfbbd2f4 567 */
mbed_official 181:a4cbdfbbd2f4 568 #define __HAL_LCD_CONTRAST_CONFIG(__HANDLE__, __CONTRAST__) \
mbed_official 181:a4cbdfbbd2f4 569 do{ \
mbed_official 181:a4cbdfbbd2f4 570 MODIFY_REG((__HANDLE__)->Instance->FCR, LCD_FCR_CC, (__CONTRAST__)); \
mbed_official 181:a4cbdfbbd2f4 571 LCD_WaitForSynchro(__HANDLE__); \
mbed_official 181:a4cbdfbbd2f4 572 } while(0)
mbed_official 181:a4cbdfbbd2f4 573 /**
mbed_official 181:a4cbdfbbd2f4 574 * @brief Macro to configure the LCD Blink mode and Blink frequency.
mbed_official 181:a4cbdfbbd2f4 575 * @param __HANDLE__: specifies the LCD Handle.
mbed_official 181:a4cbdfbbd2f4 576 * @param __BLINKMODE__: specifies the LCD blink mode.
mbed_official 181:a4cbdfbbd2f4 577 * This parameter can be one of the following values:
mbed_official 181:a4cbdfbbd2f4 578 * @arg LCD_BLINKMODE_OFF: Blink disabled
mbed_official 181:a4cbdfbbd2f4 579 * @arg LCD_BLINKMODE_SEG0_COM0: Blink enabled on SEG[0], COM[0] (1 pixel)
mbed_official 181:a4cbdfbbd2f4 580 * @arg LCD_BLINKMODE_SEG0_ALLCOM: Blink enabled on SEG[0], all COM (up to 8
mbed_official 181:a4cbdfbbd2f4 581 * pixels according to the programmed duty)
mbed_official 181:a4cbdfbbd2f4 582 * @arg LCD_BLINKMODE_ALLSEG_ALLCOM: Blink enabled on all SEG and all COM
mbed_official 181:a4cbdfbbd2f4 583 * (all pixels)
mbed_official 181:a4cbdfbbd2f4 584 * @param __BLINKFREQUENCY__: specifies the LCD blink frequency.
mbed_official 181:a4cbdfbbd2f4 585 * @arg LCD_BLINKFREQUENCY_DIV8: The Blink frequency = fLcd/8
mbed_official 181:a4cbdfbbd2f4 586 * @arg LCD_BLINKFREQUENCY_DIV16: The Blink frequency = fLcd/16
mbed_official 181:a4cbdfbbd2f4 587 * @arg LCD_BLINKFREQUENCY_DIV32: The Blink frequency = fLcd/32
mbed_official 181:a4cbdfbbd2f4 588 * @arg LCD_BLINKFREQUENCY_DIV64: The Blink frequency = fLcd/64
mbed_official 181:a4cbdfbbd2f4 589 * @arg LCD_BLINKFREQUENCY_DIV128: The Blink frequency = fLcd/128
mbed_official 181:a4cbdfbbd2f4 590 * @arg LCD_BLINKFREQUENCY_DIV256: The Blink frequency = fLcd/256
mbed_official 181:a4cbdfbbd2f4 591 * @arg LCD_BLINKFREQUENCY_DIV512: The Blink frequency = fLcd/512
mbed_official 181:a4cbdfbbd2f4 592 * @arg LCD_BLINKFREQUENCY_DIV1024: The Blink frequency = fLcd/1024
mbed_official 181:a4cbdfbbd2f4 593 * @retval None
mbed_official 181:a4cbdfbbd2f4 594 */
mbed_official 181:a4cbdfbbd2f4 595 #define __HAL_LCD_BLINK_CONFIG(__HANDLE__, __BLINKMODE__, __BLINKFREQUENCY__) \
mbed_official 181:a4cbdfbbd2f4 596 do{ \
mbed_official 181:a4cbdfbbd2f4 597 MODIFY_REG((__HANDLE__)->Instance->FCR, (LCD_FCR_BLINKF | LCD_FCR_BLINK), ((__BLINKMODE__) | (__BLINKFREQUENCY__))); \
mbed_official 181:a4cbdfbbd2f4 598 LCD_WaitForSynchro(__HANDLE__); \
mbed_official 181:a4cbdfbbd2f4 599 }while(0)
mbed_official 181:a4cbdfbbd2f4 600
mbed_official 181:a4cbdfbbd2f4 601 /** @brief Enables or disables the specified LCD interrupt.
mbed_official 181:a4cbdfbbd2f4 602 * @param __HANDLE__: specifies the LCD Handle.
mbed_official 181:a4cbdfbbd2f4 603 * @param __INTERRUPT__: specifies the LCD interrupt source to be enabled or disabled.
mbed_official 181:a4cbdfbbd2f4 604 * This parameter can be one of the following values:
mbed_official 181:a4cbdfbbd2f4 605 * @arg LCD_IT_SOF: Start of Frame Interrupt
mbed_official 181:a4cbdfbbd2f4 606 * @arg LCD_IT_UDD: Update Display Done Interrupt
mbed_official 181:a4cbdfbbd2f4 607 * @retval None
mbed_official 181:a4cbdfbbd2f4 608 */
mbed_official 181:a4cbdfbbd2f4 609 #define __HAL_LCD_ENABLE_IT(__HANDLE__, __INTERRUPT__) \
mbed_official 181:a4cbdfbbd2f4 610 do{ \
mbed_official 181:a4cbdfbbd2f4 611 ((__HANDLE__)->Instance->FCR |= (__INTERRUPT__)); \
mbed_official 181:a4cbdfbbd2f4 612 LCD_WaitForSynchro(__HANDLE__); \
mbed_official 181:a4cbdfbbd2f4 613 }while(0)
mbed_official 181:a4cbdfbbd2f4 614 #define __HAL_LCD_DISABLE_IT(__HANDLE__, __INTERRUPT__) \
mbed_official 181:a4cbdfbbd2f4 615 do{ \
mbed_official 181:a4cbdfbbd2f4 616 ((__HANDLE__)->Instance->FCR &= ~(__INTERRUPT__));\
mbed_official 181:a4cbdfbbd2f4 617 LCD_WaitForSynchro(__HANDLE__); \
mbed_official 181:a4cbdfbbd2f4 618 }while(0)
mbed_official 181:a4cbdfbbd2f4 619 /** @brief Checks whether the specified LCD interrupt is enabled or not.
mbed_official 181:a4cbdfbbd2f4 620 * @param __HANDLE__: specifies the LCD Handle.
mbed_official 181:a4cbdfbbd2f4 621 * @param __IT__: specifies the LCD interrupt source to check.
mbed_official 181:a4cbdfbbd2f4 622 * This parameter can be one of the following values:
mbed_official 181:a4cbdfbbd2f4 623 * @arg LCD_IT_SOF: Start of Frame Interrupt
mbed_official 181:a4cbdfbbd2f4 624 * @arg LCD_IT_UDD: Update Display Done Interrupt.
mbed_official 181:a4cbdfbbd2f4 625 * @note If the device is in STOP mode (PCLK not provided) UDD will not
mbed_official 181:a4cbdfbbd2f4 626 * generate an interrupt even if UDDIE = 1.
mbed_official 181:a4cbdfbbd2f4 627 * If the display is not enabled the UDD interrupt will never occur.
mbed_official 181:a4cbdfbbd2f4 628 * @retval The state of __IT__ (TRUE or FALSE).
mbed_official 181:a4cbdfbbd2f4 629 */
mbed_official 181:a4cbdfbbd2f4 630 #define __HAL_LCD_GET_IT_SOURCE(__HANDLE__, __IT__) (((__HANDLE__)->Instance->FCR) & (__IT__))
mbed_official 181:a4cbdfbbd2f4 631
mbed_official 181:a4cbdfbbd2f4 632 /** @brief Checks whether the specified LCD flag is set or not.
mbed_official 181:a4cbdfbbd2f4 633 * @param __HANDLE__: specifies the LCD Handle.
mbed_official 181:a4cbdfbbd2f4 634 * @param __FLAG__: specifies the flag to check.
mbed_official 181:a4cbdfbbd2f4 635 * This parameter can be one of the following values:
mbed_official 181:a4cbdfbbd2f4 636 * @arg LCD_FLAG_ENS: LCD Enabled flag. It indicates the LCD controller status.
mbed_official 181:a4cbdfbbd2f4 637 * @note The ENS bit is set immediately when the LCDEN bit in the LCD_CR
mbed_official 181:a4cbdfbbd2f4 638 * goes from 0 to 1. On deactivation it reflects the real status of
mbed_official 181:a4cbdfbbd2f4 639 * LCD so it becomes 0 at the end of the last displayed frame.
mbed_official 181:a4cbdfbbd2f4 640 * @arg LCD_FLAG_SOF: Start of Frame flag. This flag is set by hardware at
mbed_official 181:a4cbdfbbd2f4 641 * the beginning of a new frame, at the same time as the display data is
mbed_official 181:a4cbdfbbd2f4 642 * updated.
mbed_official 181:a4cbdfbbd2f4 643 * @arg LCD_FLAG_UDR: Update Display Request flag.
mbed_official 181:a4cbdfbbd2f4 644 * @arg LCD_FLAG_UDD: Update Display Done flag.
mbed_official 181:a4cbdfbbd2f4 645 * @arg LCD_FLAG_RDY: Step_up converter Ready flag. It indicates the status
mbed_official 181:a4cbdfbbd2f4 646 * of the step-up converter.
mbed_official 181:a4cbdfbbd2f4 647 * @arg LCD_FLAG_FCRSF: LCD Frame Control Register Synchronization Flag.
mbed_official 181:a4cbdfbbd2f4 648 * This flag is set by hardware each time the LCD_FCR register is updated
mbed_official 181:a4cbdfbbd2f4 649 * in the LCDCLK domain.
mbed_official 181:a4cbdfbbd2f4 650 * @retval The new state of __FLAG__ (TRUE or FALSE).
mbed_official 181:a4cbdfbbd2f4 651 */
mbed_official 181:a4cbdfbbd2f4 652 #define __HAL_LCD_GET_FLAG(__HANDLE__, __FLAG__) (((__HANDLE__)->Instance->SR & (__FLAG__)) == (__FLAG__))
mbed_official 181:a4cbdfbbd2f4 653
mbed_official 181:a4cbdfbbd2f4 654 /** @brief Clears the specified LCD pending flag.
mbed_official 181:a4cbdfbbd2f4 655 * @param __HANDLE__: specifies the LCD Handle.
mbed_official 181:a4cbdfbbd2f4 656 * @param __FLAG__: specifies the flag to check.
mbed_official 181:a4cbdfbbd2f4 657 * This parameter can be any combination of the following values:
mbed_official 181:a4cbdfbbd2f4 658 * @arg LCD_FLAG_SOF: Start of Frame Interrupt
mbed_official 181:a4cbdfbbd2f4 659 * @arg LCD_FLAG_UDD: Update Display Done Interrupt
mbed_official 181:a4cbdfbbd2f4 660 * @retval None
mbed_official 181:a4cbdfbbd2f4 661 */
mbed_official 181:a4cbdfbbd2f4 662 #define __HAL_LCD_CLEAR_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->Instance->CLR = (__FLAG__))
mbed_official 181:a4cbdfbbd2f4 663
mbed_official 181:a4cbdfbbd2f4 664 /* Exported functions ------------------------------------------------------- */
mbed_official 181:a4cbdfbbd2f4 665 /* Initialization/de-initialization methods **********************************/
mbed_official 181:a4cbdfbbd2f4 666 HAL_StatusTypeDef HAL_LCD_DeInit(LCD_HandleTypeDef *hlcd);
mbed_official 181:a4cbdfbbd2f4 667 HAL_StatusTypeDef HAL_LCD_Init(LCD_HandleTypeDef *hlcd);
mbed_official 181:a4cbdfbbd2f4 668 void HAL_LCD_MspInit(LCD_HandleTypeDef *hlcd);
mbed_official 181:a4cbdfbbd2f4 669 void HAL_LCD_MspDeInit(LCD_HandleTypeDef *hlcd);
mbed_official 181:a4cbdfbbd2f4 670
mbed_official 181:a4cbdfbbd2f4 671 /* IO operation methods *******************************************************/
mbed_official 181:a4cbdfbbd2f4 672 HAL_StatusTypeDef HAL_LCD_Write(LCD_HandleTypeDef *hlcd, uint32_t RAMRegisterIndex, uint32_t RAMRegisterMask, uint32_t Data);
mbed_official 181:a4cbdfbbd2f4 673 HAL_StatusTypeDef HAL_LCD_Clear(LCD_HandleTypeDef *hlcd);
mbed_official 181:a4cbdfbbd2f4 674 HAL_StatusTypeDef HAL_LCD_UpdateDisplayRequest(LCD_HandleTypeDef *hlcd);
mbed_official 181:a4cbdfbbd2f4 675
mbed_official 181:a4cbdfbbd2f4 676 /* Peripheral State methods **************************************************/
mbed_official 181:a4cbdfbbd2f4 677 HAL_LCD_StateTypeDef HAL_LCD_GetState(LCD_HandleTypeDef *hlcd);
mbed_official 181:a4cbdfbbd2f4 678 uint32_t HAL_LCD_GetError(LCD_HandleTypeDef *hlcd);
mbed_official 181:a4cbdfbbd2f4 679
mbed_official 181:a4cbdfbbd2f4 680 /* Private functions ---------------------------------------------------------*/
mbed_official 181:a4cbdfbbd2f4 681 HAL_StatusTypeDef LCD_WaitForSynchro(LCD_HandleTypeDef *hlcd);
mbed_official 181:a4cbdfbbd2f4 682
mbed_official 181:a4cbdfbbd2f4 683 #endif /* STM32L051xx && STM32L052xx && STM32L062xx && STM32L061xx*/
mbed_official 181:a4cbdfbbd2f4 684
mbed_official 181:a4cbdfbbd2f4 685 #ifdef __cplusplus
mbed_official 181:a4cbdfbbd2f4 686 }
mbed_official 181:a4cbdfbbd2f4 687 #endif
mbed_official 181:a4cbdfbbd2f4 688
mbed_official 181:a4cbdfbbd2f4 689 #endif /* __STM32L0xx_HAL_LCD_H */
mbed_official 181:a4cbdfbbd2f4 690
mbed_official 181:a4cbdfbbd2f4 691 /**
mbed_official 181:a4cbdfbbd2f4 692 * @}
mbed_official 181:a4cbdfbbd2f4 693 */
mbed_official 181:a4cbdfbbd2f4 694
mbed_official 181:a4cbdfbbd2f4 695 /**
mbed_official 181:a4cbdfbbd2f4 696 * @}
mbed_official 181:a4cbdfbbd2f4 697 */
mbed_official 181:a4cbdfbbd2f4 698
mbed_official 181:a4cbdfbbd2f4 699 /******************* (C) COPYRIGHT 2014 STMicroelectronics *****END OF FILE****/