library

Dependents:   Aprendendo Final_v3

Committer:
zigdrix
Date:
Mon Oct 19 22:13:50 2020 +0000
Revision:
4:e746cdd3e76a
Parent:
0:0002c86c2220
Projeto Final PI 1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
bcostm 0:0002c86c2220 1 /**
bcostm 0:0002c86c2220 2 ******************************************************************************
bcostm 0:0002c86c2220 3 * @file stm32469i_discovery_lcd.h
bcostm 0:0002c86c2220 4 * @author MCD Application Team
bcostm 0:0002c86c2220 5 * @version V1.0.1
bcostm 0:0002c86c2220 6 * @date 29-September-2015
bcostm 0:0002c86c2220 7 * @brief This file contains the common defines and functions prototypes for
bcostm 0:0002c86c2220 8 * the stm32469i_discovery_lcd.c driver.
bcostm 0:0002c86c2220 9 ******************************************************************************
bcostm 0:0002c86c2220 10 * @attention
bcostm 0:0002c86c2220 11 *
bcostm 0:0002c86c2220 12 * <h2><center>&copy; COPYRIGHT(c) 2015 STMicroelectronics</center></h2>
bcostm 0:0002c86c2220 13 *
bcostm 0:0002c86c2220 14 * Redistribution and use in source and binary forms, with or without modification,
bcostm 0:0002c86c2220 15 * are permitted provided that the following conditions are met:
bcostm 0:0002c86c2220 16 * 1. Redistributions of source code must retain the above copyright notice,
bcostm 0:0002c86c2220 17 * this list of conditions and the following disclaimer.
bcostm 0:0002c86c2220 18 * 2. Redistributions in binary form must reproduce the above copyright notice,
bcostm 0:0002c86c2220 19 * this list of conditions and the following disclaimer in the documentation
bcostm 0:0002c86c2220 20 * and/or other materials provided with the distribution.
bcostm 0:0002c86c2220 21 * 3. Neither the name of STMicroelectronics nor the names of its contributors
bcostm 0:0002c86c2220 22 * may be used to endorse or promote products derived from this software
bcostm 0:0002c86c2220 23 * without specific prior written permission.
bcostm 0:0002c86c2220 24 *
bcostm 0:0002c86c2220 25 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
bcostm 0:0002c86c2220 26 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
bcostm 0:0002c86c2220 27 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
bcostm 0:0002c86c2220 28 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
bcostm 0:0002c86c2220 29 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
bcostm 0:0002c86c2220 30 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
bcostm 0:0002c86c2220 31 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
bcostm 0:0002c86c2220 32 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
bcostm 0:0002c86c2220 33 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
bcostm 0:0002c86c2220 34 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
bcostm 0:0002c86c2220 35 *
bcostm 0:0002c86c2220 36 ******************************************************************************
bcostm 0:0002c86c2220 37 */
bcostm 0:0002c86c2220 38
bcostm 0:0002c86c2220 39 /* Define to prevent recursive inclusion -------------------------------------*/
bcostm 0:0002c86c2220 40 #ifndef __STM32469I_DISCOVERY_LCD_H
bcostm 0:0002c86c2220 41 #define __STM32469I_DISCOVERY_LCD_H
bcostm 0:0002c86c2220 42
bcostm 0:0002c86c2220 43 #ifdef __cplusplus
bcostm 0:0002c86c2220 44 extern "C" {
bcostm 0:0002c86c2220 45 #endif
bcostm 0:0002c86c2220 46
bcostm 0:0002c86c2220 47 /* Includes ------------------------------------------------------------------*/
bcostm 0:0002c86c2220 48 /* Include LCD component Driver */
bcostm 0:0002c86c2220 49
bcostm 0:0002c86c2220 50 /* Include OTM8009A LCD Driver IC driver code */
bcostm 0:0002c86c2220 51 #include "../Components/otm8009a/otm8009a.h"
bcostm 0:0002c86c2220 52
bcostm 0:0002c86c2220 53 /* Include SDRAM Driver */
bcostm 0:0002c86c2220 54 #include "stm32469i_discovery_sdram.h"
bcostm 0:0002c86c2220 55 #include "stm32469i_discovery.h"
bcostm 0:0002c86c2220 56 #include "../Fonts/fonts.h"
bcostm 0:0002c86c2220 57
bcostm 0:0002c86c2220 58 #include <string.h> /* use of memset() */
bcostm 0:0002c86c2220 59
bcostm 0:0002c86c2220 60 /** @addtogroup BSP
bcostm 0:0002c86c2220 61 * @{
bcostm 0:0002c86c2220 62 */
bcostm 0:0002c86c2220 63
bcostm 0:0002c86c2220 64 /** @addtogroup STM32469I-Discovery
bcostm 0:0002c86c2220 65 * @{
bcostm 0:0002c86c2220 66 */
bcostm 0:0002c86c2220 67
bcostm 0:0002c86c2220 68 /** @addtogroup STM32469I-Discovery_LCD STM32469I Discovery LCD
bcostm 0:0002c86c2220 69 * @{
bcostm 0:0002c86c2220 70 */
bcostm 0:0002c86c2220 71
bcostm 0:0002c86c2220 72 /** @defgroup STM32469I-Discovery_LCD_Exported_Constants STM32469I Discovery LCD Exported Constants
bcostm 0:0002c86c2220 73 * @{
bcostm 0:0002c86c2220 74 */
bcostm 0:0002c86c2220 75
bcostm 0:0002c86c2220 76 #define LCD_LayerCfgTypeDef LTDC_LayerCfgTypeDef
bcostm 0:0002c86c2220 77 /**
bcostm 0:0002c86c2220 78 * @brief LCD FB_StartAddress
bcostm 0:0002c86c2220 79 */
bcostm 0:0002c86c2220 80 #define LCD_FB_START_ADDRESS ((uint32_t)0xC0000000)
bcostm 0:0002c86c2220 81
bcostm 0:0002c86c2220 82 /** @brief Maximum number of LTDC layers
bcostm 0:0002c86c2220 83 */
bcostm 0:0002c86c2220 84 #define LTDC_MAX_LAYER_NUMBER ((uint32_t) 2)
bcostm 0:0002c86c2220 85
bcostm 0:0002c86c2220 86 /** @brief LTDC Background layer index
bcostm 0:0002c86c2220 87 */
bcostm 0:0002c86c2220 88 #define LTDC_ACTIVE_LAYER_BACKGROUND ((uint32_t) 0)
bcostm 0:0002c86c2220 89
bcostm 0:0002c86c2220 90 /** @brief LTDC Foreground layer index
bcostm 0:0002c86c2220 91 */
bcostm 0:0002c86c2220 92 #define LTDC_ACTIVE_LAYER_FOREGROUND ((uint32_t) 1)
bcostm 0:0002c86c2220 93
bcostm 0:0002c86c2220 94 /** @brief Number of LTDC layers
bcostm 0:0002c86c2220 95 */
bcostm 0:0002c86c2220 96 #define LTDC_NB_OF_LAYERS ((uint32_t) 2)
bcostm 0:0002c86c2220 97
bcostm 0:0002c86c2220 98 /** @brief LTDC Default used layer index
bcostm 0:0002c86c2220 99 */
bcostm 0:0002c86c2220 100 #define LTDC_DEFAULT_ACTIVE_LAYER LTDC_ACTIVE_LAYER_FOREGROUND
bcostm 0:0002c86c2220 101
bcostm 0:0002c86c2220 102 /**
bcostm 0:0002c86c2220 103 * @brief LCD status structure definition
bcostm 0:0002c86c2220 104 */
bcostm 0:0002c86c2220 105 #define LCD_OK 0x00
bcostm 0:0002c86c2220 106 #define LCD_ERROR 0x01
bcostm 0:0002c86c2220 107 #define LCD_TIMEOUT 0x02
bcostm 0:0002c86c2220 108
bcostm 0:0002c86c2220 109 /**
bcostm 0:0002c86c2220 110 * @brief LCD Display OTM8009A ID
bcostm 0:0002c86c2220 111 */
bcostm 0:0002c86c2220 112 #define LCD_OTM8009A_ID ((uint32_t) 0)
bcostm 0:0002c86c2220 113
bcostm 0:0002c86c2220 114 /**
bcostm 0:0002c86c2220 115 * @brief LCD color definitions values
bcostm 0:0002c86c2220 116 * in ARGB8888 format.
bcostm 0:0002c86c2220 117 */
bcostm 0:0002c86c2220 118
bcostm 0:0002c86c2220 119 /** @brief Blue value in ARGB8888 format
bcostm 0:0002c86c2220 120 */
bcostm 0:0002c86c2220 121 #define LCD_COLOR_BLUE ((uint32_t) 0xFF0000FF)
bcostm 0:0002c86c2220 122
bcostm 0:0002c86c2220 123 /** @brief Green value in ARGB8888 format
bcostm 0:0002c86c2220 124 */
bcostm 0:0002c86c2220 125 #define LCD_COLOR_GREEN ((uint32_t) 0xFF00FF00)
bcostm 0:0002c86c2220 126
bcostm 0:0002c86c2220 127 /** @brief Red value in ARGB8888 format
bcostm 0:0002c86c2220 128 */
bcostm 0:0002c86c2220 129 #define LCD_COLOR_RED ((uint32_t) 0xFFFF0000)
bcostm 0:0002c86c2220 130
bcostm 0:0002c86c2220 131 /** @brief Cyan value in ARGB8888 format
bcostm 0:0002c86c2220 132 */
bcostm 0:0002c86c2220 133 #define LCD_COLOR_CYAN ((uint32_t) 0xFF00FFFF)
bcostm 0:0002c86c2220 134
bcostm 0:0002c86c2220 135 /** @brief Magenta value in ARGB8888 format
bcostm 0:0002c86c2220 136 */
bcostm 0:0002c86c2220 137 #define LCD_COLOR_MAGENTA ((uint32_t) 0xFFFF00FF)
bcostm 0:0002c86c2220 138
bcostm 0:0002c86c2220 139 /** @brief Yellow value in ARGB8888 format
bcostm 0:0002c86c2220 140 */
bcostm 0:0002c86c2220 141 #define LCD_COLOR_YELLOW ((uint32_t) 0xFFFFFF00)
bcostm 0:0002c86c2220 142
bcostm 0:0002c86c2220 143 /** @brief Light Blue value in ARGB8888 format
bcostm 0:0002c86c2220 144 */
bcostm 0:0002c86c2220 145 #define LCD_COLOR_LIGHTBLUE ((uint32_t) 0xFF8080FF)
bcostm 0:0002c86c2220 146
bcostm 0:0002c86c2220 147 /** @brief Light Green value in ARGB8888 format
bcostm 0:0002c86c2220 148 */
bcostm 0:0002c86c2220 149 #define LCD_COLOR_LIGHTGREEN ((uint32_t) 0xFF80FF80)
bcostm 0:0002c86c2220 150
bcostm 0:0002c86c2220 151 /** @brief Light Red value in ARGB8888 format
bcostm 0:0002c86c2220 152 */
bcostm 0:0002c86c2220 153 #define LCD_COLOR_LIGHTRED ((uint32_t) 0xFFFF8080)
bcostm 0:0002c86c2220 154
bcostm 0:0002c86c2220 155 /** @brief Light Cyan value in ARGB8888 format
bcostm 0:0002c86c2220 156 */
bcostm 0:0002c86c2220 157 #define LCD_COLOR_LIGHTCYAN ((uint32_t) 0xFF80FFFF)
bcostm 0:0002c86c2220 158
bcostm 0:0002c86c2220 159 /** @brief Light Magenta value in ARGB8888 format
bcostm 0:0002c86c2220 160 */
bcostm 0:0002c86c2220 161 #define LCD_COLOR_LIGHTMAGENTA ((uint32_t) 0xFFFF80FF)
bcostm 0:0002c86c2220 162
bcostm 0:0002c86c2220 163 /** @brief Light Yellow value in ARGB8888 format
bcostm 0:0002c86c2220 164 */
bcostm 0:0002c86c2220 165 #define LCD_COLOR_LIGHTYELLOW ((uint32_t) 0xFFFFFF80)
bcostm 0:0002c86c2220 166
bcostm 0:0002c86c2220 167 /** @brief Dark Blue value in ARGB8888 format
bcostm 0:0002c86c2220 168 */
bcostm 0:0002c86c2220 169 #define LCD_COLOR_DARKBLUE ((uint32_t) 0xFF000080)
bcostm 0:0002c86c2220 170
bcostm 0:0002c86c2220 171 /** @brief Light Dark Green value in ARGB8888 format
bcostm 0:0002c86c2220 172 */
bcostm 0:0002c86c2220 173 #define LCD_COLOR_DARKGREEN ((uint32_t) 0xFF008000)
bcostm 0:0002c86c2220 174
bcostm 0:0002c86c2220 175 /** @brief Light Dark Red value in ARGB8888 format
bcostm 0:0002c86c2220 176 */
bcostm 0:0002c86c2220 177 #define LCD_COLOR_DARKRED ((uint32_t) 0xFF800000)
bcostm 0:0002c86c2220 178
bcostm 0:0002c86c2220 179 /** @brief Dark Cyan value in ARGB8888 format
bcostm 0:0002c86c2220 180 */
bcostm 0:0002c86c2220 181 #define LCD_COLOR_DARKCYAN ((uint32_t) 0xFF008080)
bcostm 0:0002c86c2220 182
bcostm 0:0002c86c2220 183 /** @brief Dark Magenta value in ARGB8888 format
bcostm 0:0002c86c2220 184 */
bcostm 0:0002c86c2220 185 #define LCD_COLOR_DARKMAGENTA ((uint32_t) 0xFF800080)
bcostm 0:0002c86c2220 186
bcostm 0:0002c86c2220 187 /** @brief Dark Yellow value in ARGB8888 format
bcostm 0:0002c86c2220 188 */
bcostm 0:0002c86c2220 189 #define LCD_COLOR_DARKYELLOW ((uint32_t) 0xFF808000)
bcostm 0:0002c86c2220 190
bcostm 0:0002c86c2220 191 /** @brief White value in ARGB8888 format
bcostm 0:0002c86c2220 192 */
bcostm 0:0002c86c2220 193 #define LCD_COLOR_WHITE ((uint32_t) 0xFFFFFFFF)
bcostm 0:0002c86c2220 194
bcostm 0:0002c86c2220 195 /** @brief Light Gray value in ARGB8888 format
bcostm 0:0002c86c2220 196 */
bcostm 0:0002c86c2220 197 #define LCD_COLOR_LIGHTGRAY ((uint32_t) 0xFFD3D3D3)
bcostm 0:0002c86c2220 198
bcostm 0:0002c86c2220 199 /** @brief Gray value in ARGB8888 format
bcostm 0:0002c86c2220 200 */
bcostm 0:0002c86c2220 201 #define LCD_COLOR_GRAY ((uint32_t) 0xFF808080)
bcostm 0:0002c86c2220 202
bcostm 0:0002c86c2220 203 /** @brief Dark Gray value in ARGB8888 format
bcostm 0:0002c86c2220 204 */
bcostm 0:0002c86c2220 205 #define LCD_COLOR_DARKGRAY ((uint32_t) 0xFF404040)
bcostm 0:0002c86c2220 206
bcostm 0:0002c86c2220 207 /** @brief Black value in ARGB8888 format
bcostm 0:0002c86c2220 208 */
bcostm 0:0002c86c2220 209 #define LCD_COLOR_BLACK ((uint32_t) 0xFF000000)
bcostm 0:0002c86c2220 210
bcostm 0:0002c86c2220 211 /** @brief Brown value in ARGB8888 format
bcostm 0:0002c86c2220 212 */
bcostm 0:0002c86c2220 213 #define LCD_COLOR_BROWN ((uint32_t) 0xFFA52A2A)
bcostm 0:0002c86c2220 214
bcostm 0:0002c86c2220 215 /** @brief Orange value in ARGB8888 format
bcostm 0:0002c86c2220 216 */
bcostm 0:0002c86c2220 217 #define LCD_COLOR_ORANGE ((uint32_t) 0xFFFFA500)
bcostm 0:0002c86c2220 218
bcostm 0:0002c86c2220 219 /** @brief Transparent value in ARGB8888 format
bcostm 0:0002c86c2220 220 */
bcostm 0:0002c86c2220 221 #define LCD_COLOR_TRANSPARENT ((uint32_t) 0xFF000000)
bcostm 0:0002c86c2220 222
bcostm 0:0002c86c2220 223 /**
bcostm 0:0002c86c2220 224 * @brief LCD default font
bcostm 0:0002c86c2220 225 */
bcostm 0:0002c86c2220 226 #define LCD_DEFAULT_FONT Font24
bcostm 0:0002c86c2220 227 /**
bcostm 0:0002c86c2220 228 * @}
bcostm 0:0002c86c2220 229 */
bcostm 0:0002c86c2220 230
bcostm 0:0002c86c2220 231 /** @defgroup STM32469I-Discovery_LCD_Exported_Types STM32469I Discovery LCD Exported Types
bcostm 0:0002c86c2220 232 * @{
bcostm 0:0002c86c2220 233 */
bcostm 0:0002c86c2220 234
bcostm 0:0002c86c2220 235 /**
bcostm 0:0002c86c2220 236 * @brief LCD Drawing main properties
bcostm 0:0002c86c2220 237 */
bcostm 0:0002c86c2220 238 typedef struct
bcostm 0:0002c86c2220 239 {
bcostm 0:0002c86c2220 240 uint32_t TextColor; /*!< Specifies the color of text */
bcostm 0:0002c86c2220 241 uint32_t BackColor; /*!< Specifies the background color below the text */
bcostm 0:0002c86c2220 242 sFONT *pFont; /*!< Specifies the font used for the text */
bcostm 0:0002c86c2220 243
bcostm 0:0002c86c2220 244 } LCD_DrawPropTypeDef;
bcostm 0:0002c86c2220 245
bcostm 0:0002c86c2220 246 /**
bcostm 0:0002c86c2220 247 * @brief LCD Drawing point (pixel) geometric definition
bcostm 0:0002c86c2220 248 */
bcostm 0:0002c86c2220 249 typedef struct
bcostm 0:0002c86c2220 250 {
bcostm 0:0002c86c2220 251 int16_t X; /*!< geometric X position of drawing */
bcostm 0:0002c86c2220 252 int16_t Y; /*!< geometric Y position of drawing */
bcostm 0:0002c86c2220 253
bcostm 0:0002c86c2220 254 } Point;
bcostm 0:0002c86c2220 255
bcostm 0:0002c86c2220 256 /**
bcostm 0:0002c86c2220 257 * @brief Pointer on LCD Drawing point (pixel) geometric definition
bcostm 0:0002c86c2220 258 */
bcostm 0:0002c86c2220 259 typedef Point * pPoint;
bcostm 0:0002c86c2220 260
bcostm 0:0002c86c2220 261 /**
bcostm 0:0002c86c2220 262 * @brief LCD drawing Line alignment mode definitions
bcostm 0:0002c86c2220 263 */
bcostm 0:0002c86c2220 264 typedef enum
bcostm 0:0002c86c2220 265 {
bcostm 0:0002c86c2220 266 CENTER_MODE = 0x01, /*!< Center mode */
bcostm 0:0002c86c2220 267 RIGHT_MODE = 0x02, /*!< Right mode */
bcostm 0:0002c86c2220 268 LEFT_MODE = 0x03 /*!< Left mode */
bcostm 0:0002c86c2220 269
bcostm 0:0002c86c2220 270 } Text_AlignModeTypdef;
bcostm 0:0002c86c2220 271
bcostm 0:0002c86c2220 272
bcostm 0:0002c86c2220 273 /**
bcostm 0:0002c86c2220 274 * @brief LCD_OrientationTypeDef
bcostm 0:0002c86c2220 275 * Possible values of Display Orientation
bcostm 0:0002c86c2220 276 */
bcostm 0:0002c86c2220 277 typedef enum
bcostm 0:0002c86c2220 278 {
bcostm 0:0002c86c2220 279 LCD_ORIENTATION_PORTRAIT = 0x00, /*!< Portrait orientation choice of LCD screen */
bcostm 0:0002c86c2220 280 LCD_ORIENTATION_LANDSCAPE = 0x01, /*!< Landscape orientation choice of LCD screen */
bcostm 0:0002c86c2220 281 LCD_ORIENTATION_INVALID = 0x02 /*!< Invalid orientation choice of LCD screen */
bcostm 0:0002c86c2220 282 } LCD_OrientationTypeDef;
bcostm 0:0002c86c2220 283
bcostm 0:0002c86c2220 284 /**
bcostm 0:0002c86c2220 285 * @brief Possible values of
bcostm 0:0002c86c2220 286 * pixel data format (ie color coding) transmitted on DSI Data lane in DSI packets
bcostm 0:0002c86c2220 287 */
bcostm 0:0002c86c2220 288 typedef enum
bcostm 0:0002c86c2220 289 {
bcostm 0:0002c86c2220 290 LCD_DSI_PIXEL_DATA_FMT_RBG888 = 0x00, /*!< DSI packet pixel format chosen is RGB888 : 24 bpp */
bcostm 0:0002c86c2220 291 LCD_DSI_PIXEL_DATA_FMT_RBG565 = 0x02, /*!< DSI packet pixel format chosen is RGB565 : 16 bpp */
bcostm 0:0002c86c2220 292 LCD_DSI_PIXEL_DATA_FMT_INVALID = 0x03 /*!< Invalid DSI packet pixel format */
bcostm 0:0002c86c2220 293
bcostm 0:0002c86c2220 294 } LCD_DsiPixelDataFmtTypeDef;
bcostm 0:0002c86c2220 295
bcostm 0:0002c86c2220 296 /**
bcostm 0:0002c86c2220 297 * @}
bcostm 0:0002c86c2220 298 */
bcostm 0:0002c86c2220 299
bcostm 0:0002c86c2220 300 /** @defgroup STM32469I-Discovery_LCD_Exported_Macro STM32469I Discovery LCD Exported Macro
bcostm 0:0002c86c2220 301 * @{
bcostm 0:0002c86c2220 302 */
bcostm 0:0002c86c2220 303
bcostm 0:0002c86c2220 304 /** @defgroup STM32469I-Discovery_LCD_Exported_Functions STM32469I Discovery LCD Exported Functions
bcostm 0:0002c86c2220 305 * @{
bcostm 0:0002c86c2220 306 */
bcostm 0:0002c86c2220 307 void BSP_LCD_DMA2D_IRQHandler(void);
bcostm 0:0002c86c2220 308 void BSP_LCD_DSI_IRQHandler(void);
bcostm 0:0002c86c2220 309 void BSP_LCD_LTDC_IRQHandler(void);
bcostm 0:0002c86c2220 310 void BSP_LCD_LTDC_ER_IRQHandler(void);
bcostm 0:0002c86c2220 311
bcostm 0:0002c86c2220 312 uint8_t BSP_LCD_Init(void);
bcostm 0:0002c86c2220 313 uint8_t BSP_LCD_InitEx(LCD_OrientationTypeDef orientation);
bcostm 0:0002c86c2220 314
bcostm 0:0002c86c2220 315 void BSP_LCD_MspDeInit(void);
bcostm 0:0002c86c2220 316 void BSP_LCD_MspInit(void);
bcostm 0:0002c86c2220 317 void BSP_LCD_Reset(void);
bcostm 0:0002c86c2220 318
bcostm 0:0002c86c2220 319 uint32_t BSP_LCD_GetXSize(void);
bcostm 0:0002c86c2220 320 uint32_t BSP_LCD_GetYSize(void);
bcostm 0:0002c86c2220 321 void BSP_LCD_SetXSize(uint32_t imageWidthPixels);
bcostm 0:0002c86c2220 322 void BSP_LCD_SetYSize(uint32_t imageHeightPixels);
bcostm 0:0002c86c2220 323
bcostm 0:0002c86c2220 324 void BSP_LCD_LayerDefaultInit(uint16_t LayerIndex, uint32_t FB_Address);
bcostm 0:0002c86c2220 325 void BSP_LCD_SetTransparency(uint32_t LayerIndex, uint8_t Transparency);
bcostm 0:0002c86c2220 326 void BSP_LCD_SetLayerAddress(uint32_t LayerIndex, uint32_t Address);
bcostm 0:0002c86c2220 327 void BSP_LCD_SetColorKeying(uint32_t LayerIndex, uint32_t RGBValue);
bcostm 0:0002c86c2220 328 void BSP_LCD_ResetColorKeying(uint32_t LayerIndex);
bcostm 0:0002c86c2220 329 void BSP_LCD_SetLayerWindow(uint16_t LayerIndex, uint16_t Xpos, uint16_t Ypos, uint16_t Width, uint16_t Height);
bcostm 0:0002c86c2220 330
bcostm 0:0002c86c2220 331 void BSP_LCD_SelectLayer(uint32_t LayerIndex);
bcostm 0:0002c86c2220 332 void BSP_LCD_SetLayerVisible(uint32_t LayerIndex, FunctionalState State);
bcostm 0:0002c86c2220 333
bcostm 0:0002c86c2220 334 void BSP_LCD_SetTextColor(uint32_t Color);
bcostm 0:0002c86c2220 335 uint32_t BSP_LCD_GetTextColor(void);
bcostm 0:0002c86c2220 336 void BSP_LCD_SetBackColor(uint32_t Color);
bcostm 0:0002c86c2220 337 uint32_t BSP_LCD_GetBackColor(void);
bcostm 0:0002c86c2220 338 void BSP_LCD_SetFont(sFONT *fonts);
bcostm 0:0002c86c2220 339 sFONT *BSP_LCD_GetFont(void);
bcostm 0:0002c86c2220 340
bcostm 0:0002c86c2220 341 uint32_t BSP_LCD_ReadPixel(uint16_t Xpos, uint16_t Ypos);
bcostm 0:0002c86c2220 342 void BSP_LCD_DrawPixel(uint16_t Xpos, uint16_t Ypos, uint32_t pixel);
bcostm 0:0002c86c2220 343 void BSP_LCD_Clear(uint32_t Color);
bcostm 0:0002c86c2220 344 void BSP_LCD_ClearStringLine(uint32_t Line);
bcostm 0:0002c86c2220 345 void BSP_LCD_DisplayStringAtLine(uint16_t Line, uint8_t *ptr);
bcostm 0:0002c86c2220 346 void BSP_LCD_DisplayStringAt(uint16_t Xpos, uint16_t Ypos, uint8_t *Text, Text_AlignModeTypdef Mode);
bcostm 0:0002c86c2220 347 void BSP_LCD_DisplayChar(uint16_t Xpos, uint16_t Ypos, uint8_t Ascii);
bcostm 0:0002c86c2220 348
bcostm 0:0002c86c2220 349 void BSP_LCD_DrawHLine(uint16_t Xpos, uint16_t Ypos, uint16_t Length);
bcostm 0:0002c86c2220 350 void BSP_LCD_DrawVLine(uint16_t Xpos, uint16_t Ypos, uint16_t Length);
bcostm 0:0002c86c2220 351 void BSP_LCD_DrawLine(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2);
bcostm 0:0002c86c2220 352 void BSP_LCD_DrawRect(uint16_t Xpos, uint16_t Ypos, uint16_t Width, uint16_t Height);
bcostm 0:0002c86c2220 353 void BSP_LCD_DrawCircle(uint16_t Xpos, uint16_t Ypos, uint16_t Radius);
bcostm 0:0002c86c2220 354 void BSP_LCD_DrawPolygon(pPoint Points, uint16_t PointCount);
bcostm 0:0002c86c2220 355 void BSP_LCD_DrawEllipse(int Xpos, int Ypos, int XRadius, int YRadius);
bcostm 0:0002c86c2220 356 void BSP_LCD_DrawBitmap(uint32_t Xpos, uint32_t Ypos, uint8_t *pbmp);
bcostm 0:0002c86c2220 357
bcostm 0:0002c86c2220 358 void BSP_LCD_FillRect(uint16_t Xpos, uint16_t Ypos, uint16_t Width, uint16_t Height);
bcostm 0:0002c86c2220 359 void BSP_LCD_FillCircle(uint16_t Xpos, uint16_t Ypos, uint16_t Radius);
bcostm 0:0002c86c2220 360 void BSP_LCD_FillPolygon(pPoint Points, uint16_t PointCount);
bcostm 0:0002c86c2220 361 void BSP_LCD_FillEllipse(int Xpos, int Ypos, int XRadius, int YRadius);
bcostm 0:0002c86c2220 362
bcostm 0:0002c86c2220 363 void BSP_LCD_DisplayOff(void);
bcostm 0:0002c86c2220 364 void BSP_LCD_DisplayOn(void);
bcostm 0:0002c86c2220 365
bcostm 0:0002c86c2220 366 /**
bcostm 0:0002c86c2220 367 * @}
bcostm 0:0002c86c2220 368 */
bcostm 0:0002c86c2220 369
bcostm 0:0002c86c2220 370 /** @defgroup STM32469I-EVAL_LCD_Exported_Variables STM32469I EVAL LCD Exported Variables
bcostm 0:0002c86c2220 371 * @{
bcostm 0:0002c86c2220 372 */
bcostm 0:0002c86c2220 373
bcostm 0:0002c86c2220 374 /* @brief DMA2D handle variable */
bcostm 0:0002c86c2220 375 extern DMA2D_HandleTypeDef hdma2d_eval;
bcostm 0:0002c86c2220 376
bcostm 0:0002c86c2220 377 /**
bcostm 0:0002c86c2220 378 * @}
bcostm 0:0002c86c2220 379 */
bcostm 0:0002c86c2220 380
bcostm 0:0002c86c2220 381 /** @defgroup STM32469I-Discovery_LCD_Exported_Variables STM32469I Discovery LCD Exported Variables
bcostm 0:0002c86c2220 382 * @{
bcostm 0:0002c86c2220 383 */
bcostm 0:0002c86c2220 384
bcostm 0:0002c86c2220 385 /**
bcostm 0:0002c86c2220 386 * @}
bcostm 0:0002c86c2220 387 */
bcostm 0:0002c86c2220 388
bcostm 0:0002c86c2220 389 /**
bcostm 0:0002c86c2220 390 * @}
bcostm 0:0002c86c2220 391 */
bcostm 0:0002c86c2220 392
bcostm 0:0002c86c2220 393 /**
bcostm 0:0002c86c2220 394 * @}
bcostm 0:0002c86c2220 395 */
bcostm 0:0002c86c2220 396
bcostm 0:0002c86c2220 397 /**
bcostm 0:0002c86c2220 398 * @}
bcostm 0:0002c86c2220 399 */
bcostm 0:0002c86c2220 400
bcostm 0:0002c86c2220 401 /**
bcostm 0:0002c86c2220 402 * @}
bcostm 0:0002c86c2220 403 */
bcostm 0:0002c86c2220 404
bcostm 0:0002c86c2220 405 #ifdef __cplusplus
bcostm 0:0002c86c2220 406 }
bcostm 0:0002c86c2220 407 #endif
bcostm 0:0002c86c2220 408
bcostm 0:0002c86c2220 409 #endif /* __STM32469I_DISCOVERY_LCD_H */
bcostm 0:0002c86c2220 410
bcostm 0:0002c86c2220 411 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/