STM32F479xx HAL User Manual
Data Structures | Defines | Typedefs | Enumerations | Functions
stm32f4xx_hal_ltdc.h File Reference

Header file of LTDC HAL module. More...

#include "stm32f4xx_hal_def.h"
#include "stm32f4xx_hal_ltdc_ex.h"

Go to the source code of this file.

Data Structures

struct  LTDC_ColorTypeDef
 LTDC color structure definition. More...
struct  LTDC_InitTypeDef
 LTDC Init structure definition. More...
struct  LTDC_LayerCfgTypeDef
 LTDC Layer structure definition. More...
struct  __LTDC_HandleTypeDef
 LTDC handle Structure definition. More...

Defines

#define MAX_LAYER   2U
#define HAL_LTDC_ERROR_NONE   0x00000000U
#define HAL_LTDC_ERROR_TE   0x00000001U
#define HAL_LTDC_ERROR_FU   0x00000002U
#define HAL_LTDC_ERROR_TIMEOUT   0x00000020U
#define HAL_LTDC_ERROR_INVALID_CALLBACK   0x00000040U
#define LTDC_LAYER_1   0x00000000U
#define LTDC_LAYER_2   0x00000001U
#define LTDC_HSPOLARITY_AL   0x00000000U
#define LTDC_HSPOLARITY_AH   LTDC_GCR_HSPOL
#define LTDC_VSPOLARITY_AL   0x00000000U
#define LTDC_VSPOLARITY_AH   LTDC_GCR_VSPOL
#define LTDC_DEPOLARITY_AL   0x00000000U
#define LTDC_DEPOLARITY_AH   LTDC_GCR_DEPOL
#define LTDC_PCPOLARITY_IPC   0x00000000U
#define LTDC_PCPOLARITY_IIPC   LTDC_GCR_PCPOL
#define LTDC_HORIZONTALSYNC   (LTDC_SSCR_HSW >> 16U)
#define LTDC_VERTICALSYNC   LTDC_SSCR_VSH
#define LTDC_COLOR   0x000000FFU
#define LTDC_BLENDING_FACTOR1_CA   0x00000400U
#define LTDC_BLENDING_FACTOR1_PAxCA   0x00000600U
#define LTDC_BLENDING_FACTOR2_CA   0x00000005U
#define LTDC_BLENDING_FACTOR2_PAxCA   0x00000007U
#define LTDC_PIXEL_FORMAT_ARGB8888   0x00000000U
#define LTDC_PIXEL_FORMAT_RGB888   0x00000001U
#define LTDC_PIXEL_FORMAT_RGB565   0x00000002U
#define LTDC_PIXEL_FORMAT_ARGB1555   0x00000003U
#define LTDC_PIXEL_FORMAT_ARGB4444   0x00000004U
#define LTDC_PIXEL_FORMAT_L8   0x00000005U
#define LTDC_PIXEL_FORMAT_AL44   0x00000006U
#define LTDC_PIXEL_FORMAT_AL88   0x00000007U
#define LTDC_ALPHA   LTDC_LxCACR_CONSTA
#define LTDC_STOPPOSITION   (LTDC_LxWHPCR_WHSPPOS >> 16U)
#define LTDC_STARTPOSITION   LTDC_LxWHPCR_WHSTPOS
#define LTDC_COLOR_FRAME_BUFFER   LTDC_LxCFBLR_CFBLL
#define LTDC_LINE_NUMBER   LTDC_LxCFBLNR_CFBLNBR
#define LTDC_IT_LI   LTDC_IER_LIE
#define LTDC_IT_FU   LTDC_IER_FUIE
#define LTDC_IT_TE   LTDC_IER_TERRIE
#define LTDC_IT_RR   LTDC_IER_RRIE
#define LTDC_FLAG_LI   LTDC_ISR_LIF
#define LTDC_FLAG_FU   LTDC_ISR_FUIF
#define LTDC_FLAG_TE   LTDC_ISR_TERRIF
#define LTDC_FLAG_RR   LTDC_ISR_RRIF
#define LTDC_RELOAD_IMMEDIATE   LTDC_SRCR_IMR
#define LTDC_RELOAD_VERTICAL_BLANKING   LTDC_SRCR_VBR
#define __HAL_LTDC_RESET_HANDLE_STATE(__HANDLE__)
 Reset LTDC handle state.
