The official Mbed 2 C/C++ SDK provides the software platform and libraries to build your applications.

Dependents:   hello SerialTestv11 SerialTestv12 Sierpinski ... more

mbed 2

This is the mbed 2 library. If you'd like to learn about Mbed OS please see the mbed-os docs.

Committer:
AnnaBridge
Date:
Wed Feb 20 20:53:29 2019 +0000
Revision:
172:65be27845400
mbed library release version 165

Who changed what in which revision?

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