Initial commit

Dependencies:   FastPWM

Committer:
lypinator
Date:
Wed Sep 16 01:11:49 2020 +0000
Revision:
0:bb348c97df44
Added PWM

Who changed what in which revision?

UserRevisionLine numberNew contents of line
lypinator 0:bb348c97df44 1 /**
lypinator 0:bb348c97df44 2 ******************************************************************************
lypinator 0:bb348c97df44 3 * @file stm32f4xx_ll_dma2d.h
lypinator 0:bb348c97df44 4 * @author MCD Application Team
lypinator 0:bb348c97df44 5 * @brief Header file of DMA2D LL module.
lypinator 0:bb348c97df44 6 ******************************************************************************
lypinator 0:bb348c97df44 7 * @attention
lypinator 0:bb348c97df44 8 *
lypinator 0:bb348c97df44 9 * <h2><center>&copy; COPYRIGHT(c) 2017 STMicroelectronics</center></h2>
lypinator 0:bb348c97df44 10 *
lypinator 0:bb348c97df44 11 * Redistribution and use in source and binary forms, with or without modification,
lypinator 0:bb348c97df44 12 * are permitted provided that the following conditions are met:
lypinator 0:bb348c97df44 13 * 1. Redistributions of source code must retain the above copyright notice,
lypinator 0:bb348c97df44 14 * this list of conditions and the following disclaimer.
lypinator 0:bb348c97df44 15 * 2. Redistributions in binary form must reproduce the above copyright notice,
lypinator 0:bb348c97df44 16 * this list of conditions and the following disclaimer in the documentation
lypinator 0:bb348c97df44 17 * and/or other materials provided with the distribution.
lypinator 0:bb348c97df44 18 * 3. Neither the name of STMicroelectronics nor the names of its contributors
lypinator 0:bb348c97df44 19 * may be used to endorse or promote products derived from this software
lypinator 0:bb348c97df44 20 * without specific prior written permission.
lypinator 0:bb348c97df44 21 *
lypinator 0:bb348c97df44 22 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
lypinator 0:bb348c97df44 23 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
lypinator 0:bb348c97df44 24 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
lypinator 0:bb348c97df44 25 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
lypinator 0:bb348c97df44 26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
lypinator 0:bb348c97df44 27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
lypinator 0:bb348c97df44 28 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
lypinator 0:bb348c97df44 29 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
lypinator 0:bb348c97df44 30 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
lypinator 0:bb348c97df44 31 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
lypinator 0:bb348c97df44 32 *
lypinator 0:bb348c97df44 33 ******************************************************************************
lypinator 0:bb348c97df44 34 */
lypinator 0:bb348c97df44 35
lypinator 0:bb348c97df44 36 /* Define to prevent recursive inclusion -------------------------------------*/
lypinator 0:bb348c97df44 37 #ifndef __STM32F4xx_LL_DMA2D_H
lypinator 0:bb348c97df44 38 #define __STM32F4xx_LL_DMA2D_H
lypinator 0:bb348c97df44 39
lypinator 0:bb348c97df44 40 #ifdef __cplusplus
lypinator 0:bb348c97df44 41 extern "C" {
lypinator 0:bb348c97df44 42 #endif
lypinator 0:bb348c97df44 43
lypinator 0:bb348c97df44 44 /* Includes ------------------------------------------------------------------*/
lypinator 0:bb348c97df44 45 #include "stm32f4xx.h"
lypinator 0:bb348c97df44 46
lypinator 0:bb348c97df44 47 /** @addtogroup STM32F4xx_LL_Driver
lypinator 0:bb348c97df44 48 * @{
lypinator 0:bb348c97df44 49 */
lypinator 0:bb348c97df44 50
lypinator 0:bb348c97df44 51 #if defined (DMA2D)
lypinator 0:bb348c97df44 52
lypinator 0:bb348c97df44 53 /** @defgroup DMA2D_LL DMA2D
lypinator 0:bb348c97df44 54 * @{
lypinator 0:bb348c97df44 55 */
lypinator 0:bb348c97df44 56
lypinator 0:bb348c97df44 57 /* Private types -------------------------------------------------------------*/
lypinator 0:bb348c97df44 58 /* Private variables ---------------------------------------------------------*/
lypinator 0:bb348c97df44 59 /* Private constants ---------------------------------------------------------*/
lypinator 0:bb348c97df44 60 /* Private macros ------------------------------------------------------------*/
lypinator 0:bb348c97df44 61 #if defined(USE_FULL_LL_DRIVER)
lypinator 0:bb348c97df44 62 /** @defgroup DMA2D_LL_Private_Macros DMA2D Private Macros
lypinator 0:bb348c97df44 63 * @{
lypinator 0:bb348c97df44 64 */
lypinator 0:bb348c97df44 65
lypinator 0:bb348c97df44 66 /**
lypinator 0:bb348c97df44 67 * @}
lypinator 0:bb348c97df44 68 */
lypinator 0:bb348c97df44 69 #endif /*USE_FULL_LL_DRIVER*/
lypinator 0:bb348c97df44 70
lypinator 0:bb348c97df44 71 /* Exported types ------------------------------------------------------------*/
lypinator 0:bb348c97df44 72 #if defined(USE_FULL_LL_DRIVER)
lypinator 0:bb348c97df44 73 /** @defgroup DMA2D_LL_ES_Init_Struct DMA2D Exported Init structures
lypinator 0:bb348c97df44 74 * @{
lypinator 0:bb348c97df44 75 */
lypinator 0:bb348c97df44 76
lypinator 0:bb348c97df44 77 /**
lypinator 0:bb348c97df44 78 * @brief LL DMA2D Init Structure Definition
lypinator 0:bb348c97df44 79 */
lypinator 0:bb348c97df44 80 typedef struct
lypinator 0:bb348c97df44 81 {
lypinator 0:bb348c97df44 82 uint32_t Mode; /*!< Specifies the DMA2D transfer mode.
lypinator 0:bb348c97df44 83 - This parameter can be one value of @ref DMA2D_LL_EC_MODE.
lypinator 0:bb348c97df44 84
lypinator 0:bb348c97df44 85 This parameter can be modified afterwards using unitary function @ref LL_DMA2D_SetMode().*/
lypinator 0:bb348c97df44 86
lypinator 0:bb348c97df44 87 uint32_t ColorMode; /*!< Specifies the color format of the output image.
lypinator 0:bb348c97df44 88 - This parameter can be one value of @ref DMA2D_LL_EC_OUTPUT_COLOR_MODE.
lypinator 0:bb348c97df44 89
lypinator 0:bb348c97df44 90 This parameter can be modified afterwards using unitary function @ref LL_DMA2D_SetOutputColorMode(). */
lypinator 0:bb348c97df44 91
lypinator 0:bb348c97df44 92 uint32_t OutputBlue; /*!< Specifies the Blue value of the output image.
lypinator 0:bb348c97df44 93 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF if ARGB8888 color mode is selected.
lypinator 0:bb348c97df44 94 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF if RGB888 color mode is selected.
lypinator 0:bb348c97df44 95 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x1F if RGB565 color mode is selected.
lypinator 0:bb348c97df44 96 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x1F if ARGB1555 color mode is selected.
lypinator 0:bb348c97df44 97 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x0F if ARGB4444 color mode is selected.
lypinator 0:bb348c97df44 98
lypinator 0:bb348c97df44 99 This parameter can be modified afterwards using unitary function @ref LL_DMA2D_SetOutputColor() or configuration
lypinator 0:bb348c97df44 100 function @ref LL_DMA2D_ConfigOutputColor(). */
lypinator 0:bb348c97df44 101
lypinator 0:bb348c97df44 102 uint32_t OutputGreen; /*!< Specifies the Green value of the output image.
lypinator 0:bb348c97df44 103 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF if ARGB8888 color mode is selected.
lypinator 0:bb348c97df44 104 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF if RGB888 color mode is selected.
lypinator 0:bb348c97df44 105 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x3F if RGB565 color mode is selected.
lypinator 0:bb348c97df44 106 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x1F if ARGB1555 color mode is selected.
lypinator 0:bb348c97df44 107 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x0F if ARGB4444 color mode is selected.
lypinator 0:bb348c97df44 108
lypinator 0:bb348c97df44 109 This parameter can be modified afterwards using unitary function @ref LL_DMA2D_SetOutputColor() or configuration
lypinator 0:bb348c97df44 110 function @ref LL_DMA2D_ConfigOutputColor(). */
lypinator 0:bb348c97df44 111
lypinator 0:bb348c97df44 112 uint32_t OutputRed; /*!< Specifies the Red value of the output image.
lypinator 0:bb348c97df44 113 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF if ARGB8888 color mode is selected.
lypinator 0:bb348c97df44 114 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF if RGB888 color mode is selected.
lypinator 0:bb348c97df44 115 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x1F if RGB565 color mode is selected.
lypinator 0:bb348c97df44 116 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x1F if ARGB1555 color mode is selected.
lypinator 0:bb348c97df44 117 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x0F if ARGB4444 color mode is selected.
lypinator 0:bb348c97df44 118
lypinator 0:bb348c97df44 119 This parameter can be modified afterwards using unitary function @ref LL_DMA2D_SetOutputColor() or configuration
lypinator 0:bb348c97df44 120 function @ref LL_DMA2D_ConfigOutputColor(). */
lypinator 0:bb348c97df44 121
lypinator 0:bb348c97df44 122 uint32_t OutputAlpha; /*!< Specifies the Alpha channel of the output image.
lypinator 0:bb348c97df44 123 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF if ARGB8888 color mode is selected.
lypinator 0:bb348c97df44 124 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x01 if ARGB1555 color mode is selected.
lypinator 0:bb348c97df44 125 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x0F if ARGB4444 color mode is selected.
lypinator 0:bb348c97df44 126 - This parameter is not considered if RGB888 or RGB565 color mode is selected.
lypinator 0:bb348c97df44 127
lypinator 0:bb348c97df44 128 This parameter can be modified afterwards using unitary function @ref LL_DMA2D_SetOutputColor() or configuration
lypinator 0:bb348c97df44 129 function @ref LL_DMA2D_ConfigOutputColor(). */
lypinator 0:bb348c97df44 130
lypinator 0:bb348c97df44 131 uint32_t OutputMemoryAddress; /*!< Specifies the memory address.
lypinator 0:bb348c97df44 132 - This parameter must be a number between Min_Data = 0x0000 and Max_Data = 0xFFFFFFFF.
lypinator 0:bb348c97df44 133
lypinator 0:bb348c97df44 134 This parameter can be modified afterwards using unitary function @ref LL_DMA2D_SetOutputMemAddr(). */
lypinator 0:bb348c97df44 135
lypinator 0:bb348c97df44 136 uint32_t LineOffset; /*!< Specifies the output line offset value.
lypinator 0:bb348c97df44 137 - This parameter must be a number between Min_Data = 0x0000 and Max_Data = 0x3FFF.
lypinator 0:bb348c97df44 138
lypinator 0:bb348c97df44 139 This parameter can be modified afterwards using unitary function @ref LL_DMA2D_SetLineOffset(). */
lypinator 0:bb348c97df44 140
lypinator 0:bb348c97df44 141 uint32_t NbrOfLines; /*!< Specifies the number of lines of the area to be transferred.
lypinator 0:bb348c97df44 142 - This parameter must be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF.
lypinator 0:bb348c97df44 143
lypinator 0:bb348c97df44 144 This parameter can be modified afterwards using unitary function @ref LL_DMA2D_SetNbrOfLines(). */
lypinator 0:bb348c97df44 145
lypinator 0:bb348c97df44 146 uint32_t NbrOfPixelsPerLines; /*!< Specifies the number of pixels per lines of the area to be transfered.
lypinator 0:bb348c97df44 147 - This parameter must be a number between Min_Data = 0x0000 and Max_Data = 0x3FFF.
lypinator 0:bb348c97df44 148
lypinator 0:bb348c97df44 149 This parameter can be modified afterwards using unitary function @ref LL_DMA2D_SetNbrOfPixelsPerLines(). */
lypinator 0:bb348c97df44 150
lypinator 0:bb348c97df44 151 } LL_DMA2D_InitTypeDef;
lypinator 0:bb348c97df44 152
lypinator 0:bb348c97df44 153 /**
lypinator 0:bb348c97df44 154 * @brief LL DMA2D Layer Configuration Structure Definition
lypinator 0:bb348c97df44 155 */
lypinator 0:bb348c97df44 156 typedef struct
lypinator 0:bb348c97df44 157 {
lypinator 0:bb348c97df44 158 uint32_t MemoryAddress; /*!< Specifies the foreground or background memory address.
lypinator 0:bb348c97df44 159 - This parameter must be a number between Min_Data = 0x0000 and Max_Data = 0xFFFFFFFF.
lypinator 0:bb348c97df44 160
lypinator 0:bb348c97df44 161 This parameter can be modified afterwards using unitary functions
lypinator 0:bb348c97df44 162 - @ref LL_DMA2D_FGND_SetMemAddr() for foreground layer,
lypinator 0:bb348c97df44 163 - @ref LL_DMA2D_BGND_SetMemAddr() for background layer. */
lypinator 0:bb348c97df44 164
lypinator 0:bb348c97df44 165 uint32_t LineOffset; /*!< Specifies the foreground or background line offset value.
lypinator 0:bb348c97df44 166 - This parameter must be a number between Min_Data = 0x0000 and Max_Data = 0x3FFF.
lypinator 0:bb348c97df44 167
lypinator 0:bb348c97df44 168 This parameter can be modified afterwards using unitary functions
lypinator 0:bb348c97df44 169 - @ref LL_DMA2D_FGND_SetLineOffset() for foreground layer,
lypinator 0:bb348c97df44 170 - @ref LL_DMA2D_BGND_SetLineOffset() for background layer. */
lypinator 0:bb348c97df44 171
lypinator 0:bb348c97df44 172 uint32_t ColorMode; /*!< Specifies the foreground or background color mode.
lypinator 0:bb348c97df44 173 - This parameter can be one value of @ref DMA2D_LL_EC_INPUT_COLOR_MODE.
lypinator 0:bb348c97df44 174
lypinator 0:bb348c97df44 175 This parameter can be modified afterwards using unitary functions
lypinator 0:bb348c97df44 176 - @ref LL_DMA2D_FGND_SetColorMode() for foreground layer,
lypinator 0:bb348c97df44 177 - @ref LL_DMA2D_BGND_SetColorMode() for background layer. */
lypinator 0:bb348c97df44 178
lypinator 0:bb348c97df44 179 uint32_t CLUTColorMode; /*!< Specifies the foreground or background CLUT color mode.
lypinator 0:bb348c97df44 180 - This parameter can be one value of @ref DMA2D_LL_EC_CLUT_COLOR_MODE.
lypinator 0:bb348c97df44 181
lypinator 0:bb348c97df44 182 This parameter can be modified afterwards using unitary functions
lypinator 0:bb348c97df44 183 - @ref LL_DMA2D_FGND_SetCLUTColorMode() for foreground layer,
lypinator 0:bb348c97df44 184 - @ref LL_DMA2D_BGND_SetCLUTColorMode() for background layer. */
lypinator 0:bb348c97df44 185
lypinator 0:bb348c97df44 186 uint32_t CLUTSize; /*!< Specifies the foreground or background CLUT size.
lypinator 0:bb348c97df44 187 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF.
lypinator 0:bb348c97df44 188
lypinator 0:bb348c97df44 189 This parameter can be modified afterwards using unitary functions
lypinator 0:bb348c97df44 190 - @ref LL_DMA2D_FGND_SetCLUTSize() for foreground layer,
lypinator 0:bb348c97df44 191 - @ref LL_DMA2D_BGND_SetCLUTSize() for background layer. */
lypinator 0:bb348c97df44 192
lypinator 0:bb348c97df44 193 uint32_t AlphaMode; /*!< Specifies the foreground or background alpha mode.
lypinator 0:bb348c97df44 194 - This parameter can be one value of @ref DMA2D_LL_EC_ALPHA_MODE.
lypinator 0:bb348c97df44 195
lypinator 0:bb348c97df44 196 This parameter can be modified afterwards using unitary functions
lypinator 0:bb348c97df44 197 - @ref LL_DMA2D_FGND_SetAlphaMode() for foreground layer,
lypinator 0:bb348c97df44 198 - @ref LL_DMA2D_BGND_SetAlphaMode() for background layer. */
lypinator 0:bb348c97df44 199
lypinator 0:bb348c97df44 200 uint32_t Alpha; /*!< Specifies the foreground or background Alpha value.
lypinator 0:bb348c97df44 201 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF.
lypinator 0:bb348c97df44 202
lypinator 0:bb348c97df44 203 This parameter can be modified afterwards using unitary functions
lypinator 0:bb348c97df44 204 - @ref LL_DMA2D_FGND_SetAlpha() for foreground layer,
lypinator 0:bb348c97df44 205 - @ref LL_DMA2D_BGND_SetAlpha() for background layer. */
lypinator 0:bb348c97df44 206
lypinator 0:bb348c97df44 207 uint32_t Blue; /*!< Specifies the foreground or background Blue color value.
lypinator 0:bb348c97df44 208 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF.
lypinator 0:bb348c97df44 209
lypinator 0:bb348c97df44 210 This parameter can be modified afterwards using unitary functions
lypinator 0:bb348c97df44 211 - @ref LL_DMA2D_FGND_SetBlueColor() for foreground layer,
lypinator 0:bb348c97df44 212 - @ref LL_DMA2D_BGND_SetBlueColor() for background layer. */
lypinator 0:bb348c97df44 213
lypinator 0:bb348c97df44 214 uint32_t Green; /*!< Specifies the foreground or background Green color value.
lypinator 0:bb348c97df44 215 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF.
lypinator 0:bb348c97df44 216
lypinator 0:bb348c97df44 217 This parameter can be modified afterwards using unitary functions
lypinator 0:bb348c97df44 218 - @ref LL_DMA2D_FGND_SetGreenColor() for foreground layer,
lypinator 0:bb348c97df44 219 - @ref LL_DMA2D_BGND_SetGreenColor() for background layer. */
lypinator 0:bb348c97df44 220
lypinator 0:bb348c97df44 221 uint32_t Red; /*!< Specifies the foreground or background Red color value.
lypinator 0:bb348c97df44 222 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF.
lypinator 0:bb348c97df44 223
lypinator 0:bb348c97df44 224 This parameter can be modified afterwards using unitary functions
lypinator 0:bb348c97df44 225 - @ref LL_DMA2D_FGND_SetRedColor() for foreground layer,
lypinator 0:bb348c97df44 226 - @ref LL_DMA2D_BGND_SetRedColor() for background layer. */
lypinator 0:bb348c97df44 227
lypinator 0:bb348c97df44 228 uint32_t CLUTMemoryAddress; /*!< Specifies the foreground or background CLUT memory address.
lypinator 0:bb348c97df44 229 - This parameter must be a number between Min_Data = 0x0000 and Max_Data = 0xFFFFFFFF.
lypinator 0:bb348c97df44 230
lypinator 0:bb348c97df44 231 This parameter can be modified afterwards using unitary functions
lypinator 0:bb348c97df44 232 - @ref LL_DMA2D_FGND_SetCLUTMemAddr() for foreground layer,
lypinator 0:bb348c97df44 233 - @ref LL_DMA2D_BGND_SetCLUTMemAddr() for background layer. */
lypinator 0:bb348c97df44 234
lypinator 0:bb348c97df44 235 } LL_DMA2D_LayerCfgTypeDef;
lypinator 0:bb348c97df44 236
lypinator 0:bb348c97df44 237 /**
lypinator 0:bb348c97df44 238 * @brief LL DMA2D Output Color Structure Definition
lypinator 0:bb348c97df44 239 */
lypinator 0:bb348c97df44 240 typedef struct
lypinator 0:bb348c97df44 241 {
lypinator 0:bb348c97df44 242 uint32_t ColorMode; /*!< Specifies the color format of the output image.
lypinator 0:bb348c97df44 243 - This parameter can be one value of @ref DMA2D_LL_EC_OUTPUT_COLOR_MODE.
lypinator 0:bb348c97df44 244
lypinator 0:bb348c97df44 245 This parameter can be modified afterwards using unitary function @ref LL_DMA2D_SetOutputColorMode(). */
lypinator 0:bb348c97df44 246
lypinator 0:bb348c97df44 247 uint32_t OutputBlue; /*!< Specifies the Blue value of the output image.
lypinator 0:bb348c97df44 248 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF if ARGB8888 color mode is selected.
lypinator 0:bb348c97df44 249 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF if RGB888 color mode is selected.
lypinator 0:bb348c97df44 250 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x1F if RGB565 color mode is selected.
lypinator 0:bb348c97df44 251 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x1F if ARGB1555 color mode is selected.
lypinator 0:bb348c97df44 252 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x0F if ARGB4444 color mode is selected.
lypinator 0:bb348c97df44 253
lypinator 0:bb348c97df44 254 This parameter can be modified afterwards using unitary function @ref LL_DMA2D_SetOutputColor() or configuration
lypinator 0:bb348c97df44 255 function @ref LL_DMA2D_ConfigOutputColor(). */
lypinator 0:bb348c97df44 256
lypinator 0:bb348c97df44 257 uint32_t OutputGreen; /*!< Specifies the Green value of the output image.
lypinator 0:bb348c97df44 258 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF if ARGB8888 color mode is selected.
lypinator 0:bb348c97df44 259 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF if RGB888 color mode is selected.
lypinator 0:bb348c97df44 260 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x3F if RGB565 color mode is selected.
lypinator 0:bb348c97df44 261 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x1F if ARGB1555 color mode is selected.
lypinator 0:bb348c97df44 262 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x0F if ARGB4444 color mode is selected.
lypinator 0:bb348c97df44 263
lypinator 0:bb348c97df44 264 This parameter can be modified afterwards using unitary function @ref LL_DMA2D_SetOutputColor() or configuration
lypinator 0:bb348c97df44 265 function @ref LL_DMA2D_ConfigOutputColor(). */
lypinator 0:bb348c97df44 266
lypinator 0:bb348c97df44 267 uint32_t OutputRed; /*!< Specifies the Red value of the output image.
lypinator 0:bb348c97df44 268 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF if ARGB8888 color mode is selected.
lypinator 0:bb348c97df44 269 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF if RGB888 color mode is selected.
lypinator 0:bb348c97df44 270 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x1F if RGB565 color mode is selected.
lypinator 0:bb348c97df44 271 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x1F if ARGB1555 color mode is selected.
lypinator 0:bb348c97df44 272 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x0F if ARGB4444 color mode is selected.
lypinator 0:bb348c97df44 273
lypinator 0:bb348c97df44 274 This parameter can be modified afterwards using unitary function @ref LL_DMA2D_SetOutputColor() or configuration
lypinator 0:bb348c97df44 275 function @ref LL_DMA2D_ConfigOutputColor(). */
lypinator 0:bb348c97df44 276
lypinator 0:bb348c97df44 277 uint32_t OutputAlpha; /*!< Specifies the Alpha channel of the output image.
lypinator 0:bb348c97df44 278 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFF if ARGB8888 color mode is selected.
lypinator 0:bb348c97df44 279 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x01 if ARGB1555 color mode is selected.
lypinator 0:bb348c97df44 280 - This parameter must be a number between Min_Data = 0x00 and Max_Data = 0x0F if ARGB4444 color mode is selected.
lypinator 0:bb348c97df44 281 - This parameter is not considered if RGB888 or RGB565 color mode is selected.
lypinator 0:bb348c97df44 282
lypinator 0:bb348c97df44 283 This parameter can be modified afterwards using unitary function @ref LL_DMA2D_SetOutputColor() or configuration
lypinator 0:bb348c97df44 284 function @ref LL_DMA2D_ConfigOutputColor(). */
lypinator 0:bb348c97df44 285
lypinator 0:bb348c97df44 286 } LL_DMA2D_ColorTypeDef;
lypinator 0:bb348c97df44 287
lypinator 0:bb348c97df44 288 /**
lypinator 0:bb348c97df44 289 * @}
lypinator 0:bb348c97df44 290 */
lypinator 0:bb348c97df44 291 #endif /* USE_FULL_LL_DRIVER */
lypinator 0:bb348c97df44 292
lypinator 0:bb348c97df44 293 /* Exported constants --------------------------------------------------------*/
lypinator 0:bb348c97df44 294 /** @defgroup DMA2D_LL_Exported_Constants DMA2D Exported Constants
lypinator 0:bb348c97df44 295 * @{
lypinator 0:bb348c97df44 296 */
lypinator 0:bb348c97df44 297
lypinator 0:bb348c97df44 298 /** @defgroup DMA2D_LL_EC_GET_FLAG Get Flags Defines
lypinator 0:bb348c97df44 299 * @brief Flags defines which can be used with LL_DMA2D_ReadReg function
lypinator 0:bb348c97df44 300 * @{
lypinator 0:bb348c97df44 301 */
lypinator 0:bb348c97df44 302 #define LL_DMA2D_FLAG_CEIF DMA2D_ISR_CEIF /*!< Configuration Error Interrupt Flag */
lypinator 0:bb348c97df44 303 #define LL_DMA2D_FLAG_CTCIF DMA2D_ISR_CTCIF /*!< CLUT Transfer Complete Interrupt Flag */
lypinator 0:bb348c97df44 304 #define LL_DMA2D_FLAG_CAEIF DMA2D_ISR_CAEIF /*!< CLUT Access Error Interrupt Flag */
lypinator 0:bb348c97df44 305 #define LL_DMA2D_FLAG_TWIF DMA2D_ISR_TWIF /*!< Transfer Watermark Interrupt Flag */
lypinator 0:bb348c97df44 306 #define LL_DMA2D_FLAG_TCIF DMA2D_ISR_TCIF /*!< Transfer Complete Interrupt Flag */
lypinator 0:bb348c97df44 307 #define LL_DMA2D_FLAG_TEIF DMA2D_ISR_TEIF /*!< Transfer Error Interrupt Flag */
lypinator 0:bb348c97df44 308 /**
lypinator 0:bb348c97df44 309 * @}
lypinator 0:bb348c97df44 310 */
lypinator 0:bb348c97df44 311
lypinator 0:bb348c97df44 312 /** @defgroup DMA2D_LL_EC_IT IT Defines
lypinator 0:bb348c97df44 313 * @brief IT defines which can be used with LL_DMA2D_ReadReg and LL_DMA2D_WriteReg functions
lypinator 0:bb348c97df44 314 * @{
lypinator 0:bb348c97df44 315 */
lypinator 0:bb348c97df44 316 #define LL_DMA2D_IT_CEIE DMA2D_CR_CEIE /*!< Configuration Error Interrupt */
lypinator 0:bb348c97df44 317 #define LL_DMA2D_IT_CTCIE DMA2D_CR_CTCIE /*!< CLUT Transfer Complete Interrupt */
lypinator 0:bb348c97df44 318 #define LL_DMA2D_IT_CAEIE DMA2D_CR_CAEIE /*!< CLUT Access Error Interrupt */
lypinator 0:bb348c97df44 319 #define LL_DMA2D_IT_TWIE DMA2D_CR_TWIE /*!< Transfer Watermark Interrupt */
lypinator 0:bb348c97df44 320 #define LL_DMA2D_IT_TCIE DMA2D_CR_TCIE /*!< Transfer Complete Interrupt */
lypinator 0:bb348c97df44 321 #define LL_DMA2D_IT_TEIE DMA2D_CR_TEIE /*!< Transfer Error Interrupt */
lypinator 0:bb348c97df44 322 /**
lypinator 0:bb348c97df44 323 * @}
lypinator 0:bb348c97df44 324 */
lypinator 0:bb348c97df44 325
lypinator 0:bb348c97df44 326 /** @defgroup DMA2D_LL_EC_MODE Mode
lypinator 0:bb348c97df44 327 * @{
lypinator 0:bb348c97df44 328 */
lypinator 0:bb348c97df44 329 #define LL_DMA2D_MODE_M2M 0x00000000U /*!< DMA2D memory to memory transfer mode */
lypinator 0:bb348c97df44 330 #define LL_DMA2D_MODE_M2M_PFC DMA2D_CR_MODE_0 /*!< DMA2D memory to memory with pixel format conversion transfer mode */
lypinator 0:bb348c97df44 331 #define LL_DMA2D_MODE_M2M_BLEND DMA2D_CR_MODE_1 /*!< DMA2D memory to memory with blending transfer mode */
lypinator 0:bb348c97df44 332 #define LL_DMA2D_MODE_R2M DMA2D_CR_MODE /*!< DMA2D register to memory transfer mode */
lypinator 0:bb348c97df44 333 /**
lypinator 0:bb348c97df44 334 * @}
lypinator 0:bb348c97df44 335 */
lypinator 0:bb348c97df44 336
lypinator 0:bb348c97df44 337 /** @defgroup DMA2D_LL_EC_OUTPUT_COLOR_MODE Output Color Mode
lypinator 0:bb348c97df44 338 * @{
lypinator 0:bb348c97df44 339 */
lypinator 0:bb348c97df44 340 #define LL_DMA2D_OUTPUT_MODE_ARGB8888 0x00000000U /*!< ARGB8888 */
lypinator 0:bb348c97df44 341 #define LL_DMA2D_OUTPUT_MODE_RGB888 DMA2D_OPFCCR_CM_0 /*!< RGB888 */
lypinator 0:bb348c97df44 342 #define LL_DMA2D_OUTPUT_MODE_RGB565 DMA2D_OPFCCR_CM_1 /*!< RGB565 */
lypinator 0:bb348c97df44 343 #define LL_DMA2D_OUTPUT_MODE_ARGB1555 (DMA2D_OPFCCR_CM_0|DMA2D_OPFCCR_CM_1) /*!< ARGB1555 */
lypinator 0:bb348c97df44 344 #define LL_DMA2D_OUTPUT_MODE_ARGB4444 DMA2D_OPFCCR_CM_2 /*!< ARGB4444 */
lypinator 0:bb348c97df44 345 /**
lypinator 0:bb348c97df44 346 * @}
lypinator 0:bb348c97df44 347 */
lypinator 0:bb348c97df44 348
lypinator 0:bb348c97df44 349 /** @defgroup DMA2D_LL_EC_INPUT_COLOR_MODE Input Color Mode
lypinator 0:bb348c97df44 350 * @{
lypinator 0:bb348c97df44 351 */
lypinator 0:bb348c97df44 352 #define LL_DMA2D_INPUT_MODE_ARGB8888 0x00000000U /*!< ARGB8888 */
lypinator 0:bb348c97df44 353 #define LL_DMA2D_INPUT_MODE_RGB888 DMA2D_FGPFCCR_CM_0 /*!< RGB888 */
lypinator 0:bb348c97df44 354 #define LL_DMA2D_INPUT_MODE_RGB565 DMA2D_FGPFCCR_CM_1 /*!< RGB565 */
lypinator 0:bb348c97df44 355 #define LL_DMA2D_INPUT_MODE_ARGB1555 (DMA2D_FGPFCCR_CM_0|DMA2D_FGPFCCR_CM_1) /*!< ARGB1555 */
lypinator 0:bb348c97df44 356 #define LL_DMA2D_INPUT_MODE_ARGB4444 DMA2D_FGPFCCR_CM_2 /*!< ARGB4444 */
lypinator 0:bb348c97df44 357 #define LL_DMA2D_INPUT_MODE_L8 (DMA2D_FGPFCCR_CM_0|DMA2D_FGPFCCR_CM_2) /*!< L8 */
lypinator 0:bb348c97df44 358 #define LL_DMA2D_INPUT_MODE_AL44 (DMA2D_FGPFCCR_CM_1|DMA2D_FGPFCCR_CM_2) /*!< AL44 */
lypinator 0:bb348c97df44 359 #define LL_DMA2D_INPUT_MODE_AL88 (DMA2D_FGPFCCR_CM_0|DMA2D_FGPFCCR_CM_1|DMA2D_FGPFCCR_CM_2) /*!< AL88 */
lypinator 0:bb348c97df44 360 #define LL_DMA2D_INPUT_MODE_L4 DMA2D_FGPFCCR_CM_3 /*!< L4 */
lypinator 0:bb348c97df44 361 #define LL_DMA2D_INPUT_MODE_A8 (DMA2D_FGPFCCR_CM_0|DMA2D_FGPFCCR_CM_3) /*!< A8 */
lypinator 0:bb348c97df44 362 #define LL_DMA2D_INPUT_MODE_A4 (DMA2D_FGPFCCR_CM_1|DMA2D_FGPFCCR_CM_3) /*!< A4 */
lypinator 0:bb348c97df44 363 /**
lypinator 0:bb348c97df44 364 * @}
lypinator 0:bb348c97df44 365 */
lypinator 0:bb348c97df44 366
lypinator 0:bb348c97df44 367 /** @defgroup DMA2D_LL_EC_ALPHA_MODE Alpha Mode
lypinator 0:bb348c97df44 368 * @{
lypinator 0:bb348c97df44 369 */
lypinator 0:bb348c97df44 370 #define LL_DMA2D_ALPHA_MODE_NO_MODIF 0x00000000U /*!< No modification of the alpha channel value */
lypinator 0:bb348c97df44 371 #define LL_DMA2D_ALPHA_MODE_REPLACE DMA2D_FGPFCCR_AM_0 /*!< Replace original alpha channel value by programmed alpha value */
lypinator 0:bb348c97df44 372 #define LL_DMA2D_ALPHA_MODE_COMBINE DMA2D_FGPFCCR_AM_1 /*!< Replace original alpha channel value by programmed alpha value
lypinator 0:bb348c97df44 373 with original alpha channel value */
lypinator 0:bb348c97df44 374 /**
lypinator 0:bb348c97df44 375 * @}
lypinator 0:bb348c97df44 376 */
lypinator 0:bb348c97df44 377
lypinator 0:bb348c97df44 378 /** @defgroup DMA2D_LL_EC_CLUT_COLOR_MODE CLUT Color Mode
lypinator 0:bb348c97df44 379 * @{
lypinator 0:bb348c97df44 380 */
lypinator 0:bb348c97df44 381 #define LL_DMA2D_CLUT_COLOR_MODE_ARGB8888 0x00000000U /*!< ARGB8888 */
lypinator 0:bb348c97df44 382 #define LL_DMA2D_CLUT_COLOR_MODE_RGB888 DMA2D_FGPFCCR_CCM /*!< RGB888 */
lypinator 0:bb348c97df44 383 /**
lypinator 0:bb348c97df44 384 * @}
lypinator 0:bb348c97df44 385 */
lypinator 0:bb348c97df44 386
lypinator 0:bb348c97df44 387 /**
lypinator 0:bb348c97df44 388 * @}
lypinator 0:bb348c97df44 389 */
lypinator 0:bb348c97df44 390
lypinator 0:bb348c97df44 391 /* Exported macro ------------------------------------------------------------*/
lypinator 0:bb348c97df44 392 /** @defgroup DMA2D_LL_Exported_Macros DMA2D Exported Macros
lypinator 0:bb348c97df44 393 * @{
lypinator 0:bb348c97df44 394 */
lypinator 0:bb348c97df44 395
lypinator 0:bb348c97df44 396 /** @defgroup DMA2D_LL_EM_WRITE_READ Common Write and read registers Macros
lypinator 0:bb348c97df44 397 * @{
lypinator 0:bb348c97df44 398 */
lypinator 0:bb348c97df44 399
lypinator 0:bb348c97df44 400 /**
lypinator 0:bb348c97df44 401 * @brief Write a value in DMA2D register.
lypinator 0:bb348c97df44 402 * @param __INSTANCE__ DMA2D Instance
lypinator 0:bb348c97df44 403 * @param __REG__ Register to be written
lypinator 0:bb348c97df44 404 * @param __VALUE__ Value to be written in the register
lypinator 0:bb348c97df44 405 * @retval None
lypinator 0:bb348c97df44 406 */
lypinator 0:bb348c97df44 407 #define LL_DMA2D_WriteReg(__INSTANCE__, __REG__, __VALUE__) WRITE_REG(__INSTANCE__->__REG__, (__VALUE__))
lypinator 0:bb348c97df44 408
lypinator 0:bb348c97df44 409 /**
lypinator 0:bb348c97df44 410 * @brief Read a value in DMA2D register.
lypinator 0:bb348c97df44 411 * @param __INSTANCE__ DMA2D Instance
lypinator 0:bb348c97df44 412 * @param __REG__ Register to be read
lypinator 0:bb348c97df44 413 * @retval Register value
lypinator 0:bb348c97df44 414 */
lypinator 0:bb348c97df44 415 #define LL_DMA2D_ReadReg(__INSTANCE__, __REG__) READ_REG(__INSTANCE__->__REG__)
lypinator 0:bb348c97df44 416 /**
lypinator 0:bb348c97df44 417 * @}
lypinator 0:bb348c97df44 418 */
lypinator 0:bb348c97df44 419
lypinator 0:bb348c97df44 420 /**
lypinator 0:bb348c97df44 421 * @}
lypinator 0:bb348c97df44 422 */
lypinator 0:bb348c97df44 423
lypinator 0:bb348c97df44 424 /* Exported functions --------------------------------------------------------*/
lypinator 0:bb348c97df44 425 /** @defgroup DMA2D_LL_Exported_Functions DMA2D Exported Functions
lypinator 0:bb348c97df44 426 * @{
lypinator 0:bb348c97df44 427 */
lypinator 0:bb348c97df44 428
lypinator 0:bb348c97df44 429 /** @defgroup DMA2D_LL_EF_Configuration Configuration Functions
lypinator 0:bb348c97df44 430 * @{
lypinator 0:bb348c97df44 431 */
lypinator 0:bb348c97df44 432
lypinator 0:bb348c97df44 433 /**
lypinator 0:bb348c97df44 434 * @brief Start a DMA2D transfer.
lypinator 0:bb348c97df44 435 * @rmtoll CR START LL_DMA2D_Start
lypinator 0:bb348c97df44 436 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 437 * @retval None
lypinator 0:bb348c97df44 438 */
lypinator 0:bb348c97df44 439 __STATIC_INLINE void LL_DMA2D_Start(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 440 {
lypinator 0:bb348c97df44 441 SET_BIT(DMA2Dx->CR, DMA2D_CR_START);
lypinator 0:bb348c97df44 442 }
lypinator 0:bb348c97df44 443
lypinator 0:bb348c97df44 444 /**
lypinator 0:bb348c97df44 445 * @brief Indicate if a DMA2D transfer is ongoing.
lypinator 0:bb348c97df44 446 * @rmtoll CR START LL_DMA2D_IsTransferOngoing
lypinator 0:bb348c97df44 447 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 448 * @retval State of bit (1 or 0).
lypinator 0:bb348c97df44 449 */
lypinator 0:bb348c97df44 450 __STATIC_INLINE uint32_t LL_DMA2D_IsTransferOngoing(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 451 {
lypinator 0:bb348c97df44 452 return (READ_BIT(DMA2Dx->CR, DMA2D_CR_START) == (DMA2D_CR_START));
lypinator 0:bb348c97df44 453 }
lypinator 0:bb348c97df44 454
lypinator 0:bb348c97df44 455 /**
lypinator 0:bb348c97df44 456 * @brief Suspend DMA2D transfer.
lypinator 0:bb348c97df44 457 * @note This API can be used to suspend automatic foreground or background CLUT loading.
lypinator 0:bb348c97df44 458 * @rmtoll CR SUSP LL_DMA2D_Suspend
lypinator 0:bb348c97df44 459 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 460 * @retval None
lypinator 0:bb348c97df44 461 */
lypinator 0:bb348c97df44 462 __STATIC_INLINE void LL_DMA2D_Suspend(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 463 {
lypinator 0:bb348c97df44 464 MODIFY_REG(DMA2Dx->CR, DMA2D_CR_SUSP | DMA2D_CR_START, DMA2D_CR_SUSP);
lypinator 0:bb348c97df44 465 }
lypinator 0:bb348c97df44 466
lypinator 0:bb348c97df44 467 /**
lypinator 0:bb348c97df44 468 * @brief Resume DMA2D transfer.
lypinator 0:bb348c97df44 469 * @note This API can be used to resume automatic foreground or background CLUT loading.
lypinator 0:bb348c97df44 470 * @rmtoll CR SUSP LL_DMA2D_Resume
lypinator 0:bb348c97df44 471 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 472 * @retval None
lypinator 0:bb348c97df44 473 */
lypinator 0:bb348c97df44 474 __STATIC_INLINE void LL_DMA2D_Resume(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 475 {
lypinator 0:bb348c97df44 476 CLEAR_BIT(DMA2Dx->CR, DMA2D_CR_SUSP | DMA2D_CR_START);
lypinator 0:bb348c97df44 477 }
lypinator 0:bb348c97df44 478
lypinator 0:bb348c97df44 479 /**
lypinator 0:bb348c97df44 480 * @brief Indicate if DMA2D transfer is suspended.
lypinator 0:bb348c97df44 481 * @note This API can be used to indicate whether or not automatic foreground or
lypinator 0:bb348c97df44 482 * background CLUT loading is suspended.
lypinator 0:bb348c97df44 483 * @rmtoll CR SUSP LL_DMA2D_IsSuspended
lypinator 0:bb348c97df44 484 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 485 * @retval State of bit (1 or 0).
lypinator 0:bb348c97df44 486 */
lypinator 0:bb348c97df44 487 __STATIC_INLINE uint32_t LL_DMA2D_IsSuspended(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 488 {
lypinator 0:bb348c97df44 489 return (READ_BIT(DMA2Dx->CR, DMA2D_CR_SUSP) == (DMA2D_CR_SUSP));
lypinator 0:bb348c97df44 490 }
lypinator 0:bb348c97df44 491
lypinator 0:bb348c97df44 492 /**
lypinator 0:bb348c97df44 493 * @brief Abort DMA2D transfer.
lypinator 0:bb348c97df44 494 * @note This API can be used to abort automatic foreground or background CLUT loading.
lypinator 0:bb348c97df44 495 * @rmtoll CR ABORT LL_DMA2D_Abort
lypinator 0:bb348c97df44 496 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 497 * @retval None
lypinator 0:bb348c97df44 498 */
lypinator 0:bb348c97df44 499 __STATIC_INLINE void LL_DMA2D_Abort(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 500 {
lypinator 0:bb348c97df44 501 MODIFY_REG(DMA2Dx->CR, DMA2D_CR_ABORT | DMA2D_CR_START, DMA2D_CR_ABORT);
lypinator 0:bb348c97df44 502 }
lypinator 0:bb348c97df44 503
lypinator 0:bb348c97df44 504 /**
lypinator 0:bb348c97df44 505 * @brief Indicate if DMA2D transfer is aborted.
lypinator 0:bb348c97df44 506 * @note This API can be used to indicate whether or not automatic foreground or
lypinator 0:bb348c97df44 507 * background CLUT loading is aborted.
lypinator 0:bb348c97df44 508 * @rmtoll CR ABORT LL_DMA2D_IsAborted
lypinator 0:bb348c97df44 509 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 510 * @retval State of bit (1 or 0).
lypinator 0:bb348c97df44 511 */
lypinator 0:bb348c97df44 512 __STATIC_INLINE uint32_t LL_DMA2D_IsAborted(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 513 {
lypinator 0:bb348c97df44 514 return (READ_BIT(DMA2Dx->CR, DMA2D_CR_ABORT) == (DMA2D_CR_ABORT));
lypinator 0:bb348c97df44 515 }
lypinator 0:bb348c97df44 516
lypinator 0:bb348c97df44 517 /**
lypinator 0:bb348c97df44 518 * @brief Set DMA2D mode.
lypinator 0:bb348c97df44 519 * @rmtoll CR MODE LL_DMA2D_SetMode
lypinator 0:bb348c97df44 520 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 521 * @param Mode This parameter can be one of the following values:
lypinator 0:bb348c97df44 522 * @arg @ref LL_DMA2D_MODE_M2M
lypinator 0:bb348c97df44 523 * @arg @ref LL_DMA2D_MODE_M2M_PFC
lypinator 0:bb348c97df44 524 * @arg @ref LL_DMA2D_MODE_M2M_BLEND
lypinator 0:bb348c97df44 525 * @arg @ref LL_DMA2D_MODE_R2M
lypinator 0:bb348c97df44 526 * @retval None
lypinator 0:bb348c97df44 527 */
lypinator 0:bb348c97df44 528 __STATIC_INLINE void LL_DMA2D_SetMode(DMA2D_TypeDef *DMA2Dx, uint32_t Mode)
lypinator 0:bb348c97df44 529 {
lypinator 0:bb348c97df44 530 MODIFY_REG(DMA2Dx->CR, DMA2D_CR_MODE, Mode);
lypinator 0:bb348c97df44 531 }
lypinator 0:bb348c97df44 532
lypinator 0:bb348c97df44 533 /**
lypinator 0:bb348c97df44 534 * @brief Return DMA2D mode
lypinator 0:bb348c97df44 535 * @rmtoll CR MODE LL_DMA2D_GetMode
lypinator 0:bb348c97df44 536 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 537 * @retval Returned value can be one of the following values:
lypinator 0:bb348c97df44 538 * @arg @ref LL_DMA2D_MODE_M2M
lypinator 0:bb348c97df44 539 * @arg @ref LL_DMA2D_MODE_M2M_PFC
lypinator 0:bb348c97df44 540 * @arg @ref LL_DMA2D_MODE_M2M_BLEND
lypinator 0:bb348c97df44 541 * @arg @ref LL_DMA2D_MODE_R2M
lypinator 0:bb348c97df44 542 */
lypinator 0:bb348c97df44 543 __STATIC_INLINE uint32_t LL_DMA2D_GetMode(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 544 {
lypinator 0:bb348c97df44 545 return (uint32_t)(READ_BIT(DMA2Dx->CR, DMA2D_CR_MODE));
lypinator 0:bb348c97df44 546 }
lypinator 0:bb348c97df44 547
lypinator 0:bb348c97df44 548 /**
lypinator 0:bb348c97df44 549 * @brief Set DMA2D output color mode.
lypinator 0:bb348c97df44 550 * @rmtoll OPFCCR CM LL_DMA2D_SetOutputColorMode
lypinator 0:bb348c97df44 551 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 552 * @param ColorMode This parameter can be one of the following values:
lypinator 0:bb348c97df44 553 * @arg @ref LL_DMA2D_OUTPUT_MODE_ARGB8888
lypinator 0:bb348c97df44 554 * @arg @ref LL_DMA2D_OUTPUT_MODE_RGB888
lypinator 0:bb348c97df44 555 * @arg @ref LL_DMA2D_OUTPUT_MODE_RGB565
lypinator 0:bb348c97df44 556 * @arg @ref LL_DMA2D_OUTPUT_MODE_ARGB1555
lypinator 0:bb348c97df44 557 * @arg @ref LL_DMA2D_OUTPUT_MODE_ARGB4444
lypinator 0:bb348c97df44 558 * @retval None
lypinator 0:bb348c97df44 559 */
lypinator 0:bb348c97df44 560 __STATIC_INLINE void LL_DMA2D_SetOutputColorMode(DMA2D_TypeDef *DMA2Dx, uint32_t ColorMode)
lypinator 0:bb348c97df44 561 {
lypinator 0:bb348c97df44 562 MODIFY_REG(DMA2Dx->OPFCCR, DMA2D_OPFCCR_CM, ColorMode);
lypinator 0:bb348c97df44 563 }
lypinator 0:bb348c97df44 564
lypinator 0:bb348c97df44 565 /**
lypinator 0:bb348c97df44 566 * @brief Return DMA2D output color mode.
lypinator 0:bb348c97df44 567 * @rmtoll OPFCCR CM LL_DMA2D_GetOutputColorMode
lypinator 0:bb348c97df44 568 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 569 * @retval Returned value can be one of the following values:
lypinator 0:bb348c97df44 570 * @arg @ref LL_DMA2D_OUTPUT_MODE_ARGB8888
lypinator 0:bb348c97df44 571 * @arg @ref LL_DMA2D_OUTPUT_MODE_RGB888
lypinator 0:bb348c97df44 572 * @arg @ref LL_DMA2D_OUTPUT_MODE_RGB565
lypinator 0:bb348c97df44 573 * @arg @ref LL_DMA2D_OUTPUT_MODE_ARGB1555
lypinator 0:bb348c97df44 574 * @arg @ref LL_DMA2D_OUTPUT_MODE_ARGB4444
lypinator 0:bb348c97df44 575 */
lypinator 0:bb348c97df44 576 __STATIC_INLINE uint32_t LL_DMA2D_GetOutputColorMode(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 577 {
lypinator 0:bb348c97df44 578 return (uint32_t)(READ_BIT(DMA2Dx->OPFCCR, DMA2D_OPFCCR_CM));
lypinator 0:bb348c97df44 579 }
lypinator 0:bb348c97df44 580
lypinator 0:bb348c97df44 581 /**
lypinator 0:bb348c97df44 582 * @brief Set DMA2D line offset, expressed on 14 bits ([13:0] bits).
lypinator 0:bb348c97df44 583 * @rmtoll OOR LO LL_DMA2D_SetLineOffset
lypinator 0:bb348c97df44 584 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 585 * @param LineOffset Value between Min_Data=0 and Max_Data=0x3FFF
lypinator 0:bb348c97df44 586 * @retval None
lypinator 0:bb348c97df44 587 */
lypinator 0:bb348c97df44 588 __STATIC_INLINE void LL_DMA2D_SetLineOffset(DMA2D_TypeDef *DMA2Dx, uint32_t LineOffset)
lypinator 0:bb348c97df44 589 {
lypinator 0:bb348c97df44 590 MODIFY_REG(DMA2Dx->OOR, DMA2D_OOR_LO, LineOffset);
lypinator 0:bb348c97df44 591 }
lypinator 0:bb348c97df44 592
lypinator 0:bb348c97df44 593 /**
lypinator 0:bb348c97df44 594 * @brief Return DMA2D line offset, expressed on 14 bits ([13:0] bits).
lypinator 0:bb348c97df44 595 * @rmtoll OOR LO LL_DMA2D_GetLineOffset
lypinator 0:bb348c97df44 596 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 597 * @retval Line offset value between Min_Data=0 and Max_Data=0x3FFF
lypinator 0:bb348c97df44 598 */
lypinator 0:bb348c97df44 599 __STATIC_INLINE uint32_t LL_DMA2D_GetLineOffset(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 600 {
lypinator 0:bb348c97df44 601 return (uint32_t)(READ_BIT(DMA2Dx->OOR, DMA2D_OOR_LO));
lypinator 0:bb348c97df44 602 }
lypinator 0:bb348c97df44 603
lypinator 0:bb348c97df44 604 /**
lypinator 0:bb348c97df44 605 * @brief Set DMA2D number of pixels per lines, expressed on 14 bits ([13:0] bits).
lypinator 0:bb348c97df44 606 * @rmtoll NLR PL LL_DMA2D_SetNbrOfPixelsPerLines
lypinator 0:bb348c97df44 607 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 608 * @param NbrOfPixelsPerLines Value between Min_Data=0 and Max_Data=0x3FFF
lypinator 0:bb348c97df44 609 * @retval None
lypinator 0:bb348c97df44 610 */
lypinator 0:bb348c97df44 611 __STATIC_INLINE void LL_DMA2D_SetNbrOfPixelsPerLines(DMA2D_TypeDef *DMA2Dx, uint32_t NbrOfPixelsPerLines)
lypinator 0:bb348c97df44 612 {
lypinator 0:bb348c97df44 613 MODIFY_REG(DMA2Dx->NLR, DMA2D_NLR_PL, (NbrOfPixelsPerLines << DMA2D_NLR_PL_Pos));
lypinator 0:bb348c97df44 614 }
lypinator 0:bb348c97df44 615
lypinator 0:bb348c97df44 616 /**
lypinator 0:bb348c97df44 617 * @brief Return DMA2D number of pixels per lines, expressed on 14 bits ([13:0] bits)
lypinator 0:bb348c97df44 618 * @rmtoll NLR PL LL_DMA2D_GetNbrOfPixelsPerLines
lypinator 0:bb348c97df44 619 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 620 * @retval Number of pixels per lines value between Min_Data=0 and Max_Data=0x3FFF
lypinator 0:bb348c97df44 621 */
lypinator 0:bb348c97df44 622 __STATIC_INLINE uint32_t LL_DMA2D_GetNbrOfPixelsPerLines(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 623 {
lypinator 0:bb348c97df44 624 return (uint32_t)(READ_BIT(DMA2Dx->NLR, DMA2D_NLR_PL) >> DMA2D_NLR_PL_Pos);
lypinator 0:bb348c97df44 625 }
lypinator 0:bb348c97df44 626
lypinator 0:bb348c97df44 627 /**
lypinator 0:bb348c97df44 628 * @brief Set DMA2D number of lines, expressed on 16 bits ([15:0] bits).
lypinator 0:bb348c97df44 629 * @rmtoll NLR NL LL_DMA2D_SetNbrOfLines
lypinator 0:bb348c97df44 630 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 631 * @param NbrOfLines Value between Min_Data=0 and Max_Data=0xFFFF
lypinator 0:bb348c97df44 632 * @retval None
lypinator 0:bb348c97df44 633 */
lypinator 0:bb348c97df44 634 __STATIC_INLINE void LL_DMA2D_SetNbrOfLines(DMA2D_TypeDef *DMA2Dx, uint32_t NbrOfLines)
lypinator 0:bb348c97df44 635 {
lypinator 0:bb348c97df44 636 MODIFY_REG(DMA2Dx->NLR, DMA2D_NLR_NL, NbrOfLines);
lypinator 0:bb348c97df44 637 }
lypinator 0:bb348c97df44 638
lypinator 0:bb348c97df44 639 /**
lypinator 0:bb348c97df44 640 * @brief Return DMA2D number of lines, expressed on 16 bits ([15:0] bits).
lypinator 0:bb348c97df44 641 * @rmtoll NLR NL LL_DMA2D_GetNbrOfLines
lypinator 0:bb348c97df44 642 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 643 * @retval Number of lines value between Min_Data=0 and Max_Data=0xFFFF
lypinator 0:bb348c97df44 644 */
lypinator 0:bb348c97df44 645 __STATIC_INLINE uint32_t LL_DMA2D_GetNbrOfLines(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 646 {
lypinator 0:bb348c97df44 647 return (uint32_t)(READ_BIT(DMA2Dx->NLR, DMA2D_NLR_NL));
lypinator 0:bb348c97df44 648 }
lypinator 0:bb348c97df44 649
lypinator 0:bb348c97df44 650 /**
lypinator 0:bb348c97df44 651 * @brief Set DMA2D output memory address, expressed on 32 bits ([31:0] bits).
lypinator 0:bb348c97df44 652 * @rmtoll OMAR MA LL_DMA2D_SetOutputMemAddr
lypinator 0:bb348c97df44 653 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 654 * @param OutputMemoryAddress Value between Min_Data=0 and Max_Data=0xFFFFFFFF
lypinator 0:bb348c97df44 655 * @retval None
lypinator 0:bb348c97df44 656 */
lypinator 0:bb348c97df44 657 __STATIC_INLINE void LL_DMA2D_SetOutputMemAddr(DMA2D_TypeDef *DMA2Dx, uint32_t OutputMemoryAddress)
lypinator 0:bb348c97df44 658 {
lypinator 0:bb348c97df44 659 LL_DMA2D_WriteReg(DMA2Dx, OMAR, OutputMemoryAddress);
lypinator 0:bb348c97df44 660 }
lypinator 0:bb348c97df44 661
lypinator 0:bb348c97df44 662 /**
lypinator 0:bb348c97df44 663 * @brief Get DMA2D output memory address, expressed on 32 bits ([31:0] bits).
lypinator 0:bb348c97df44 664 * @rmtoll OMAR MA LL_DMA2D_GetOutputMemAddr
lypinator 0:bb348c97df44 665 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 666 * @retval Output memory address value between Min_Data=0 and Max_Data=0xFFFFFFFF
lypinator 0:bb348c97df44 667 */
lypinator 0:bb348c97df44 668 __STATIC_INLINE uint32_t LL_DMA2D_GetOutputMemAddr(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 669 {
lypinator 0:bb348c97df44 670 return (uint32_t)(LL_DMA2D_ReadReg(DMA2Dx, OMAR));
lypinator 0:bb348c97df44 671 }
lypinator 0:bb348c97df44 672
lypinator 0:bb348c97df44 673 /**
lypinator 0:bb348c97df44 674 * @brief Set DMA2D output color, expressed on 32 bits ([31:0] bits).
lypinator 0:bb348c97df44 675 * @note Output color format depends on output color mode, ARGB8888, RGB888,
lypinator 0:bb348c97df44 676 * RGB565, ARGB1555 or ARGB4444.
lypinator 0:bb348c97df44 677 * @note LL_DMA2D_ConfigOutputColor() API may be used instead if colors values formatting
lypinator 0:bb348c97df44 678 * with respect to color mode is not done by the user code.
lypinator 0:bb348c97df44 679 * @rmtoll OCOLR BLUE LL_DMA2D_SetOutputColor\n
lypinator 0:bb348c97df44 680 * OCOLR GREEN LL_DMA2D_SetOutputColor\n
lypinator 0:bb348c97df44 681 * OCOLR RED LL_DMA2D_SetOutputColor\n
lypinator 0:bb348c97df44 682 * OCOLR ALPHA LL_DMA2D_SetOutputColor
lypinator 0:bb348c97df44 683 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 684 * @param OutputColor Value between Min_Data=0 and Max_Data=0xFFFFFFFF
lypinator 0:bb348c97df44 685 * @retval None
lypinator 0:bb348c97df44 686 */
lypinator 0:bb348c97df44 687 __STATIC_INLINE void LL_DMA2D_SetOutputColor(DMA2D_TypeDef *DMA2Dx, uint32_t OutputColor)
lypinator 0:bb348c97df44 688 {
lypinator 0:bb348c97df44 689 MODIFY_REG(DMA2Dx->OCOLR, (DMA2D_OCOLR_BLUE_1 | DMA2D_OCOLR_GREEN_1 | DMA2D_OCOLR_RED_1 | DMA2D_OCOLR_ALPHA_1), \
lypinator 0:bb348c97df44 690 OutputColor);
lypinator 0:bb348c97df44 691 }
lypinator 0:bb348c97df44 692
lypinator 0:bb348c97df44 693 /**
lypinator 0:bb348c97df44 694 * @brief Get DMA2D output color, expressed on 32 bits ([31:0] bits).
lypinator 0:bb348c97df44 695 * @note Alpha channel and red, green, blue color values must be retrieved from the returned
lypinator 0:bb348c97df44 696 * value based on the output color mode (ARGB8888, RGB888, RGB565, ARGB1555 or ARGB4444)
lypinator 0:bb348c97df44 697 * as set by @ref LL_DMA2D_SetOutputColorMode.
lypinator 0:bb348c97df44 698 * @rmtoll OCOLR BLUE LL_DMA2D_GetOutputColor\n
lypinator 0:bb348c97df44 699 * OCOLR GREEN LL_DMA2D_GetOutputColor\n
lypinator 0:bb348c97df44 700 * OCOLR RED LL_DMA2D_GetOutputColor\n
lypinator 0:bb348c97df44 701 * OCOLR ALPHA LL_DMA2D_GetOutputColor
lypinator 0:bb348c97df44 702 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 703 * @retval Output color value between Min_Data=0 and Max_Data=0xFFFFFFFF
lypinator 0:bb348c97df44 704 */
lypinator 0:bb348c97df44 705 __STATIC_INLINE uint32_t LL_DMA2D_GetOutputColor(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 706 {
lypinator 0:bb348c97df44 707 return (uint32_t)(READ_BIT(DMA2Dx->OCOLR, \
lypinator 0:bb348c97df44 708 (DMA2D_OCOLR_BLUE_1 | DMA2D_OCOLR_GREEN_1 | DMA2D_OCOLR_RED_1 | DMA2D_OCOLR_ALPHA_1)));
lypinator 0:bb348c97df44 709 }
lypinator 0:bb348c97df44 710
lypinator 0:bb348c97df44 711 /**
lypinator 0:bb348c97df44 712 * @brief Set DMA2D line watermark, expressed on 16 bits ([15:0] bits).
lypinator 0:bb348c97df44 713 * @rmtoll LWR LW LL_DMA2D_SetLineWatermark
lypinator 0:bb348c97df44 714 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 715 * @param LineWatermark Value between Min_Data=0 and Max_Data=0xFFFF
lypinator 0:bb348c97df44 716 * @retval None
lypinator 0:bb348c97df44 717 */
lypinator 0:bb348c97df44 718 __STATIC_INLINE void LL_DMA2D_SetLineWatermark(DMA2D_TypeDef *DMA2Dx, uint32_t LineWatermark)
lypinator 0:bb348c97df44 719 {
lypinator 0:bb348c97df44 720 MODIFY_REG(DMA2Dx->LWR, DMA2D_LWR_LW, LineWatermark);
lypinator 0:bb348c97df44 721 }
lypinator 0:bb348c97df44 722
lypinator 0:bb348c97df44 723 /**
lypinator 0:bb348c97df44 724 * @brief Return DMA2D line watermark, expressed on 16 bits ([15:0] bits).
lypinator 0:bb348c97df44 725 * @rmtoll LWR LW LL_DMA2D_GetLineWatermark
lypinator 0:bb348c97df44 726 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 727 * @retval Line watermark value between Min_Data=0 and Max_Data=0xFFFF
lypinator 0:bb348c97df44 728 */
lypinator 0:bb348c97df44 729 __STATIC_INLINE uint32_t LL_DMA2D_GetLineWatermark(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 730 {
lypinator 0:bb348c97df44 731 return (uint32_t)(READ_BIT(DMA2Dx->LWR, DMA2D_LWR_LW));
lypinator 0:bb348c97df44 732 }
lypinator 0:bb348c97df44 733
lypinator 0:bb348c97df44 734 /**
lypinator 0:bb348c97df44 735 * @brief Set DMA2D dead time, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 736 * @rmtoll AMTCR DT LL_DMA2D_SetDeadTime
lypinator 0:bb348c97df44 737 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 738 * @param DeadTime Value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 739 * @retval None
lypinator 0:bb348c97df44 740 */
lypinator 0:bb348c97df44 741 __STATIC_INLINE void LL_DMA2D_SetDeadTime(DMA2D_TypeDef *DMA2Dx, uint32_t DeadTime)
lypinator 0:bb348c97df44 742 {
lypinator 0:bb348c97df44 743 MODIFY_REG(DMA2Dx->AMTCR, DMA2D_AMTCR_DT, (DeadTime << DMA2D_AMTCR_DT_Pos));
lypinator 0:bb348c97df44 744 }
lypinator 0:bb348c97df44 745
lypinator 0:bb348c97df44 746 /**
lypinator 0:bb348c97df44 747 * @brief Return DMA2D dead time, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 748 * @rmtoll AMTCR DT LL_DMA2D_GetDeadTime
lypinator 0:bb348c97df44 749 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 750 * @retval Dead time value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 751 */
lypinator 0:bb348c97df44 752 __STATIC_INLINE uint32_t LL_DMA2D_GetDeadTime(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 753 {
lypinator 0:bb348c97df44 754 return (uint32_t)(READ_BIT(DMA2Dx->AMTCR, DMA2D_AMTCR_DT) >> DMA2D_AMTCR_DT_Pos);
lypinator 0:bb348c97df44 755 }
lypinator 0:bb348c97df44 756
lypinator 0:bb348c97df44 757 /**
lypinator 0:bb348c97df44 758 * @brief Enable DMA2D dead time functionality.
lypinator 0:bb348c97df44 759 * @rmtoll AMTCR EN LL_DMA2D_EnableDeadTime
lypinator 0:bb348c97df44 760 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 761 * @retval None
lypinator 0:bb348c97df44 762 */
lypinator 0:bb348c97df44 763 __STATIC_INLINE void LL_DMA2D_EnableDeadTime(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 764 {
lypinator 0:bb348c97df44 765 SET_BIT(DMA2Dx->AMTCR, DMA2D_AMTCR_EN);
lypinator 0:bb348c97df44 766 }
lypinator 0:bb348c97df44 767
lypinator 0:bb348c97df44 768 /**
lypinator 0:bb348c97df44 769 * @brief Disable DMA2D dead time functionality.
lypinator 0:bb348c97df44 770 * @rmtoll AMTCR EN LL_DMA2D_DisableDeadTime
lypinator 0:bb348c97df44 771 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 772 * @retval None
lypinator 0:bb348c97df44 773 */
lypinator 0:bb348c97df44 774 __STATIC_INLINE void LL_DMA2D_DisableDeadTime(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 775 {
lypinator 0:bb348c97df44 776 CLEAR_BIT(DMA2Dx->AMTCR, DMA2D_AMTCR_EN);
lypinator 0:bb348c97df44 777 }
lypinator 0:bb348c97df44 778
lypinator 0:bb348c97df44 779 /**
lypinator 0:bb348c97df44 780 * @brief Indicate if DMA2D dead time functionality is enabled.
lypinator 0:bb348c97df44 781 * @rmtoll AMTCR EN LL_DMA2D_IsEnabledDeadTime
lypinator 0:bb348c97df44 782 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 783 * @retval State of bit (1 or 0).
lypinator 0:bb348c97df44 784 */
lypinator 0:bb348c97df44 785 __STATIC_INLINE uint32_t LL_DMA2D_IsEnabledDeadTime(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 786 {
lypinator 0:bb348c97df44 787 return (READ_BIT(DMA2Dx->AMTCR, DMA2D_AMTCR_EN) == (DMA2D_AMTCR_EN));
lypinator 0:bb348c97df44 788 }
lypinator 0:bb348c97df44 789
lypinator 0:bb348c97df44 790 /** @defgroup DMA2D_LL_EF_FGND_Configuration Foreground Configuration Functions
lypinator 0:bb348c97df44 791 * @{
lypinator 0:bb348c97df44 792 */
lypinator 0:bb348c97df44 793
lypinator 0:bb348c97df44 794 /**
lypinator 0:bb348c97df44 795 * @brief Set DMA2D foreground memory address, expressed on 32 bits ([31:0] bits).
lypinator 0:bb348c97df44 796 * @rmtoll FGMAR MA LL_DMA2D_FGND_SetMemAddr
lypinator 0:bb348c97df44 797 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 798 * @param MemoryAddress Value between Min_Data=0 and Max_Data=0xFFFFFFFF
lypinator 0:bb348c97df44 799 * @retval None
lypinator 0:bb348c97df44 800 */
lypinator 0:bb348c97df44 801 __STATIC_INLINE void LL_DMA2D_FGND_SetMemAddr(DMA2D_TypeDef *DMA2Dx, uint32_t MemoryAddress)
lypinator 0:bb348c97df44 802 {
lypinator 0:bb348c97df44 803 LL_DMA2D_WriteReg(DMA2Dx, FGMAR, MemoryAddress);
lypinator 0:bb348c97df44 804 }
lypinator 0:bb348c97df44 805
lypinator 0:bb348c97df44 806 /**
lypinator 0:bb348c97df44 807 * @brief Get DMA2D foreground memory address, expressed on 32 bits ([31:0] bits).
lypinator 0:bb348c97df44 808 * @rmtoll FGMAR MA LL_DMA2D_FGND_GetMemAddr
lypinator 0:bb348c97df44 809 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 810 * @retval Foreground memory address value between Min_Data=0 and Max_Data=0xFFFFFFFF
lypinator 0:bb348c97df44 811 */
lypinator 0:bb348c97df44 812 __STATIC_INLINE uint32_t LL_DMA2D_FGND_GetMemAddr(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 813 {
lypinator 0:bb348c97df44 814 return (uint32_t)(LL_DMA2D_ReadReg(DMA2Dx, FGMAR));
lypinator 0:bb348c97df44 815 }
lypinator 0:bb348c97df44 816
lypinator 0:bb348c97df44 817 /**
lypinator 0:bb348c97df44 818 * @brief Enable DMA2D foreground CLUT loading.
lypinator 0:bb348c97df44 819 * @rmtoll FGPFCCR START LL_DMA2D_FGND_EnableCLUTLoad
lypinator 0:bb348c97df44 820 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 821 * @retval None
lypinator 0:bb348c97df44 822 */
lypinator 0:bb348c97df44 823 __STATIC_INLINE void LL_DMA2D_FGND_EnableCLUTLoad(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 824 {
lypinator 0:bb348c97df44 825 SET_BIT(DMA2Dx->FGPFCCR, DMA2D_FGPFCCR_START);
lypinator 0:bb348c97df44 826 }
lypinator 0:bb348c97df44 827
lypinator 0:bb348c97df44 828 /**
lypinator 0:bb348c97df44 829 * @brief Indicate if DMA2D foreground CLUT loading is enabled.
lypinator 0:bb348c97df44 830 * @rmtoll FGPFCCR START LL_DMA2D_FGND_IsEnabledCLUTLoad
lypinator 0:bb348c97df44 831 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 832 * @retval State of bit (1 or 0).
lypinator 0:bb348c97df44 833 */
lypinator 0:bb348c97df44 834 __STATIC_INLINE uint32_t LL_DMA2D_FGND_IsEnabledCLUTLoad(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 835 {
lypinator 0:bb348c97df44 836 return (READ_BIT(DMA2Dx->FGPFCCR, DMA2D_FGPFCCR_START) == (DMA2D_FGPFCCR_START));
lypinator 0:bb348c97df44 837 }
lypinator 0:bb348c97df44 838
lypinator 0:bb348c97df44 839 /**
lypinator 0:bb348c97df44 840 * @brief Set DMA2D foreground color mode.
lypinator 0:bb348c97df44 841 * @rmtoll FGPFCCR CM LL_DMA2D_FGND_SetColorMode
lypinator 0:bb348c97df44 842 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 843 * @param ColorMode This parameter can be one of the following values:
lypinator 0:bb348c97df44 844 * @arg @ref LL_DMA2D_INPUT_MODE_ARGB8888
lypinator 0:bb348c97df44 845 * @arg @ref LL_DMA2D_INPUT_MODE_RGB888
lypinator 0:bb348c97df44 846 * @arg @ref LL_DMA2D_INPUT_MODE_RGB565
lypinator 0:bb348c97df44 847 * @arg @ref LL_DMA2D_INPUT_MODE_ARGB1555
lypinator 0:bb348c97df44 848 * @arg @ref LL_DMA2D_INPUT_MODE_ARGB4444
lypinator 0:bb348c97df44 849 * @arg @ref LL_DMA2D_INPUT_MODE_L8
lypinator 0:bb348c97df44 850 * @arg @ref LL_DMA2D_INPUT_MODE_AL44
lypinator 0:bb348c97df44 851 * @arg @ref LL_DMA2D_INPUT_MODE_AL88
lypinator 0:bb348c97df44 852 * @arg @ref LL_DMA2D_INPUT_MODE_L4
lypinator 0:bb348c97df44 853 * @arg @ref LL_DMA2D_INPUT_MODE_A8
lypinator 0:bb348c97df44 854 * @arg @ref LL_DMA2D_INPUT_MODE_A4
lypinator 0:bb348c97df44 855 * @retval None
lypinator 0:bb348c97df44 856 */
lypinator 0:bb348c97df44 857 __STATIC_INLINE void LL_DMA2D_FGND_SetColorMode(DMA2D_TypeDef *DMA2Dx, uint32_t ColorMode)
lypinator 0:bb348c97df44 858 {
lypinator 0:bb348c97df44 859 MODIFY_REG(DMA2Dx->FGPFCCR, DMA2D_FGPFCCR_CM, ColorMode);
lypinator 0:bb348c97df44 860 }
lypinator 0:bb348c97df44 861
lypinator 0:bb348c97df44 862 /**
lypinator 0:bb348c97df44 863 * @brief Return DMA2D foreground color mode.
lypinator 0:bb348c97df44 864 * @rmtoll FGPFCCR CM LL_DMA2D_FGND_GetColorMode
lypinator 0:bb348c97df44 865 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 866 * @retval Returned value can be one of the following values:
lypinator 0:bb348c97df44 867 * @arg @ref LL_DMA2D_INPUT_MODE_ARGB8888
lypinator 0:bb348c97df44 868 * @arg @ref LL_DMA2D_INPUT_MODE_RGB888
lypinator 0:bb348c97df44 869 * @arg @ref LL_DMA2D_INPUT_MODE_RGB565
lypinator 0:bb348c97df44 870 * @arg @ref LL_DMA2D_INPUT_MODE_ARGB1555
lypinator 0:bb348c97df44 871 * @arg @ref LL_DMA2D_INPUT_MODE_ARGB4444
lypinator 0:bb348c97df44 872 * @arg @ref LL_DMA2D_INPUT_MODE_L8
lypinator 0:bb348c97df44 873 * @arg @ref LL_DMA2D_INPUT_MODE_AL44
lypinator 0:bb348c97df44 874 * @arg @ref LL_DMA2D_INPUT_MODE_AL88
lypinator 0:bb348c97df44 875 * @arg @ref LL_DMA2D_INPUT_MODE_L4
lypinator 0:bb348c97df44 876 * @arg @ref LL_DMA2D_INPUT_MODE_A8
lypinator 0:bb348c97df44 877 * @arg @ref LL_DMA2D_INPUT_MODE_A4
lypinator 0:bb348c97df44 878 */
lypinator 0:bb348c97df44 879 __STATIC_INLINE uint32_t LL_DMA2D_FGND_GetColorMode(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 880 {
lypinator 0:bb348c97df44 881 return (uint32_t)(READ_BIT(DMA2Dx->FGPFCCR, DMA2D_FGPFCCR_CM));
lypinator 0:bb348c97df44 882 }
lypinator 0:bb348c97df44 883
lypinator 0:bb348c97df44 884 /**
lypinator 0:bb348c97df44 885 * @brief Set DMA2D foreground alpha mode.
lypinator 0:bb348c97df44 886 * @rmtoll FGPFCCR AM LL_DMA2D_FGND_SetAlphaMode
lypinator 0:bb348c97df44 887 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 888 * @param AphaMode This parameter can be one of the following values:
lypinator 0:bb348c97df44 889 * @arg @ref LL_DMA2D_ALPHA_MODE_NO_MODIF
lypinator 0:bb348c97df44 890 * @arg @ref LL_DMA2D_ALPHA_MODE_REPLACE
lypinator 0:bb348c97df44 891 * @arg @ref LL_DMA2D_ALPHA_MODE_COMBINE
lypinator 0:bb348c97df44 892 * @retval None
lypinator 0:bb348c97df44 893 */
lypinator 0:bb348c97df44 894 __STATIC_INLINE void LL_DMA2D_FGND_SetAlphaMode(DMA2D_TypeDef *DMA2Dx, uint32_t AphaMode)
lypinator 0:bb348c97df44 895 {
lypinator 0:bb348c97df44 896 MODIFY_REG(DMA2Dx->FGPFCCR, DMA2D_FGPFCCR_AM, AphaMode);
lypinator 0:bb348c97df44 897 }
lypinator 0:bb348c97df44 898
lypinator 0:bb348c97df44 899 /**
lypinator 0:bb348c97df44 900 * @brief Return DMA2D foreground alpha mode.
lypinator 0:bb348c97df44 901 * @rmtoll FGPFCCR AM LL_DMA2D_FGND_GetAlphaMode
lypinator 0:bb348c97df44 902 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 903 * @retval Returned value can be one of the following values:
lypinator 0:bb348c97df44 904 * @arg @ref LL_DMA2D_ALPHA_MODE_NO_MODIF
lypinator 0:bb348c97df44 905 * @arg @ref LL_DMA2D_ALPHA_MODE_REPLACE
lypinator 0:bb348c97df44 906 * @arg @ref LL_DMA2D_ALPHA_MODE_COMBINE
lypinator 0:bb348c97df44 907 */
lypinator 0:bb348c97df44 908 __STATIC_INLINE uint32_t LL_DMA2D_FGND_GetAlphaMode(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 909 {
lypinator 0:bb348c97df44 910 return (uint32_t)(READ_BIT(DMA2Dx->FGPFCCR, DMA2D_FGPFCCR_AM));
lypinator 0:bb348c97df44 911 }
lypinator 0:bb348c97df44 912
lypinator 0:bb348c97df44 913 /**
lypinator 0:bb348c97df44 914 * @brief Set DMA2D foreground alpha value, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 915 * @rmtoll FGPFCCR ALPHA LL_DMA2D_FGND_SetAlpha
lypinator 0:bb348c97df44 916 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 917 * @param Alpha Value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 918 * @retval None
lypinator 0:bb348c97df44 919 */
lypinator 0:bb348c97df44 920 __STATIC_INLINE void LL_DMA2D_FGND_SetAlpha(DMA2D_TypeDef *DMA2Dx, uint32_t Alpha)
lypinator 0:bb348c97df44 921 {
lypinator 0:bb348c97df44 922 MODIFY_REG(DMA2Dx->FGPFCCR, DMA2D_FGPFCCR_ALPHA, (Alpha << DMA2D_FGPFCCR_ALPHA_Pos));
lypinator 0:bb348c97df44 923 }
lypinator 0:bb348c97df44 924
lypinator 0:bb348c97df44 925 /**
lypinator 0:bb348c97df44 926 * @brief Return DMA2D foreground alpha value, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 927 * @rmtoll FGPFCCR ALPHA LL_DMA2D_FGND_GetAlpha
lypinator 0:bb348c97df44 928 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 929 * @retval Alpha value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 930 */
lypinator 0:bb348c97df44 931 __STATIC_INLINE uint32_t LL_DMA2D_FGND_GetAlpha(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 932 {
lypinator 0:bb348c97df44 933 return (uint32_t)(READ_BIT(DMA2Dx->FGPFCCR, DMA2D_FGPFCCR_ALPHA) >> DMA2D_FGPFCCR_ALPHA_Pos);
lypinator 0:bb348c97df44 934 }
lypinator 0:bb348c97df44 935
lypinator 0:bb348c97df44 936 /**
lypinator 0:bb348c97df44 937 * @brief Set DMA2D foreground line offset, expressed on 14 bits ([13:0] bits).
lypinator 0:bb348c97df44 938 * @rmtoll FGOR LO LL_DMA2D_FGND_SetLineOffset
lypinator 0:bb348c97df44 939 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 940 * @param LineOffset Value between Min_Data=0 and Max_Data=0x3FF
lypinator 0:bb348c97df44 941 * @retval None
lypinator 0:bb348c97df44 942 */
lypinator 0:bb348c97df44 943 __STATIC_INLINE void LL_DMA2D_FGND_SetLineOffset(DMA2D_TypeDef *DMA2Dx, uint32_t LineOffset)
lypinator 0:bb348c97df44 944 {
lypinator 0:bb348c97df44 945 MODIFY_REG(DMA2Dx->FGOR, DMA2D_FGOR_LO, LineOffset);
lypinator 0:bb348c97df44 946 }
lypinator 0:bb348c97df44 947
lypinator 0:bb348c97df44 948 /**
lypinator 0:bb348c97df44 949 * @brief Return DMA2D foreground line offset, expressed on 14 bits ([13:0] bits).
lypinator 0:bb348c97df44 950 * @rmtoll FGOR LO LL_DMA2D_FGND_GetLineOffset
lypinator 0:bb348c97df44 951 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 952 * @retval Foreground line offset value between Min_Data=0 and Max_Data=0x3FF
lypinator 0:bb348c97df44 953 */
lypinator 0:bb348c97df44 954 __STATIC_INLINE uint32_t LL_DMA2D_FGND_GetLineOffset(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 955 {
lypinator 0:bb348c97df44 956 return (uint32_t)(READ_BIT(DMA2Dx->FGOR, DMA2D_FGOR_LO));
lypinator 0:bb348c97df44 957 }
lypinator 0:bb348c97df44 958
lypinator 0:bb348c97df44 959 /**
lypinator 0:bb348c97df44 960 * @brief Set DMA2D foreground color values, expressed on 24 bits ([23:0] bits).
lypinator 0:bb348c97df44 961 * @rmtoll FGCOLR RED LL_DMA2D_FGND_SetColor
lypinator 0:bb348c97df44 962 * @rmtoll FGCOLR GREEN LL_DMA2D_FGND_SetColor
lypinator 0:bb348c97df44 963 * @rmtoll FGCOLR BLUE LL_DMA2D_FGND_SetColor
lypinator 0:bb348c97df44 964 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 965 * @param Red Value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 966 * @param Green Value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 967 * @param Blue Value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 968 * @retval None
lypinator 0:bb348c97df44 969 */
lypinator 0:bb348c97df44 970 __STATIC_INLINE void LL_DMA2D_FGND_SetColor(DMA2D_TypeDef *DMA2Dx, uint32_t Red, uint32_t Green, uint32_t Blue)
lypinator 0:bb348c97df44 971 {
lypinator 0:bb348c97df44 972 MODIFY_REG(DMA2Dx->FGCOLR, (DMA2D_FGCOLR_RED | DMA2D_FGCOLR_GREEN | DMA2D_FGCOLR_BLUE), \
lypinator 0:bb348c97df44 973 ((Red << DMA2D_FGCOLR_RED_Pos) | (Green << DMA2D_FGCOLR_GREEN_Pos) | Blue));
lypinator 0:bb348c97df44 974 }
lypinator 0:bb348c97df44 975
lypinator 0:bb348c97df44 976 /**
lypinator 0:bb348c97df44 977 * @brief Set DMA2D foreground red color value, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 978 * @rmtoll FGCOLR RED LL_DMA2D_FGND_SetRedColor
lypinator 0:bb348c97df44 979 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 980 * @param Red Value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 981 * @retval None
lypinator 0:bb348c97df44 982 */
lypinator 0:bb348c97df44 983 __STATIC_INLINE void LL_DMA2D_FGND_SetRedColor(DMA2D_TypeDef *DMA2Dx, uint32_t Red)
lypinator 0:bb348c97df44 984 {
lypinator 0:bb348c97df44 985 MODIFY_REG(DMA2Dx->FGCOLR, DMA2D_FGCOLR_RED, (Red << DMA2D_FGCOLR_RED_Pos));
lypinator 0:bb348c97df44 986 }
lypinator 0:bb348c97df44 987
lypinator 0:bb348c97df44 988 /**
lypinator 0:bb348c97df44 989 * @brief Return DMA2D foreground red color value, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 990 * @rmtoll FGCOLR RED LL_DMA2D_FGND_GetRedColor
lypinator 0:bb348c97df44 991 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 992 * @retval Red color value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 993 */
lypinator 0:bb348c97df44 994 __STATIC_INLINE uint32_t LL_DMA2D_FGND_GetRedColor(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 995 {
lypinator 0:bb348c97df44 996 return (uint32_t)(READ_BIT(DMA2Dx->FGCOLR, DMA2D_FGCOLR_RED) >> DMA2D_FGCOLR_RED_Pos);
lypinator 0:bb348c97df44 997 }
lypinator 0:bb348c97df44 998
lypinator 0:bb348c97df44 999 /**
lypinator 0:bb348c97df44 1000 * @brief Set DMA2D foreground green color value, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 1001 * @rmtoll FGCOLR GREEN LL_DMA2D_FGND_SetGreenColor
lypinator 0:bb348c97df44 1002 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1003 * @param Green Value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1004 * @retval None
lypinator 0:bb348c97df44 1005 */
lypinator 0:bb348c97df44 1006 __STATIC_INLINE void LL_DMA2D_FGND_SetGreenColor(DMA2D_TypeDef *DMA2Dx, uint32_t Green)
lypinator 0:bb348c97df44 1007 {
lypinator 0:bb348c97df44 1008 MODIFY_REG(DMA2Dx->FGCOLR, DMA2D_FGCOLR_GREEN, (Green << DMA2D_FGCOLR_GREEN_Pos));
lypinator 0:bb348c97df44 1009 }
lypinator 0:bb348c97df44 1010
lypinator 0:bb348c97df44 1011 /**
lypinator 0:bb348c97df44 1012 * @brief Return DMA2D foreground green color value, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 1013 * @rmtoll FGCOLR GREEN LL_DMA2D_FGND_GetGreenColor
lypinator 0:bb348c97df44 1014 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1015 * @retval Green color value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1016 */
lypinator 0:bb348c97df44 1017 __STATIC_INLINE uint32_t LL_DMA2D_FGND_GetGreenColor(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1018 {
lypinator 0:bb348c97df44 1019 return (uint32_t)(READ_BIT(DMA2Dx->FGCOLR, DMA2D_FGCOLR_GREEN) >> DMA2D_FGCOLR_GREEN_Pos);
lypinator 0:bb348c97df44 1020 }
lypinator 0:bb348c97df44 1021
lypinator 0:bb348c97df44 1022 /**
lypinator 0:bb348c97df44 1023 * @brief Set DMA2D foreground blue color value, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 1024 * @rmtoll FGCOLR BLUE LL_DMA2D_FGND_SetBlueColor
lypinator 0:bb348c97df44 1025 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1026 * @param Blue Value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1027 * @retval None
lypinator 0:bb348c97df44 1028 */
lypinator 0:bb348c97df44 1029 __STATIC_INLINE void LL_DMA2D_FGND_SetBlueColor(DMA2D_TypeDef *DMA2Dx, uint32_t Blue)
lypinator 0:bb348c97df44 1030 {
lypinator 0:bb348c97df44 1031 MODIFY_REG(DMA2Dx->FGCOLR, DMA2D_FGCOLR_BLUE, Blue);
lypinator 0:bb348c97df44 1032 }
lypinator 0:bb348c97df44 1033
lypinator 0:bb348c97df44 1034 /**
lypinator 0:bb348c97df44 1035 * @brief Return DMA2D foreground blue color value, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 1036 * @rmtoll FGCOLR BLUE LL_DMA2D_FGND_GetBlueColor
lypinator 0:bb348c97df44 1037 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1038 * @retval Blue color value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1039 */
lypinator 0:bb348c97df44 1040 __STATIC_INLINE uint32_t LL_DMA2D_FGND_GetBlueColor(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1041 {
lypinator 0:bb348c97df44 1042 return (uint32_t)(READ_BIT(DMA2Dx->FGCOLR, DMA2D_FGCOLR_BLUE));
lypinator 0:bb348c97df44 1043 }
lypinator 0:bb348c97df44 1044
lypinator 0:bb348c97df44 1045 /**
lypinator 0:bb348c97df44 1046 * @brief Set DMA2D foreground CLUT memory address, expressed on 32 bits ([31:0] bits).
lypinator 0:bb348c97df44 1047 * @rmtoll FGCMAR MA LL_DMA2D_FGND_SetCLUTMemAddr
lypinator 0:bb348c97df44 1048 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1049 * @param CLUTMemoryAddress Value between Min_Data=0 and Max_Data=0xFFFFFFFF
lypinator 0:bb348c97df44 1050 * @retval None
lypinator 0:bb348c97df44 1051 */
lypinator 0:bb348c97df44 1052 __STATIC_INLINE void LL_DMA2D_FGND_SetCLUTMemAddr(DMA2D_TypeDef *DMA2Dx, uint32_t CLUTMemoryAddress)
lypinator 0:bb348c97df44 1053 {
lypinator 0:bb348c97df44 1054 LL_DMA2D_WriteReg(DMA2Dx, FGCMAR, CLUTMemoryAddress);
lypinator 0:bb348c97df44 1055 }
lypinator 0:bb348c97df44 1056
lypinator 0:bb348c97df44 1057 /**
lypinator 0:bb348c97df44 1058 * @brief Get DMA2D foreground CLUT memory address, expressed on 32 bits ([31:0] bits).
lypinator 0:bb348c97df44 1059 * @rmtoll FGCMAR MA LL_DMA2D_FGND_GetCLUTMemAddr
lypinator 0:bb348c97df44 1060 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1061 * @retval Foreground CLUT memory address value between Min_Data=0 and Max_Data=0xFFFFFFFF
lypinator 0:bb348c97df44 1062 */
lypinator 0:bb348c97df44 1063 __STATIC_INLINE uint32_t LL_DMA2D_FGND_GetCLUTMemAddr(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1064 {
lypinator 0:bb348c97df44 1065 return (uint32_t)(LL_DMA2D_ReadReg(DMA2Dx, FGCMAR));
lypinator 0:bb348c97df44 1066 }
lypinator 0:bb348c97df44 1067
lypinator 0:bb348c97df44 1068 /**
lypinator 0:bb348c97df44 1069 * @brief Set DMA2D foreground CLUT size, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 1070 * @rmtoll FGPFCCR CS LL_DMA2D_FGND_SetCLUTSize
lypinator 0:bb348c97df44 1071 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1072 * @param CLUTSize Value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1073 * @retval None
lypinator 0:bb348c97df44 1074 */
lypinator 0:bb348c97df44 1075 __STATIC_INLINE void LL_DMA2D_FGND_SetCLUTSize(DMA2D_TypeDef *DMA2Dx, uint32_t CLUTSize)
lypinator 0:bb348c97df44 1076 {
lypinator 0:bb348c97df44 1077 MODIFY_REG(DMA2Dx->FGPFCCR, DMA2D_FGPFCCR_CS, (CLUTSize << DMA2D_FGPFCCR_CS_Pos));
lypinator 0:bb348c97df44 1078 }
lypinator 0:bb348c97df44 1079
lypinator 0:bb348c97df44 1080 /**
lypinator 0:bb348c97df44 1081 * @brief Get DMA2D foreground CLUT size, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 1082 * @rmtoll FGPFCCR CS LL_DMA2D_FGND_GetCLUTSize
lypinator 0:bb348c97df44 1083 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1084 * @retval Foreground CLUT size value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1085 */
lypinator 0:bb348c97df44 1086 __STATIC_INLINE uint32_t LL_DMA2D_FGND_GetCLUTSize(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1087 {
lypinator 0:bb348c97df44 1088 return (uint32_t)(READ_BIT(DMA2Dx->FGPFCCR, DMA2D_FGPFCCR_CS) >> DMA2D_FGPFCCR_CS_Pos);
lypinator 0:bb348c97df44 1089 }
lypinator 0:bb348c97df44 1090
lypinator 0:bb348c97df44 1091 /**
lypinator 0:bb348c97df44 1092 * @brief Set DMA2D foreground CLUT color mode.
lypinator 0:bb348c97df44 1093 * @rmtoll FGPFCCR CCM LL_DMA2D_FGND_SetCLUTColorMode
lypinator 0:bb348c97df44 1094 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1095 * @param CLUTColorMode This parameter can be one of the following values:
lypinator 0:bb348c97df44 1096 * @arg @ref LL_DMA2D_CLUT_COLOR_MODE_ARGB8888
lypinator 0:bb348c97df44 1097 * @arg @ref LL_DMA2D_CLUT_COLOR_MODE_RGB888
lypinator 0:bb348c97df44 1098 * @retval None
lypinator 0:bb348c97df44 1099 */
lypinator 0:bb348c97df44 1100 __STATIC_INLINE void LL_DMA2D_FGND_SetCLUTColorMode(DMA2D_TypeDef *DMA2Dx, uint32_t CLUTColorMode)
lypinator 0:bb348c97df44 1101 {
lypinator 0:bb348c97df44 1102 MODIFY_REG(DMA2Dx->FGPFCCR, DMA2D_FGPFCCR_CCM, CLUTColorMode);
lypinator 0:bb348c97df44 1103 }
lypinator 0:bb348c97df44 1104
lypinator 0:bb348c97df44 1105 /**
lypinator 0:bb348c97df44 1106 * @brief Return DMA2D foreground CLUT color mode.
lypinator 0:bb348c97df44 1107 * @rmtoll FGPFCCR CCM LL_DMA2D_FGND_GetCLUTColorMode
lypinator 0:bb348c97df44 1108 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1109 * @retval Returned value can be one of the following values:
lypinator 0:bb348c97df44 1110 * @arg @ref LL_DMA2D_CLUT_COLOR_MODE_ARGB8888
lypinator 0:bb348c97df44 1111 * @arg @ref LL_DMA2D_CLUT_COLOR_MODE_RGB888
lypinator 0:bb348c97df44 1112 */
lypinator 0:bb348c97df44 1113 __STATIC_INLINE uint32_t LL_DMA2D_FGND_GetCLUTColorMode(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1114 {
lypinator 0:bb348c97df44 1115 return (uint32_t)(READ_BIT(DMA2Dx->FGPFCCR, DMA2D_FGPFCCR_CCM));
lypinator 0:bb348c97df44 1116 }
lypinator 0:bb348c97df44 1117
lypinator 0:bb348c97df44 1118 /**
lypinator 0:bb348c97df44 1119 * @}
lypinator 0:bb348c97df44 1120 */
lypinator 0:bb348c97df44 1121
lypinator 0:bb348c97df44 1122 /** @defgroup DMA2D_LL_EF_BGND_Configuration Background Configuration Functions
lypinator 0:bb348c97df44 1123 * @{
lypinator 0:bb348c97df44 1124 */
lypinator 0:bb348c97df44 1125
lypinator 0:bb348c97df44 1126 /**
lypinator 0:bb348c97df44 1127 * @brief Set DMA2D background memory address, expressed on 32 bits ([31:0] bits).
lypinator 0:bb348c97df44 1128 * @rmtoll BGMAR MA LL_DMA2D_BGND_SetMemAddr
lypinator 0:bb348c97df44 1129 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1130 * @param MemoryAddress Value between Min_Data=0 and Max_Data=0xFFFFFFFF
lypinator 0:bb348c97df44 1131 * @retval None
lypinator 0:bb348c97df44 1132 */
lypinator 0:bb348c97df44 1133 __STATIC_INLINE void LL_DMA2D_BGND_SetMemAddr(DMA2D_TypeDef *DMA2Dx, uint32_t MemoryAddress)
lypinator 0:bb348c97df44 1134 {
lypinator 0:bb348c97df44 1135 LL_DMA2D_WriteReg(DMA2Dx, BGMAR, MemoryAddress);
lypinator 0:bb348c97df44 1136 }
lypinator 0:bb348c97df44 1137
lypinator 0:bb348c97df44 1138 /**
lypinator 0:bb348c97df44 1139 * @brief Get DMA2D background memory address, expressed on 32 bits ([31:0] bits).
lypinator 0:bb348c97df44 1140 * @rmtoll BGMAR MA LL_DMA2D_BGND_GetMemAddr
lypinator 0:bb348c97df44 1141 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1142 * @retval Background memory address value between Min_Data=0 and Max_Data=0xFFFFFFFF
lypinator 0:bb348c97df44 1143 */
lypinator 0:bb348c97df44 1144 __STATIC_INLINE uint32_t LL_DMA2D_BGND_GetMemAddr(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1145 {
lypinator 0:bb348c97df44 1146 return (uint32_t)(LL_DMA2D_ReadReg(DMA2Dx, BGMAR));
lypinator 0:bb348c97df44 1147 }
lypinator 0:bb348c97df44 1148
lypinator 0:bb348c97df44 1149 /**
lypinator 0:bb348c97df44 1150 * @brief Enable DMA2D background CLUT loading.
lypinator 0:bb348c97df44 1151 * @rmtoll BGPFCCR START LL_DMA2D_BGND_EnableCLUTLoad
lypinator 0:bb348c97df44 1152 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1153 * @retval None
lypinator 0:bb348c97df44 1154 */
lypinator 0:bb348c97df44 1155 __STATIC_INLINE void LL_DMA2D_BGND_EnableCLUTLoad(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1156 {
lypinator 0:bb348c97df44 1157 SET_BIT(DMA2Dx->BGPFCCR, DMA2D_BGPFCCR_START);
lypinator 0:bb348c97df44 1158 }
lypinator 0:bb348c97df44 1159
lypinator 0:bb348c97df44 1160 /**
lypinator 0:bb348c97df44 1161 * @brief Indicate if DMA2D background CLUT loading is enabled.
lypinator 0:bb348c97df44 1162 * @rmtoll BGPFCCR START LL_DMA2D_BGND_IsEnabledCLUTLoad
lypinator 0:bb348c97df44 1163 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1164 * @retval State of bit (1 or 0).
lypinator 0:bb348c97df44 1165 */
lypinator 0:bb348c97df44 1166 __STATIC_INLINE uint32_t LL_DMA2D_BGND_IsEnabledCLUTLoad(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1167 {
lypinator 0:bb348c97df44 1168 return (READ_BIT(DMA2Dx->BGPFCCR, DMA2D_BGPFCCR_START) == (DMA2D_BGPFCCR_START));
lypinator 0:bb348c97df44 1169 }
lypinator 0:bb348c97df44 1170
lypinator 0:bb348c97df44 1171 /**
lypinator 0:bb348c97df44 1172 * @brief Set DMA2D background color mode.
lypinator 0:bb348c97df44 1173 * @rmtoll BGPFCCR CM LL_DMA2D_BGND_SetColorMode
lypinator 0:bb348c97df44 1174 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1175 * @param ColorMode This parameter can be one of the following values:
lypinator 0:bb348c97df44 1176 * @arg @ref LL_DMA2D_INPUT_MODE_ARGB8888
lypinator 0:bb348c97df44 1177 * @arg @ref LL_DMA2D_INPUT_MODE_RGB888
lypinator 0:bb348c97df44 1178 * @arg @ref LL_DMA2D_INPUT_MODE_RGB565
lypinator 0:bb348c97df44 1179 * @arg @ref LL_DMA2D_INPUT_MODE_ARGB1555
lypinator 0:bb348c97df44 1180 * @arg @ref LL_DMA2D_INPUT_MODE_ARGB4444
lypinator 0:bb348c97df44 1181 * @arg @ref LL_DMA2D_INPUT_MODE_L8
lypinator 0:bb348c97df44 1182 * @arg @ref LL_DMA2D_INPUT_MODE_AL44
lypinator 0:bb348c97df44 1183 * @arg @ref LL_DMA2D_INPUT_MODE_AL88
lypinator 0:bb348c97df44 1184 * @arg @ref LL_DMA2D_INPUT_MODE_L4
lypinator 0:bb348c97df44 1185 * @arg @ref LL_DMA2D_INPUT_MODE_A8
lypinator 0:bb348c97df44 1186 * @arg @ref LL_DMA2D_INPUT_MODE_A4
lypinator 0:bb348c97df44 1187 * @retval None
lypinator 0:bb348c97df44 1188 */
lypinator 0:bb348c97df44 1189 __STATIC_INLINE void LL_DMA2D_BGND_SetColorMode(DMA2D_TypeDef *DMA2Dx, uint32_t ColorMode)
lypinator 0:bb348c97df44 1190 {
lypinator 0:bb348c97df44 1191 MODIFY_REG(DMA2Dx->BGPFCCR, DMA2D_BGPFCCR_CM, ColorMode);
lypinator 0:bb348c97df44 1192 }
lypinator 0:bb348c97df44 1193
lypinator 0:bb348c97df44 1194 /**
lypinator 0:bb348c97df44 1195 * @brief Return DMA2D background color mode.
lypinator 0:bb348c97df44 1196 * @rmtoll BGPFCCR CM LL_DMA2D_BGND_GetColorMode
lypinator 0:bb348c97df44 1197 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1198 * @retval Returned value can be one of the following values:
lypinator 0:bb348c97df44 1199 * @arg @ref LL_DMA2D_INPUT_MODE_ARGB8888
lypinator 0:bb348c97df44 1200 * @arg @ref LL_DMA2D_INPUT_MODE_RGB888
lypinator 0:bb348c97df44 1201 * @arg @ref LL_DMA2D_INPUT_MODE_RGB565
lypinator 0:bb348c97df44 1202 * @arg @ref LL_DMA2D_INPUT_MODE_ARGB1555
lypinator 0:bb348c97df44 1203 * @arg @ref LL_DMA2D_INPUT_MODE_ARGB4444
lypinator 0:bb348c97df44 1204 * @arg @ref LL_DMA2D_INPUT_MODE_L8
lypinator 0:bb348c97df44 1205 * @arg @ref LL_DMA2D_INPUT_MODE_AL44
lypinator 0:bb348c97df44 1206 * @arg @ref LL_DMA2D_INPUT_MODE_AL88
lypinator 0:bb348c97df44 1207 * @arg @ref LL_DMA2D_INPUT_MODE_L4
lypinator 0:bb348c97df44 1208 * @arg @ref LL_DMA2D_INPUT_MODE_A8
lypinator 0:bb348c97df44 1209 * @arg @ref LL_DMA2D_INPUT_MODE_A4
lypinator 0:bb348c97df44 1210 */
lypinator 0:bb348c97df44 1211 __STATIC_INLINE uint32_t LL_DMA2D_BGND_GetColorMode(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1212 {
lypinator 0:bb348c97df44 1213 return (uint32_t)(READ_BIT(DMA2Dx->BGPFCCR, DMA2D_BGPFCCR_CM));
lypinator 0:bb348c97df44 1214 }
lypinator 0:bb348c97df44 1215
lypinator 0:bb348c97df44 1216 /**
lypinator 0:bb348c97df44 1217 * @brief Set DMA2D background alpha mode.
lypinator 0:bb348c97df44 1218 * @rmtoll BGPFCCR AM LL_DMA2D_BGND_SetAlphaMode
lypinator 0:bb348c97df44 1219 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1220 * @param AphaMode This parameter can be one of the following values:
lypinator 0:bb348c97df44 1221 * @arg @ref LL_DMA2D_ALPHA_MODE_NO_MODIF
lypinator 0:bb348c97df44 1222 * @arg @ref LL_DMA2D_ALPHA_MODE_REPLACE
lypinator 0:bb348c97df44 1223 * @arg @ref LL_DMA2D_ALPHA_MODE_COMBINE
lypinator 0:bb348c97df44 1224 * @retval None
lypinator 0:bb348c97df44 1225 */
lypinator 0:bb348c97df44 1226 __STATIC_INLINE void LL_DMA2D_BGND_SetAlphaMode(DMA2D_TypeDef *DMA2Dx, uint32_t AphaMode)
lypinator 0:bb348c97df44 1227 {
lypinator 0:bb348c97df44 1228 MODIFY_REG(DMA2Dx->BGPFCCR, DMA2D_BGPFCCR_AM, AphaMode);
lypinator 0:bb348c97df44 1229 }
lypinator 0:bb348c97df44 1230
lypinator 0:bb348c97df44 1231 /**
lypinator 0:bb348c97df44 1232 * @brief Return DMA2D background alpha mode.
lypinator 0:bb348c97df44 1233 * @rmtoll BGPFCCR AM LL_DMA2D_BGND_GetAlphaMode
lypinator 0:bb348c97df44 1234 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1235 * @retval Returned value can be one of the following values:
lypinator 0:bb348c97df44 1236 * @arg @ref LL_DMA2D_ALPHA_MODE_NO_MODIF
lypinator 0:bb348c97df44 1237 * @arg @ref LL_DMA2D_ALPHA_MODE_REPLACE
lypinator 0:bb348c97df44 1238 * @arg @ref LL_DMA2D_ALPHA_MODE_COMBINE
lypinator 0:bb348c97df44 1239 */
lypinator 0:bb348c97df44 1240 __STATIC_INLINE uint32_t LL_DMA2D_BGND_GetAlphaMode(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1241 {
lypinator 0:bb348c97df44 1242 return (uint32_t)(READ_BIT(DMA2Dx->BGPFCCR, DMA2D_BGPFCCR_AM));
lypinator 0:bb348c97df44 1243 }
lypinator 0:bb348c97df44 1244
lypinator 0:bb348c97df44 1245 /**
lypinator 0:bb348c97df44 1246 * @brief Set DMA2D background alpha value, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 1247 * @rmtoll BGPFCCR ALPHA LL_DMA2D_BGND_SetAlpha
lypinator 0:bb348c97df44 1248 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1249 * @param Alpha Value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1250 * @retval None
lypinator 0:bb348c97df44 1251 */
lypinator 0:bb348c97df44 1252 __STATIC_INLINE void LL_DMA2D_BGND_SetAlpha(DMA2D_TypeDef *DMA2Dx, uint32_t Alpha)
lypinator 0:bb348c97df44 1253 {
lypinator 0:bb348c97df44 1254 MODIFY_REG(DMA2Dx->BGPFCCR, DMA2D_BGPFCCR_ALPHA, (Alpha << DMA2D_BGPFCCR_ALPHA_Pos));
lypinator 0:bb348c97df44 1255 }
lypinator 0:bb348c97df44 1256
lypinator 0:bb348c97df44 1257 /**
lypinator 0:bb348c97df44 1258 * @brief Return DMA2D background alpha value, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 1259 * @rmtoll BGPFCCR ALPHA LL_DMA2D_BGND_GetAlpha
lypinator 0:bb348c97df44 1260 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1261 * @retval Alpha value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1262 */
lypinator 0:bb348c97df44 1263 __STATIC_INLINE uint32_t LL_DMA2D_BGND_GetAlpha(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1264 {
lypinator 0:bb348c97df44 1265 return (uint32_t)(READ_BIT(DMA2Dx->BGPFCCR, DMA2D_BGPFCCR_ALPHA) >> DMA2D_BGPFCCR_ALPHA_Pos);
lypinator 0:bb348c97df44 1266 }
lypinator 0:bb348c97df44 1267
lypinator 0:bb348c97df44 1268 /**
lypinator 0:bb348c97df44 1269 * @brief Set DMA2D background line offset, expressed on 14 bits ([13:0] bits).
lypinator 0:bb348c97df44 1270 * @rmtoll BGOR LO LL_DMA2D_BGND_SetLineOffset
lypinator 0:bb348c97df44 1271 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1272 * @param LineOffset Value between Min_Data=0 and Max_Data=0x3FF
lypinator 0:bb348c97df44 1273 * @retval None
lypinator 0:bb348c97df44 1274 */
lypinator 0:bb348c97df44 1275 __STATIC_INLINE void LL_DMA2D_BGND_SetLineOffset(DMA2D_TypeDef *DMA2Dx, uint32_t LineOffset)
lypinator 0:bb348c97df44 1276 {
lypinator 0:bb348c97df44 1277 MODIFY_REG(DMA2Dx->BGOR, DMA2D_BGOR_LO, LineOffset);
lypinator 0:bb348c97df44 1278 }
lypinator 0:bb348c97df44 1279
lypinator 0:bb348c97df44 1280 /**
lypinator 0:bb348c97df44 1281 * @brief Return DMA2D background line offset, expressed on 14 bits ([13:0] bits).
lypinator 0:bb348c97df44 1282 * @rmtoll BGOR LO LL_DMA2D_BGND_GetLineOffset
lypinator 0:bb348c97df44 1283 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1284 * @retval Background line offset value between Min_Data=0 and Max_Data=0x3FF
lypinator 0:bb348c97df44 1285 */
lypinator 0:bb348c97df44 1286 __STATIC_INLINE uint32_t LL_DMA2D_BGND_GetLineOffset(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1287 {
lypinator 0:bb348c97df44 1288 return (uint32_t)(READ_BIT(DMA2Dx->BGOR, DMA2D_BGOR_LO));
lypinator 0:bb348c97df44 1289 }
lypinator 0:bb348c97df44 1290
lypinator 0:bb348c97df44 1291 /**
lypinator 0:bb348c97df44 1292 * @brief Set DMA2D background color values, expressed on 24 bits ([23:0] bits).
lypinator 0:bb348c97df44 1293 * @rmtoll BGCOLR RED LL_DMA2D_BGND_SetColor
lypinator 0:bb348c97df44 1294 * @rmtoll BGCOLR GREEN LL_DMA2D_BGND_SetColor
lypinator 0:bb348c97df44 1295 * @rmtoll BGCOLR BLUE LL_DMA2D_BGND_SetColor
lypinator 0:bb348c97df44 1296 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1297 * @param Red Value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1298 * @param Green Value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1299 * @param Blue Value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1300 * @retval None
lypinator 0:bb348c97df44 1301 */
lypinator 0:bb348c97df44 1302 __STATIC_INLINE void LL_DMA2D_BGND_SetColor(DMA2D_TypeDef *DMA2Dx, uint32_t Red, uint32_t Green, uint32_t Blue)
lypinator 0:bb348c97df44 1303 {
lypinator 0:bb348c97df44 1304 MODIFY_REG(DMA2Dx->BGCOLR, (DMA2D_BGCOLR_RED | DMA2D_BGCOLR_GREEN | DMA2D_BGCOLR_BLUE), \
lypinator 0:bb348c97df44 1305 ((Red << DMA2D_BGCOLR_RED_Pos) | (Green << DMA2D_BGCOLR_GREEN_Pos) | Blue));
lypinator 0:bb348c97df44 1306 }
lypinator 0:bb348c97df44 1307
lypinator 0:bb348c97df44 1308 /**
lypinator 0:bb348c97df44 1309 * @brief Set DMA2D background red color value, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 1310 * @rmtoll BGCOLR RED LL_DMA2D_BGND_SetRedColor
lypinator 0:bb348c97df44 1311 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1312 * @param Red Value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1313 * @retval None
lypinator 0:bb348c97df44 1314 */
lypinator 0:bb348c97df44 1315 __STATIC_INLINE void LL_DMA2D_BGND_SetRedColor(DMA2D_TypeDef *DMA2Dx, uint32_t Red)
lypinator 0:bb348c97df44 1316 {
lypinator 0:bb348c97df44 1317 MODIFY_REG(DMA2Dx->BGCOLR, DMA2D_BGCOLR_RED, (Red << DMA2D_BGCOLR_RED_Pos));
lypinator 0:bb348c97df44 1318 }
lypinator 0:bb348c97df44 1319
lypinator 0:bb348c97df44 1320 /**
lypinator 0:bb348c97df44 1321 * @brief Return DMA2D background red color value, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 1322 * @rmtoll BGCOLR RED LL_DMA2D_BGND_GetRedColor
lypinator 0:bb348c97df44 1323 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1324 * @retval Red color value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1325 */
lypinator 0:bb348c97df44 1326 __STATIC_INLINE uint32_t LL_DMA2D_BGND_GetRedColor(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1327 {
lypinator 0:bb348c97df44 1328 return (uint32_t)(READ_BIT(DMA2Dx->BGCOLR, DMA2D_BGCOLR_RED) >> DMA2D_BGCOLR_RED_Pos);
lypinator 0:bb348c97df44 1329 }
lypinator 0:bb348c97df44 1330
lypinator 0:bb348c97df44 1331 /**
lypinator 0:bb348c97df44 1332 * @brief Set DMA2D background green color value, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 1333 * @rmtoll BGCOLR GREEN LL_DMA2D_BGND_SetGreenColor
lypinator 0:bb348c97df44 1334 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1335 * @param Green Value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1336 * @retval None
lypinator 0:bb348c97df44 1337 */
lypinator 0:bb348c97df44 1338 __STATIC_INLINE void LL_DMA2D_BGND_SetGreenColor(DMA2D_TypeDef *DMA2Dx, uint32_t Green)
lypinator 0:bb348c97df44 1339 {
lypinator 0:bb348c97df44 1340 MODIFY_REG(DMA2Dx->BGCOLR, DMA2D_BGCOLR_GREEN, (Green << DMA2D_BGCOLR_GREEN_Pos));
lypinator 0:bb348c97df44 1341 }
lypinator 0:bb348c97df44 1342
lypinator 0:bb348c97df44 1343 /**
lypinator 0:bb348c97df44 1344 * @brief Return DMA2D background green color value, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 1345 * @rmtoll BGCOLR GREEN LL_DMA2D_BGND_GetGreenColor
lypinator 0:bb348c97df44 1346 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1347 * @retval Green color value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1348 */
lypinator 0:bb348c97df44 1349 __STATIC_INLINE uint32_t LL_DMA2D_BGND_GetGreenColor(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1350 {
lypinator 0:bb348c97df44 1351 return (uint32_t)(READ_BIT(DMA2Dx->BGCOLR, DMA2D_BGCOLR_GREEN) >> DMA2D_BGCOLR_GREEN_Pos);
lypinator 0:bb348c97df44 1352 }
lypinator 0:bb348c97df44 1353
lypinator 0:bb348c97df44 1354 /**
lypinator 0:bb348c97df44 1355 * @brief Set DMA2D background blue color value, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 1356 * @rmtoll BGCOLR BLUE LL_DMA2D_BGND_SetBlueColor
lypinator 0:bb348c97df44 1357 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1358 * @param Blue Value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1359 * @retval None
lypinator 0:bb348c97df44 1360 */
lypinator 0:bb348c97df44 1361 __STATIC_INLINE void LL_DMA2D_BGND_SetBlueColor(DMA2D_TypeDef *DMA2Dx, uint32_t Blue)
lypinator 0:bb348c97df44 1362 {
lypinator 0:bb348c97df44 1363 MODIFY_REG(DMA2Dx->BGCOLR, DMA2D_BGCOLR_BLUE, Blue);
lypinator 0:bb348c97df44 1364 }
lypinator 0:bb348c97df44 1365
lypinator 0:bb348c97df44 1366 /**
lypinator 0:bb348c97df44 1367 * @brief Return DMA2D background blue color value, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 1368 * @rmtoll BGCOLR BLUE LL_DMA2D_BGND_GetBlueColor
lypinator 0:bb348c97df44 1369 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1370 * @retval Blue color value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1371 */
lypinator 0:bb348c97df44 1372 __STATIC_INLINE uint32_t LL_DMA2D_BGND_GetBlueColor(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1373 {
lypinator 0:bb348c97df44 1374 return (uint32_t)(READ_BIT(DMA2Dx->BGCOLR, DMA2D_BGCOLR_BLUE));
lypinator 0:bb348c97df44 1375 }
lypinator 0:bb348c97df44 1376
lypinator 0:bb348c97df44 1377 /**
lypinator 0:bb348c97df44 1378 * @brief Set DMA2D background CLUT memory address, expressed on 32 bits ([31:0] bits).
lypinator 0:bb348c97df44 1379 * @rmtoll BGCMAR MA LL_DMA2D_BGND_SetCLUTMemAddr
lypinator 0:bb348c97df44 1380 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1381 * @param CLUTMemoryAddress Value between Min_Data=0 and Max_Data=0xFFFFFFFF
lypinator 0:bb348c97df44 1382 * @retval None
lypinator 0:bb348c97df44 1383 */
lypinator 0:bb348c97df44 1384 __STATIC_INLINE void LL_DMA2D_BGND_SetCLUTMemAddr(DMA2D_TypeDef *DMA2Dx, uint32_t CLUTMemoryAddress)
lypinator 0:bb348c97df44 1385 {
lypinator 0:bb348c97df44 1386 LL_DMA2D_WriteReg(DMA2Dx, BGCMAR, CLUTMemoryAddress);
lypinator 0:bb348c97df44 1387 }
lypinator 0:bb348c97df44 1388
lypinator 0:bb348c97df44 1389 /**
lypinator 0:bb348c97df44 1390 * @brief Get DMA2D background CLUT memory address, expressed on 32 bits ([31:0] bits).
lypinator 0:bb348c97df44 1391 * @rmtoll BGCMAR MA LL_DMA2D_BGND_GetCLUTMemAddr
lypinator 0:bb348c97df44 1392 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1393 * @retval Background CLUT memory address value between Min_Data=0 and Max_Data=0xFFFFFFFF
lypinator 0:bb348c97df44 1394 */
lypinator 0:bb348c97df44 1395 __STATIC_INLINE uint32_t LL_DMA2D_BGND_GetCLUTMemAddr(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1396 {
lypinator 0:bb348c97df44 1397 return (uint32_t)(LL_DMA2D_ReadReg(DMA2Dx, BGCMAR));
lypinator 0:bb348c97df44 1398 }
lypinator 0:bb348c97df44 1399
lypinator 0:bb348c97df44 1400 /**
lypinator 0:bb348c97df44 1401 * @brief Set DMA2D background CLUT size, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 1402 * @rmtoll BGPFCCR CS LL_DMA2D_BGND_SetCLUTSize
lypinator 0:bb348c97df44 1403 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1404 * @param CLUTSize Value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1405 * @retval None
lypinator 0:bb348c97df44 1406 */
lypinator 0:bb348c97df44 1407 __STATIC_INLINE void LL_DMA2D_BGND_SetCLUTSize(DMA2D_TypeDef *DMA2Dx, uint32_t CLUTSize)
lypinator 0:bb348c97df44 1408 {
lypinator 0:bb348c97df44 1409 MODIFY_REG(DMA2Dx->BGPFCCR, DMA2D_BGPFCCR_CS, (CLUTSize << DMA2D_BGPFCCR_CS_Pos));
lypinator 0:bb348c97df44 1410 }
lypinator 0:bb348c97df44 1411
lypinator 0:bb348c97df44 1412 /**
lypinator 0:bb348c97df44 1413 * @brief Get DMA2D background CLUT size, expressed on 8 bits ([7:0] bits).
lypinator 0:bb348c97df44 1414 * @rmtoll BGPFCCR CS LL_DMA2D_BGND_GetCLUTSize
lypinator 0:bb348c97df44 1415 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1416 * @retval Background CLUT size value between Min_Data=0 and Max_Data=0xFF
lypinator 0:bb348c97df44 1417 */
lypinator 0:bb348c97df44 1418 __STATIC_INLINE uint32_t LL_DMA2D_BGND_GetCLUTSize(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1419 {
lypinator 0:bb348c97df44 1420 return (uint32_t)(READ_BIT(DMA2Dx->BGPFCCR, DMA2D_BGPFCCR_CS) >> DMA2D_BGPFCCR_CS_Pos);
lypinator 0:bb348c97df44 1421 }
lypinator 0:bb348c97df44 1422
lypinator 0:bb348c97df44 1423 /**
lypinator 0:bb348c97df44 1424 * @brief Set DMA2D background CLUT color mode.
lypinator 0:bb348c97df44 1425 * @rmtoll BGPFCCR CCM LL_DMA2D_BGND_SetCLUTColorMode
lypinator 0:bb348c97df44 1426 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1427 * @param CLUTColorMode This parameter can be one of the following values:
lypinator 0:bb348c97df44 1428 * @arg @ref LL_DMA2D_CLUT_COLOR_MODE_ARGB8888
lypinator 0:bb348c97df44 1429 * @arg @ref LL_DMA2D_CLUT_COLOR_MODE_RGB888
lypinator 0:bb348c97df44 1430 * @retval None
lypinator 0:bb348c97df44 1431 */
lypinator 0:bb348c97df44 1432 __STATIC_INLINE void LL_DMA2D_BGND_SetCLUTColorMode(DMA2D_TypeDef *DMA2Dx, uint32_t CLUTColorMode)
lypinator 0:bb348c97df44 1433 {
lypinator 0:bb348c97df44 1434 MODIFY_REG(DMA2Dx->BGPFCCR, DMA2D_BGPFCCR_CCM, CLUTColorMode);
lypinator 0:bb348c97df44 1435 }
lypinator 0:bb348c97df44 1436
lypinator 0:bb348c97df44 1437 /**
lypinator 0:bb348c97df44 1438 * @brief Return DMA2D background CLUT color mode.
lypinator 0:bb348c97df44 1439 * @rmtoll BGPFCCR CCM LL_DMA2D_BGND_GetCLUTColorMode
lypinator 0:bb348c97df44 1440 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1441 * @retval Returned value can be one of the following values:
lypinator 0:bb348c97df44 1442 * @arg @ref LL_DMA2D_CLUT_COLOR_MODE_ARGB8888
lypinator 0:bb348c97df44 1443 * @arg @ref LL_DMA2D_CLUT_COLOR_MODE_RGB888
lypinator 0:bb348c97df44 1444 */
lypinator 0:bb348c97df44 1445 __STATIC_INLINE uint32_t LL_DMA2D_BGND_GetCLUTColorMode(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1446 {
lypinator 0:bb348c97df44 1447 return (uint32_t)(READ_BIT(DMA2Dx->BGPFCCR, DMA2D_BGPFCCR_CCM));
lypinator 0:bb348c97df44 1448 }
lypinator 0:bb348c97df44 1449
lypinator 0:bb348c97df44 1450 /**
lypinator 0:bb348c97df44 1451 * @}
lypinator 0:bb348c97df44 1452 */
lypinator 0:bb348c97df44 1453
lypinator 0:bb348c97df44 1454 /**
lypinator 0:bb348c97df44 1455 * @}
lypinator 0:bb348c97df44 1456 */
lypinator 0:bb348c97df44 1457
lypinator 0:bb348c97df44 1458
lypinator 0:bb348c97df44 1459 /** @defgroup DMA2D_LL_EF_FLAG_MANAGEMENT Flag Management
lypinator 0:bb348c97df44 1460 * @{
lypinator 0:bb348c97df44 1461 */
lypinator 0:bb348c97df44 1462
lypinator 0:bb348c97df44 1463 /**
lypinator 0:bb348c97df44 1464 * @brief Check if the DMA2D Configuration Error Interrupt Flag is set or not
lypinator 0:bb348c97df44 1465 * @rmtoll ISR CEIF LL_DMA2D_IsActiveFlag_CE
lypinator 0:bb348c97df44 1466 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1467 * @retval State of bit (1 or 0).
lypinator 0:bb348c97df44 1468 */
lypinator 0:bb348c97df44 1469 __STATIC_INLINE uint32_t LL_DMA2D_IsActiveFlag_CE(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1470 {
lypinator 0:bb348c97df44 1471 return (READ_BIT(DMA2Dx->ISR, DMA2D_ISR_CEIF) == (DMA2D_ISR_CEIF));
lypinator 0:bb348c97df44 1472 }
lypinator 0:bb348c97df44 1473
lypinator 0:bb348c97df44 1474 /**
lypinator 0:bb348c97df44 1475 * @brief Check if the DMA2D CLUT Transfer Complete Interrupt Flag is set or not
lypinator 0:bb348c97df44 1476 * @rmtoll ISR CTCIF LL_DMA2D_IsActiveFlag_CTC
lypinator 0:bb348c97df44 1477 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1478 * @retval State of bit (1 or 0).
lypinator 0:bb348c97df44 1479 */
lypinator 0:bb348c97df44 1480 __STATIC_INLINE uint32_t LL_DMA2D_IsActiveFlag_CTC(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1481 {
lypinator 0:bb348c97df44 1482 return (READ_BIT(DMA2Dx->ISR, DMA2D_ISR_CTCIF) == (DMA2D_ISR_CTCIF));
lypinator 0:bb348c97df44 1483 }
lypinator 0:bb348c97df44 1484
lypinator 0:bb348c97df44 1485 /**
lypinator 0:bb348c97df44 1486 * @brief Check if the DMA2D CLUT Access Error Interrupt Flag is set or not
lypinator 0:bb348c97df44 1487 * @rmtoll ISR CAEIF LL_DMA2D_IsActiveFlag_CAE
lypinator 0:bb348c97df44 1488 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1489 * @retval State of bit (1 or 0).
lypinator 0:bb348c97df44 1490 */
lypinator 0:bb348c97df44 1491 __STATIC_INLINE uint32_t LL_DMA2D_IsActiveFlag_CAE(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1492 {
lypinator 0:bb348c97df44 1493 return (READ_BIT(DMA2Dx->ISR, DMA2D_ISR_CAEIF) == (DMA2D_ISR_CAEIF));
lypinator 0:bb348c97df44 1494 }
lypinator 0:bb348c97df44 1495
lypinator 0:bb348c97df44 1496 /**
lypinator 0:bb348c97df44 1497 * @brief Check if the DMA2D Transfer Watermark Interrupt Flag is set or not
lypinator 0:bb348c97df44 1498 * @rmtoll ISR TWIF LL_DMA2D_IsActiveFlag_TW
lypinator 0:bb348c97df44 1499 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1500 * @retval State of bit (1 or 0).
lypinator 0:bb348c97df44 1501 */
lypinator 0:bb348c97df44 1502 __STATIC_INLINE uint32_t LL_DMA2D_IsActiveFlag_TW(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1503 {
lypinator 0:bb348c97df44 1504 return (READ_BIT(DMA2Dx->ISR, DMA2D_ISR_TWIF) == (DMA2D_ISR_TWIF));
lypinator 0:bb348c97df44 1505 }
lypinator 0:bb348c97df44 1506
lypinator 0:bb348c97df44 1507 /**
lypinator 0:bb348c97df44 1508 * @brief Check if the DMA2D Transfer Complete Interrupt Flag is set or not
lypinator 0:bb348c97df44 1509 * @rmtoll ISR TCIF LL_DMA2D_IsActiveFlag_TC
lypinator 0:bb348c97df44 1510 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1511 * @retval State of bit (1 or 0).
lypinator 0:bb348c97df44 1512 */
lypinator 0:bb348c97df44 1513 __STATIC_INLINE uint32_t LL_DMA2D_IsActiveFlag_TC(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1514 {
lypinator 0:bb348c97df44 1515 return (READ_BIT(DMA2Dx->ISR, DMA2D_ISR_TCIF) == (DMA2D_ISR_TCIF));
lypinator 0:bb348c97df44 1516 }
lypinator 0:bb348c97df44 1517
lypinator 0:bb348c97df44 1518 /**
lypinator 0:bb348c97df44 1519 * @brief Check if the DMA2D Transfer Error Interrupt Flag is set or not
lypinator 0:bb348c97df44 1520 * @rmtoll ISR TEIF LL_DMA2D_IsActiveFlag_TE
lypinator 0:bb348c97df44 1521 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1522 * @retval State of bit (1 or 0).
lypinator 0:bb348c97df44 1523 */
lypinator 0:bb348c97df44 1524 __STATIC_INLINE uint32_t LL_DMA2D_IsActiveFlag_TE(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1525 {
lypinator 0:bb348c97df44 1526 return (READ_BIT(DMA2Dx->ISR, DMA2D_ISR_TEIF) == (DMA2D_ISR_TEIF));
lypinator 0:bb348c97df44 1527 }
lypinator 0:bb348c97df44 1528
lypinator 0:bb348c97df44 1529 /**
lypinator 0:bb348c97df44 1530 * @brief Clear DMA2D Configuration Error Interrupt Flag
lypinator 0:bb348c97df44 1531 * @rmtoll IFCR CCEIF LL_DMA2D_ClearFlag_CE
lypinator 0:bb348c97df44 1532 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1533 * @retval None
lypinator 0:bb348c97df44 1534 */
lypinator 0:bb348c97df44 1535 __STATIC_INLINE void LL_DMA2D_ClearFlag_CE(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1536 {
lypinator 0:bb348c97df44 1537 WRITE_REG(DMA2Dx->IFCR, DMA2D_IFCR_CCEIF);
lypinator 0:bb348c97df44 1538 }
lypinator 0:bb348c97df44 1539
lypinator 0:bb348c97df44 1540 /**
lypinator 0:bb348c97df44 1541 * @brief Clear DMA2D CLUT Transfer Complete Interrupt Flag
lypinator 0:bb348c97df44 1542 * @rmtoll IFCR CCTCIF LL_DMA2D_ClearFlag_CTC
lypinator 0:bb348c97df44 1543 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1544 * @retval None
lypinator 0:bb348c97df44 1545 */
lypinator 0:bb348c97df44 1546 __STATIC_INLINE void LL_DMA2D_ClearFlag_CTC(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1547 {
lypinator 0:bb348c97df44 1548 WRITE_REG(DMA2Dx->IFCR, DMA2D_IFCR_CCTCIF);
lypinator 0:bb348c97df44 1549 }
lypinator 0:bb348c97df44 1550
lypinator 0:bb348c97df44 1551 /**
lypinator 0:bb348c97df44 1552 * @brief Clear DMA2D CLUT Access Error Interrupt Flag
lypinator 0:bb348c97df44 1553 * @rmtoll IFCR CAECIF LL_DMA2D_ClearFlag_CAE
lypinator 0:bb348c97df44 1554 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1555 * @retval None
lypinator 0:bb348c97df44 1556 */
lypinator 0:bb348c97df44 1557 __STATIC_INLINE void LL_DMA2D_ClearFlag_CAE(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1558 {
lypinator 0:bb348c97df44 1559 WRITE_REG(DMA2Dx->IFCR, DMA2D_IFCR_CAECIF);
lypinator 0:bb348c97df44 1560 }
lypinator 0:bb348c97df44 1561
lypinator 0:bb348c97df44 1562 /**
lypinator 0:bb348c97df44 1563 * @brief Clear DMA2D Transfer Watermark Interrupt Flag
lypinator 0:bb348c97df44 1564 * @rmtoll IFCR CTWIF LL_DMA2D_ClearFlag_TW
lypinator 0:bb348c97df44 1565 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1566 * @retval None
lypinator 0:bb348c97df44 1567 */
lypinator 0:bb348c97df44 1568 __STATIC_INLINE void LL_DMA2D_ClearFlag_TW(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1569 {
lypinator 0:bb348c97df44 1570 WRITE_REG(DMA2Dx->IFCR, DMA2D_IFCR_CTWIF);
lypinator 0:bb348c97df44 1571 }
lypinator 0:bb348c97df44 1572
lypinator 0:bb348c97df44 1573 /**
lypinator 0:bb348c97df44 1574 * @brief Clear DMA2D Transfer Complete Interrupt Flag
lypinator 0:bb348c97df44 1575 * @rmtoll IFCR CTCIF LL_DMA2D_ClearFlag_TC
lypinator 0:bb348c97df44 1576 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1577 * @retval None
lypinator 0:bb348c97df44 1578 */
lypinator 0:bb348c97df44 1579 __STATIC_INLINE void LL_DMA2D_ClearFlag_TC(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1580 {
lypinator 0:bb348c97df44 1581 WRITE_REG(DMA2Dx->IFCR, DMA2D_IFCR_CTCIF);
lypinator 0:bb348c97df44 1582 }
lypinator 0:bb348c97df44 1583
lypinator 0:bb348c97df44 1584 /**
lypinator 0:bb348c97df44 1585 * @brief Clear DMA2D Transfer Error Interrupt Flag
lypinator 0:bb348c97df44 1586 * @rmtoll IFCR CTEIF LL_DMA2D_ClearFlag_TE
lypinator 0:bb348c97df44 1587 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1588 * @retval None
lypinator 0:bb348c97df44 1589 */
lypinator 0:bb348c97df44 1590 __STATIC_INLINE void LL_DMA2D_ClearFlag_TE(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1591 {
lypinator 0:bb348c97df44 1592 WRITE_REG(DMA2Dx->IFCR, DMA2D_IFCR_CTEIF);
lypinator 0:bb348c97df44 1593 }
lypinator 0:bb348c97df44 1594
lypinator 0:bb348c97df44 1595 /**
lypinator 0:bb348c97df44 1596 * @}
lypinator 0:bb348c97df44 1597 */
lypinator 0:bb348c97df44 1598
lypinator 0:bb348c97df44 1599 /** @defgroup DMA2D_LL_EF_IT_MANAGEMENT Interruption Management
lypinator 0:bb348c97df44 1600 * @{
lypinator 0:bb348c97df44 1601 */
lypinator 0:bb348c97df44 1602
lypinator 0:bb348c97df44 1603 /**
lypinator 0:bb348c97df44 1604 * @brief Enable Configuration Error Interrupt
lypinator 0:bb348c97df44 1605 * @rmtoll CR CEIE LL_DMA2D_EnableIT_CE
lypinator 0:bb348c97df44 1606 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1607 * @retval None
lypinator 0:bb348c97df44 1608 */
lypinator 0:bb348c97df44 1609 __STATIC_INLINE void LL_DMA2D_EnableIT_CE(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1610 {
lypinator 0:bb348c97df44 1611 SET_BIT(DMA2Dx->CR, DMA2D_CR_CEIE);
lypinator 0:bb348c97df44 1612 }
lypinator 0:bb348c97df44 1613
lypinator 0:bb348c97df44 1614 /**
lypinator 0:bb348c97df44 1615 * @brief Enable CLUT Transfer Complete Interrupt
lypinator 0:bb348c97df44 1616 * @rmtoll CR CTCIE LL_DMA2D_EnableIT_CTC
lypinator 0:bb348c97df44 1617 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1618 * @retval None
lypinator 0:bb348c97df44 1619 */
lypinator 0:bb348c97df44 1620 __STATIC_INLINE void LL_DMA2D_EnableIT_CTC(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1621 {
lypinator 0:bb348c97df44 1622 SET_BIT(DMA2Dx->CR, DMA2D_CR_CTCIE);
lypinator 0:bb348c97df44 1623 }
lypinator 0:bb348c97df44 1624
lypinator 0:bb348c97df44 1625 /**
lypinator 0:bb348c97df44 1626 * @brief Enable CLUT Access Error Interrupt
lypinator 0:bb348c97df44 1627 * @rmtoll CR CAEIE LL_DMA2D_EnableIT_CAE
lypinator 0:bb348c97df44 1628 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1629 * @retval None
lypinator 0:bb348c97df44 1630 */
lypinator 0:bb348c97df44 1631 __STATIC_INLINE void LL_DMA2D_EnableIT_CAE(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1632 {
lypinator 0:bb348c97df44 1633 SET_BIT(DMA2Dx->CR, DMA2D_CR_CAEIE);
lypinator 0:bb348c97df44 1634 }
lypinator 0:bb348c97df44 1635
lypinator 0:bb348c97df44 1636 /**
lypinator 0:bb348c97df44 1637 * @brief Enable Transfer Watermark Interrupt
lypinator 0:bb348c97df44 1638 * @rmtoll CR TWIE LL_DMA2D_EnableIT_TW
lypinator 0:bb348c97df44 1639 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1640 * @retval None
lypinator 0:bb348c97df44 1641 */
lypinator 0:bb348c97df44 1642 __STATIC_INLINE void LL_DMA2D_EnableIT_TW(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1643 {
lypinator 0:bb348c97df44 1644 SET_BIT(DMA2Dx->CR, DMA2D_CR_TWIE);
lypinator 0:bb348c97df44 1645 }
lypinator 0:bb348c97df44 1646
lypinator 0:bb348c97df44 1647 /**
lypinator 0:bb348c97df44 1648 * @brief Enable Transfer Complete Interrupt
lypinator 0:bb348c97df44 1649 * @rmtoll CR TCIE LL_DMA2D_EnableIT_TC
lypinator 0:bb348c97df44 1650 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1651 * @retval None
lypinator 0:bb348c97df44 1652 */
lypinator 0:bb348c97df44 1653 __STATIC_INLINE void LL_DMA2D_EnableIT_TC(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1654 {
lypinator 0:bb348c97df44 1655 SET_BIT(DMA2Dx->CR, DMA2D_CR_TCIE);
lypinator 0:bb348c97df44 1656 }
lypinator 0:bb348c97df44 1657
lypinator 0:bb348c97df44 1658 /**
lypinator 0:bb348c97df44 1659 * @brief Enable Transfer Error Interrupt
lypinator 0:bb348c97df44 1660 * @rmtoll CR TEIE LL_DMA2D_EnableIT_TE
lypinator 0:bb348c97df44 1661 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1662 * @retval None
lypinator 0:bb348c97df44 1663 */
lypinator 0:bb348c97df44 1664 __STATIC_INLINE void LL_DMA2D_EnableIT_TE(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1665 {
lypinator 0:bb348c97df44 1666 SET_BIT(DMA2Dx->CR, DMA2D_CR_TEIE);
lypinator 0:bb348c97df44 1667 }
lypinator 0:bb348c97df44 1668
lypinator 0:bb348c97df44 1669 /**
lypinator 0:bb348c97df44 1670 * @brief Disable Configuration Error Interrupt
lypinator 0:bb348c97df44 1671 * @rmtoll CR CEIE LL_DMA2D_DisableIT_CE
lypinator 0:bb348c97df44 1672 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1673 * @retval None
lypinator 0:bb348c97df44 1674 */
lypinator 0:bb348c97df44 1675 __STATIC_INLINE void LL_DMA2D_DisableIT_CE(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1676 {
lypinator 0:bb348c97df44 1677 CLEAR_BIT(DMA2Dx->CR, DMA2D_CR_CEIE);
lypinator 0:bb348c97df44 1678 }
lypinator 0:bb348c97df44 1679
lypinator 0:bb348c97df44 1680 /**
lypinator 0:bb348c97df44 1681 * @brief Disable CLUT Transfer Complete Interrupt
lypinator 0:bb348c97df44 1682 * @rmtoll CR CTCIE LL_DMA2D_DisableIT_CTC
lypinator 0:bb348c97df44 1683 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1684 * @retval None
lypinator 0:bb348c97df44 1685 */
lypinator 0:bb348c97df44 1686 __STATIC_INLINE void LL_DMA2D_DisableIT_CTC(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1687 {
lypinator 0:bb348c97df44 1688 CLEAR_BIT(DMA2Dx->CR, DMA2D_CR_CTCIE);
lypinator 0:bb348c97df44 1689 }
lypinator 0:bb348c97df44 1690
lypinator 0:bb348c97df44 1691 /**
lypinator 0:bb348c97df44 1692 * @brief Disable CLUT Access Error Interrupt
lypinator 0:bb348c97df44 1693 * @rmtoll CR CAEIE LL_DMA2D_DisableIT_CAE
lypinator 0:bb348c97df44 1694 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1695 * @retval None
lypinator 0:bb348c97df44 1696 */
lypinator 0:bb348c97df44 1697 __STATIC_INLINE void LL_DMA2D_DisableIT_CAE(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1698 {
lypinator 0:bb348c97df44 1699 CLEAR_BIT(DMA2Dx->CR, DMA2D_CR_CAEIE);
lypinator 0:bb348c97df44 1700 }
lypinator 0:bb348c97df44 1701
lypinator 0:bb348c97df44 1702 /**
lypinator 0:bb348c97df44 1703 * @brief Disable Transfer Watermark Interrupt
lypinator 0:bb348c97df44 1704 * @rmtoll CR TWIE LL_DMA2D_DisableIT_TW
lypinator 0:bb348c97df44 1705 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1706 * @retval None
lypinator 0:bb348c97df44 1707 */
lypinator 0:bb348c97df44 1708 __STATIC_INLINE void LL_DMA2D_DisableIT_TW(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1709 {
lypinator 0:bb348c97df44 1710 CLEAR_BIT(DMA2Dx->CR, DMA2D_CR_TWIE);
lypinator 0:bb348c97df44 1711 }
lypinator 0:bb348c97df44 1712
lypinator 0:bb348c97df44 1713 /**
lypinator 0:bb348c97df44 1714 * @brief Disable Transfer Complete Interrupt
lypinator 0:bb348c97df44 1715 * @rmtoll CR TCIE LL_DMA2D_DisableIT_TC
lypinator 0:bb348c97df44 1716 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1717 * @retval None
lypinator 0:bb348c97df44 1718 */
lypinator 0:bb348c97df44 1719 __STATIC_INLINE void LL_DMA2D_DisableIT_TC(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1720 {
lypinator 0:bb348c97df44 1721 CLEAR_BIT(DMA2Dx->CR, DMA2D_CR_TCIE);
lypinator 0:bb348c97df44 1722 }
lypinator 0:bb348c97df44 1723
lypinator 0:bb348c97df44 1724 /**
lypinator 0:bb348c97df44 1725 * @brief Disable Transfer Error Interrupt
lypinator 0:bb348c97df44 1726 * @rmtoll CR TEIE LL_DMA2D_DisableIT_TE
lypinator 0:bb348c97df44 1727 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1728 * @retval None
lypinator 0:bb348c97df44 1729 */
lypinator 0:bb348c97df44 1730 __STATIC_INLINE void LL_DMA2D_DisableIT_TE(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1731 {
lypinator 0:bb348c97df44 1732 CLEAR_BIT(DMA2Dx->CR, DMA2D_CR_TEIE);
lypinator 0:bb348c97df44 1733 }
lypinator 0:bb348c97df44 1734
lypinator 0:bb348c97df44 1735 /**
lypinator 0:bb348c97df44 1736 * @brief Check if the DMA2D Configuration Error interrupt source is enabled or disabled.
lypinator 0:bb348c97df44 1737 * @rmtoll CR CEIE LL_DMA2D_IsEnabledIT_CE
lypinator 0:bb348c97df44 1738 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1739 * @retval State of bit (1 or 0).
lypinator 0:bb348c97df44 1740 */
lypinator 0:bb348c97df44 1741 __STATIC_INLINE uint32_t LL_DMA2D_IsEnabledIT_CE(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1742 {
lypinator 0:bb348c97df44 1743 return (READ_BIT(DMA2Dx->CR, DMA2D_CR_CEIE) == (DMA2D_CR_CEIE));
lypinator 0:bb348c97df44 1744 }
lypinator 0:bb348c97df44 1745
lypinator 0:bb348c97df44 1746 /**
lypinator 0:bb348c97df44 1747 * @brief Check if the DMA2D CLUT Transfer Complete interrupt source is enabled or disabled.
lypinator 0:bb348c97df44 1748 * @rmtoll CR CTCIE LL_DMA2D_IsEnabledIT_CTC
lypinator 0:bb348c97df44 1749 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1750 * @retval State of bit (1 or 0).
lypinator 0:bb348c97df44 1751 */
lypinator 0:bb348c97df44 1752 __STATIC_INLINE uint32_t LL_DMA2D_IsEnabledIT_CTC(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1753 {
lypinator 0:bb348c97df44 1754 return (READ_BIT(DMA2Dx->CR, DMA2D_CR_CTCIE) == (DMA2D_CR_CTCIE));
lypinator 0:bb348c97df44 1755 }
lypinator 0:bb348c97df44 1756
lypinator 0:bb348c97df44 1757 /**
lypinator 0:bb348c97df44 1758 * @brief Check if the DMA2D CLUT Access Error interrupt source is enabled or disabled.
lypinator 0:bb348c97df44 1759 * @rmtoll CR CAEIE LL_DMA2D_IsEnabledIT_CAE
lypinator 0:bb348c97df44 1760 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1761 * @retval State of bit (1 or 0).
lypinator 0:bb348c97df44 1762 */
lypinator 0:bb348c97df44 1763 __STATIC_INLINE uint32_t LL_DMA2D_IsEnabledIT_CAE(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1764 {
lypinator 0:bb348c97df44 1765 return (READ_BIT(DMA2Dx->CR, DMA2D_CR_CAEIE) == (DMA2D_CR_CAEIE));
lypinator 0:bb348c97df44 1766 }
lypinator 0:bb348c97df44 1767
lypinator 0:bb348c97df44 1768 /**
lypinator 0:bb348c97df44 1769 * @brief Check if the DMA2D Transfer Watermark interrupt source is enabled or disabled.
lypinator 0:bb348c97df44 1770 * @rmtoll CR TWIE LL_DMA2D_IsEnabledIT_TW
lypinator 0:bb348c97df44 1771 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1772 * @retval State of bit (1 or 0).
lypinator 0:bb348c97df44 1773 */
lypinator 0:bb348c97df44 1774 __STATIC_INLINE uint32_t LL_DMA2D_IsEnabledIT_TW(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1775 {
lypinator 0:bb348c97df44 1776 return (READ_BIT(DMA2Dx->CR, DMA2D_CR_TWIE) == (DMA2D_CR_TWIE));
lypinator 0:bb348c97df44 1777 }
lypinator 0:bb348c97df44 1778
lypinator 0:bb348c97df44 1779 /**
lypinator 0:bb348c97df44 1780 * @brief Check if the DMA2D Transfer Complete interrupt source is enabled or disabled.
lypinator 0:bb348c97df44 1781 * @rmtoll CR TCIE LL_DMA2D_IsEnabledIT_TC
lypinator 0:bb348c97df44 1782 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1783 * @retval State of bit (1 or 0).
lypinator 0:bb348c97df44 1784 */
lypinator 0:bb348c97df44 1785 __STATIC_INLINE uint32_t LL_DMA2D_IsEnabledIT_TC(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1786 {
lypinator 0:bb348c97df44 1787 return (READ_BIT(DMA2Dx->CR, DMA2D_CR_TCIE) == (DMA2D_CR_TCIE));
lypinator 0:bb348c97df44 1788 }
lypinator 0:bb348c97df44 1789
lypinator 0:bb348c97df44 1790 /**
lypinator 0:bb348c97df44 1791 * @brief Check if the DMA2D Transfer Error interrupt source is enabled or disabled.
lypinator 0:bb348c97df44 1792 * @rmtoll CR TEIE LL_DMA2D_IsEnabledIT_TE
lypinator 0:bb348c97df44 1793 * @param DMA2Dx DMA2D Instance
lypinator 0:bb348c97df44 1794 * @retval State of bit (1 or 0).
lypinator 0:bb348c97df44 1795 */
lypinator 0:bb348c97df44 1796 __STATIC_INLINE uint32_t LL_DMA2D_IsEnabledIT_TE(DMA2D_TypeDef *DMA2Dx)
lypinator 0:bb348c97df44 1797 {
lypinator 0:bb348c97df44 1798 return (READ_BIT(DMA2Dx->CR, DMA2D_CR_TEIE) == (DMA2D_CR_TEIE));
lypinator 0:bb348c97df44 1799 }
lypinator 0:bb348c97df44 1800
lypinator 0:bb348c97df44 1801
lypinator 0:bb348c97df44 1802
lypinator 0:bb348c97df44 1803 /**
lypinator 0:bb348c97df44 1804 * @}
lypinator 0:bb348c97df44 1805 */
lypinator 0:bb348c97df44 1806
lypinator 0:bb348c97df44 1807 #if defined(USE_FULL_LL_DRIVER)
lypinator 0:bb348c97df44 1808 /** @defgroup DMA2D_LL_EF_Init_Functions Initialization and De-initialization Functions
lypinator 0:bb348c97df44 1809 * @{
lypinator 0:bb348c97df44 1810 */
lypinator 0:bb348c97df44 1811
lypinator 0:bb348c97df44 1812 ErrorStatus LL_DMA2D_DeInit(DMA2D_TypeDef *DMA2Dx);
lypinator 0:bb348c97df44 1813 ErrorStatus LL_DMA2D_Init(DMA2D_TypeDef *DMA2Dx, LL_DMA2D_InitTypeDef *DMA2D_InitStruct);
lypinator 0:bb348c97df44 1814 void LL_DMA2D_StructInit(LL_DMA2D_InitTypeDef *DMA2D_InitStruct);
lypinator 0:bb348c97df44 1815 void LL_DMA2D_ConfigLayer(DMA2D_TypeDef *DMA2Dx, LL_DMA2D_LayerCfgTypeDef *DMA2D_LayerCfg, uint32_t LayerIdx);
lypinator 0:bb348c97df44 1816 void LL_DMA2D_LayerCfgStructInit(LL_DMA2D_LayerCfgTypeDef *DMA2D_LayerCfg);
lypinator 0:bb348c97df44 1817 void LL_DMA2D_ConfigOutputColor(DMA2D_TypeDef *DMA2Dx, LL_DMA2D_ColorTypeDef *DMA2D_ColorStruct);
lypinator 0:bb348c97df44 1818 uint32_t LL_DMA2D_GetOutputBlueColor(DMA2D_TypeDef *DMA2Dx, uint32_t ColorMode);
lypinator 0:bb348c97df44 1819 uint32_t LL_DMA2D_GetOutputGreenColor(DMA2D_TypeDef *DMA2Dx, uint32_t ColorMode);
lypinator 0:bb348c97df44 1820 uint32_t LL_DMA2D_GetOutputRedColor(DMA2D_TypeDef *DMA2Dx, uint32_t ColorMode);
lypinator 0:bb348c97df44 1821 uint32_t LL_DMA2D_GetOutputAlphaColor(DMA2D_TypeDef *DMA2Dx, uint32_t ColorMode);
lypinator 0:bb348c97df44 1822 void LL_DMA2D_ConfigSize(DMA2D_TypeDef *DMA2Dx, uint32_t NbrOfLines, uint32_t NbrOfPixelsPerLines);
lypinator 0:bb348c97df44 1823
lypinator 0:bb348c97df44 1824 /**
lypinator 0:bb348c97df44 1825 * @}
lypinator 0:bb348c97df44 1826 */
lypinator 0:bb348c97df44 1827 #endif /* USE_FULL_LL_DRIVER */
lypinator 0:bb348c97df44 1828
lypinator 0:bb348c97df44 1829 /**
lypinator 0:bb348c97df44 1830 * @}
lypinator 0:bb348c97df44 1831 */
lypinator 0:bb348c97df44 1832
lypinator 0:bb348c97df44 1833 /**
lypinator 0:bb348c97df44 1834 * @}
lypinator 0:bb348c97df44 1835 */
lypinator 0:bb348c97df44 1836
lypinator 0:bb348c97df44 1837 #endif /* defined (DMA2D) */
lypinator 0:bb348c97df44 1838
lypinator 0:bb348c97df44 1839 /**
lypinator 0:bb348c97df44 1840 * @}
lypinator 0:bb348c97df44 1841 */
lypinator 0:bb348c97df44 1842
lypinator 0:bb348c97df44 1843 #ifdef __cplusplus
lypinator 0:bb348c97df44 1844 }
lypinator 0:bb348c97df44 1845 #endif
lypinator 0:bb348c97df44 1846
lypinator 0:bb348c97df44 1847 #endif /* __STM32F4xx_LL_DMA2D_H */
lypinator 0:bb348c97df44 1848
lypinator 0:bb348c97df44 1849 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/