#define __HAL_LTDC_ENABLE(__HANDLE__)   ((__HANDLE__)->Instance->GCR |= LTDC_GCR_LTDCEN)
 Enable the LTDC.
#define __HAL_LTDC_DISABLE(__HANDLE__)   ((__HANDLE__)->Instance->GCR &= ~(LTDC_GCR_LTDCEN))
 Disable the LTDC.
#define __HAL_LTDC_LAYER_ENABLE(__HANDLE__, __LAYER__)   ((LTDC_LAYER((__HANDLE__), (__LAYER__)))->CR |= (uint32_t)LTDC_LxCR_LEN)
 Enable the LTDC Layer.
#define __HAL_LTDC_LAYER_DISABLE(__HANDLE__, __LAYER__)   ((LTDC_LAYER((__HANDLE__), (__LAYER__)))->CR &= ~(uint32_t)LTDC_LxCR_LEN)
 Disable the LTDC Layer.
#define __HAL_LTDC_RELOAD_IMMEDIATE_CONFIG(__HANDLE__)   ((__HANDLE__)->Instance->SRCR |= LTDC_SRCR_IMR)
 Reload immediately all LTDC Layers.
#define __HAL_LTDC_VERTICAL_BLANKING_RELOAD_CONFIG(__HANDLE__)   ((__HANDLE__)->Instance->SRCR |= LTDC_SRCR_VBR)
 Reload during vertical blanking period all LTDC Layers.
#define __HAL_LTDC_GET_FLAG(__HANDLE__, __FLAG__)   ((__HANDLE__)->Instance->ISR & (__FLAG__))
 Get the LTDC pending flags.
#define __HAL_LTDC_CLEAR_FLAG(__HANDLE__, __FLAG__)   ((__HANDLE__)->Instance->ICR = (__FLAG__))
 Clears the LTDC pending flags.
#define __HAL_LTDC_ENABLE_IT(__HANDLE__, __INTERRUPT__)   ((__HANDLE__)->Instance->IER |= (__INTERRUPT__))
 Enables the specified LTDC interrupts.
#define __HAL_LTDC_DISABLE_IT(__HANDLE__, __INTERRUPT__)   ((__HANDLE__)->Instance->IER &= ~(__INTERRUPT__))
 Disables the specified LTDC interrupts.
#define __HAL_LTDC_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__)   ((__HANDLE__)->Instance->IER & (__INTERRUPT__))
 Check whether the specified LTDC interrupt has occurred or not.
#define LTDC_LAYER(__HANDLE__, __LAYER__)   ((LTDC_Layer_TypeDef *)((uint32_t)(((uint32_t)((__HANDLE__)->Instance)) + 0x84U + (0x80U*(__LAYER__)))))
#define IS_LTDC_LAYER(__LAYER__)   ((__LAYER__) < MAX_LAYER)
#define IS_LTDC_HSPOL(__HSPOL__)   (((__HSPOL__) == LTDC_HSPOLARITY_AL) || ((__HSPOL__) == LTDC_HSPOLARITY_AH))
#define IS_LTDC_VSPOL(__VSPOL__)   (((__VSPOL__) == LTDC_VSPOLARITY_AL) || ((__VSPOL__) == LTDC_VSPOLARITY_AH))
#define IS_LTDC_DEPOL(__DEPOL__)   (((__DEPOL__) == LTDC_DEPOLARITY_AL) || ((__DEPOL__) == LTDC_DEPOLARITY_AH))
#define IS_LTDC_PCPOL(__PCPOL__)   (((__PCPOL__) == LTDC_PCPOLARITY_IPC) || ((__PCPOL__) == LTDC_PCPOLARITY_IIPC))
#define IS_LTDC_HSYNC(__HSYNC__)   ((__HSYNC__) <= LTDC_HORIZONTALSYNC)
#define IS_LTDC_VSYNC(__VSYNC__)   ((__VSYNC__) <= LTDC_VERTICALSYNC)
#define IS_LTDC_AHBP(__AHBP__)   ((__AHBP__) <= LTDC_HORIZONTALSYNC)
#define IS_LTDC_AVBP(__AVBP__)   ((__AVBP__) <= LTDC_VERTICALSYNC)
#define IS_LTDC_AAW(__AAW__)   ((__AAW__) <= LTDC_HORIZONTALSYNC)
#define IS_LTDC_AAH(__AAH__)   ((__AAH__) <= LTDC_VERTICALSYNC)
#define IS_LTDC_TOTALW(__TOTALW__)   ((__TOTALW__) <= LTDC_HORIZONTALSYNC)
#define IS_LTDC_TOTALH(__TOTALH__)   ((__TOTALH__) <= LTDC_VERTICALSYNC)
#define IS_LTDC_BLUEVALUE(__BBLUE__)   ((__BBLUE__) <= LTDC_COLOR)
#define IS_LTDC_GREENVALUE(__BGREEN__)   ((__BGREEN__) <= LTDC_COLOR)
#define IS_LTDC_REDVALUE(__BRED__)   ((__BRED__) <= LTDC_COLOR)
#define IS_LTDC_BLENDING_FACTOR1(__BLENDING_FACTOR1__)
#define IS_LTDC_BLENDING_FACTOR2(__BLENDING_FACTOR1__)
#define IS_LTDC_PIXEL_FORMAT(__PIXEL_FORMAT__)
#define IS_LTDC_ALPHA(__ALPHA__)   ((__ALPHA__) <= LTDC_ALPHA)
#define IS_LTDC_HCONFIGST(__HCONFIGST__)   ((__HCONFIGST__) <= LTDC_STARTPOSITION)
#define IS_LTDC_HCONFIGSP(__HCONFIGSP__)   ((__HCONFIGSP__) <= LTDC_STOPPOSITION)
#define IS_LTDC_VCONFIGST(__VCONFIGST__)   ((__VCONFIGST__) <= LTDC_STARTPOSITION)
#define IS_LTDC_VCONFIGSP(__VCONFIGSP__)   ((__VCONFIGSP__) <= LTDC_STOPPOSITION)
#define IS_LTDC_CFBP(__CFBP__)   ((__CFBP__) <= LTDC_COLOR_FRAME_BUFFER)
#define IS_LTDC_CFBLL(__CFBLL__)   ((__CFBLL__) <= LTDC_COLOR_FRAME_BUFFER)
#define IS_LTDC_CFBLNBR(__CFBLNBR__)   ((__CFBLNBR__) <= LTDC_LINE_NUMBER)
#define IS_LTDC_LIPOS(__LIPOS__)   ((__LIPOS__) <= 0x7FFU)
#define IS_LTDC_RELOAD(__RELOADTYPE__)   (((__RELOADTYPE__) == LTDC_RELOAD_IMMEDIATE) || ((__RELOADTYPE__) == LTDC_RELOAD_VERTICAL_BLANKING))

Typedefs

typedef struct __LTDC_HandleTypeDef LTDC_HandleTypeDef
 LTDC handle Structure definition.
typedef void(* pLTDC_CallbackTypeDef )(LTDC_HandleTypeDef *hltdc)
 HAL LTDC Callback pointer definition.

Enumerations

enum  HAL_LTDC_StateTypeDef {
  HAL_LTDC_STATE_RESET = 0x00U, HAL_LTDC_STATE_READY = 0x01U, HAL_LTDC_STATE_BUSY = 0x02U, HAL_LTDC_STATE_TIMEOUT = 0x03U,
  HAL_LTDC_STATE_ERROR = 0x04U
}
 HAL LTDC State structures definition. More...
enum  HAL_LTDC_CallbackIDTypeDef {
  HAL_LTDC_MSPINIT_CB_ID = 0x00U, HAL_LTDC_MSPDEINIT_CB_ID = 0x01U, HAL_LTDC_LINE_EVENT_CB_ID = 0x02U, HAL_LTDC_RELOAD_EVENT_CB_ID = 0x03U,
  HAL_LTDC_ERROR_CB_ID = 0x04U
}
 HAL LTDC Callback ID enumeration definition. More...

Functions

HAL_StatusTypeDef HAL_LTDC_Init (LTDC_HandleTypeDef *hltdc)
 Initialize the LTDC according to the specified parameters in the LTDC_InitTypeDef.
HAL_StatusTypeDef HAL_LTDC_DeInit (LTDC_HandleTypeDef *hltdc)
 De-initialize the LTDC peripheral.
__weak void HAL_LTDC_MspInit (LTDC_HandleTypeDef *hltdc)
 Initialize the LTDC MSP.
__weak void HAL_LTDC_MspDeInit (LTDC_HandleTypeDef *hltdc)
 De-initialize the LTDC MSP.
void HAL_LTDC_ErrorCallback (LTDC_HandleTypeDef *hltdc)
 Error LTDC callback.
void HAL_LTDC_LineEventCallback (LTDC_HandleTypeDef *hltdc)
 Line Event callback.
void HAL_LTDC_ReloadEventCallback (LTDC_HandleTypeDef *hltdc)
 Reload Event callback.
HAL_StatusTypeDef HAL_LTDC_RegisterCallback (LTDC_HandleTypeDef *hltdc, HAL_LTDC_CallbackIDTypeDef CallbackID, pLTDC_CallbackTypeDef pCallback)
 Register a User LTDC Callback To be used instead of the weak predefined callback.
HAL_StatusTypeDef HAL_LTDC_UnRegisterCallback (LTDC_HandleTypeDef *hltdc, HAL_LTDC_CallbackIDTypeDef CallbackID)
 Unregister an LTDC Callback LTDC callabck is redirected to the weak predefined callback.
void HAL_LTDC_IRQHandler (LTDC_HandleTypeDef *hltdc)
 Handle LTDC interrupt request.
HAL_StatusTypeDef HAL_LTDC_ConfigLayer (LTDC_HandleTypeDef *hltdc, LTDC_LayerCfgTypeDef *pLayerCfg, uint32_t LayerIdx)
 Configure the LTDC Layer according to the specified parameters in the LTDC_InitTypeDef and create the associated handle.
HAL_StatusTypeDef HAL_LTDC_SetWindowSize (LTDC_HandleTypeDef *hltdc, uint32_t XSize, uint32_t YSize, uint32_t LayerIdx)
 Set the LTDC window size.
HAL_StatusTypeDef HAL_LTDC_SetWindowPosition (LTDC_HandleTypeDef *hltdc, uint32_t X0, uint32_t Y0, uint32_t LayerIdx)
 Set the LTDC window position.
HAL_StatusTypeDef HAL_LTDC_SetPixelFormat (LTDC_HandleTypeDef *hltdc, uint32_t Pixelformat, uint32_t LayerIdx)
 Reconfigure the pixel format.
HAL_StatusTypeDef HAL_LTDC_SetAlpha (LTDC_HandleTypeDef *hltdc, uint32_t Alpha, uint32_t LayerIdx)
 Reconfigure the layer alpha value.
HAL_StatusTypeDef HAL_LTDC_SetAddress (LTDC_HandleTypeDef *hltdc, uint32_t Address, uint32_t LayerIdx)
 Reconfigure the frame buffer Address.
HAL_StatusTypeDef HAL_LTDC_SetPitch (LTDC_HandleTypeDef *hltdc, uint32_t LinePitchInPixels, uint32_t LayerIdx)
 Function used to reconfigure the pitch for specific cases where the attached LayerIdx buffer have a width that is larger than the one intended to be displayed on screen.
HAL_StatusTypeDef HAL_LTDC_ConfigColorKeying (LTDC_HandleTypeDef *hltdc, uint32_t RGBValue, uint32_t LayerIdx)
 Configure the color keying.
HAL_StatusTypeDef HAL_LTDC_ConfigCLUT (LTDC_HandleTypeDef *hltdc, uint32_t *pCLUT, uint32_t CLUTSize, uint32_t LayerIdx)
 Load the color lookup table.
HAL_StatusTypeDef HAL_LTDC_EnableColorKeying (LTDC_HandleTypeDef *hltdc, uint32_t LayerIdx)
 Enable the color keying.
HAL_StatusTypeDef HAL_LTDC_DisableColorKeying (LTDC_HandleTypeDef *hltdc, uint32_t LayerIdx)
 Disable the color keying.
HAL_StatusTypeDef HAL_LTDC_EnableCLUT (LTDC_HandleTypeDef *hltdc, uint32_t LayerIdx)
 Enable the color lookup table.
HAL_StatusTypeDef HAL_LTDC_DisableCLUT (LTDC_HandleTypeDef *hltdc, uint32_t LayerIdx)
 Disable the color lookup table.
HAL_StatusTypeDef HAL_LTDC_ProgramLineEvent (LTDC_HandleTypeDef *hltdc, uint32_t Line)
 Define the position of the line interrupt.
HAL_StatusTypeDef HAL_LTDC_EnableDither (LTDC_HandleTypeDef *hltdc)
 Enable Dither.
HAL_StatusTypeDef HAL_LTDC_DisableDither (LTDC_HandleTypeDef *hltdc)
 Disable Dither.
HAL_StatusTypeDef HAL_LTDC_Reload (LTDC_HandleTypeDef *hltdc, uint32_t ReloadType)
 Reload LTDC Layers configuration.
HAL_StatusTypeDef HAL_LTDC_ConfigLayer_NoReload (LTDC_HandleTypeDef *hltdc, LTDC_LayerCfgTypeDef *pLayerCfg, uint32_t LayerIdx)
 Configure the LTDC Layer according to the specified without reloading parameters in the LTDC_InitTypeDef and create the associated handle.
HAL_StatusTypeDef HAL_LTDC_SetWindowSize_NoReload (LTDC_HandleTypeDef *hltdc, uint32_t XSize, uint32_t YSize, uint32_t LayerIdx)
 Set the LTDC window size without reloading.
HAL_StatusTypeDef HAL_LTDC_SetWindowPosition_NoReload (LTDC_HandleTypeDef *hltdc, uint32_t X0, uint32_t Y0, uint32_t LayerIdx)
 Set the LTDC window position without reloading.
HAL_StatusTypeDef HAL_LTDC_SetPixelFormat_NoReload (LTDC_HandleTypeDef *hltdc, uint32_t Pixelformat, uint32_t LayerIdx)
 Reconfigure the pixel format without reloading.
HAL_StatusTypeDef HAL_LTDC_SetAlpha_NoReload (LTDC_HandleTypeDef *hltdc, uint32_t Alpha, uint32_t LayerIdx)
 Reconfigure the layer alpha value without reloading.
HAL_StatusTypeDef HAL_LTDC_SetAddress_NoReload (LTDC_HandleTypeDef *hltdc, uint32_t Address, uint32_t LayerIdx)
 Reconfigure the frame buffer Address without reloading.
HAL_StatusTypeDef HAL_LTDC_SetPitch_NoReload (LTDC_HandleTypeDef *hltdc, uint32_t LinePitchInPixels, uint32_t LayerIdx)
 Function used to reconfigure the pitch for specific cases where the attached LayerIdx buffer have a width that is larger than the one intended to be displayed on screen.
HAL_StatusTypeDef HAL_LTDC_ConfigColorKeying_NoReload (LTDC_HandleTypeDef *hltdc, uint32_t RGBValue, uint32_t LayerIdx)
 Configure the color keying without reloading.
HAL_StatusTypeDef HAL_LTDC_EnableColorKeying_NoReload (LTDC_HandleTypeDef *hltdc, uint32_t LayerIdx)
 Enable the color keying without reloading.
HAL_StatusTypeDef HAL_LTDC_DisableColorKeying_NoReload (LTDC_HandleTypeDef *hltdc, uint32_t LayerIdx)
 Disable the color keying without reloading.
HAL_StatusTypeDef HAL_LTDC_EnableCLUT_NoReload (LTDC_HandleTypeDef *hltdc, uint32_t LayerIdx)
 Enable the color lookup table without reloading.
HAL_StatusTypeDef HAL_LTDC_DisableCLUT_NoReload (LTDC_HandleTypeDef *hltdc, uint32_t LayerIdx)
 Disable the color lookup table without reloading.
HAL_LTDC_StateTypeDef HAL_LTDC_GetState (LTDC_HandleTypeDef *hltdc)
 Return the LTDC handle state.
uint32_t HAL_LTDC_GetError (LTDC_HandleTypeDef *hltdc)
 Return the LTDC handle error code.

Detailed Description

Header file of LTDC HAL module.

Author:
MCD Application Team
Attention:

© Copyright (c) 2016 STMicroelectronics. All rights reserved.

This software component is licensed by ST under BSD 3-Clause license, the "License"; You may not use this file except in compliance with the License. You may obtain a copy of the License at: opensource.org/licenses/BSD-3-Clause

Definition in file stm32f4xx_hal_ltdc.h.