mbed library sources

Fork of mbed-src by mbed official

Committer:
HiAlgoBoost
Date:
Sun Aug 09 05:18:54 2015 +0000
Revision:
603:f00c7e78e8b4
Parent:
532:fe11edbda85c
Evening of August 8th version

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 235:685d5f11838f 1 /**
mbed_official 235:685d5f11838f 2 ******************************************************************************
mbed_official 235:685d5f11838f 3 * @file stm32f4xx_hal_crc.c
mbed_official 235:685d5f11838f 4 * @author MCD Application Team
mbed_official 532:fe11edbda85c 5 * @version V1.3.0
mbed_official 532:fe11edbda85c 6 * @date 09-March-2015
mbed_official 235:685d5f11838f 7 * @brief CRC HAL module driver.
mbed_official 235:685d5f11838f 8 * This file provides firmware functions to manage the following
mbed_official 235:685d5f11838f 9 * functionalities of the Cyclic Redundancy Check (CRC) peripheral:
mbed_official 235:685d5f11838f 10 * + Initialization and de-initialization functions
mbed_official 235:685d5f11838f 11 * + Peripheral Control functions
mbed_official 235:685d5f11838f 12 * + Peripheral State functions
mbed_official 235:685d5f11838f 13 *
mbed_official 235:685d5f11838f 14 @verbatim
mbed_official 235:685d5f11838f 15 ==============================================================================
mbed_official 235:685d5f11838f 16 ##### How to use this driver #####
mbed_official 235:685d5f11838f 17 ==============================================================================
mbed_official 235:685d5f11838f 18 [..]
mbed_official 235:685d5f11838f 19 The CRC HAL driver can be used as follows:
mbed_official 235:685d5f11838f 20
mbed_official 532:fe11edbda85c 21 (#) Enable CRC AHB clock using __HAL_RCC_CRC_CLK_ENABLE();
mbed_official 235:685d5f11838f 22
mbed_official 235:685d5f11838f 23 (#) Use HAL_CRC_Accumulate() function to compute the CRC value of
mbed_official 235:685d5f11838f 24 a 32-bit data buffer using combination of the previous CRC value
mbed_official 235:685d5f11838f 25 and the new one.
mbed_official 235:685d5f11838f 26
mbed_official 235:685d5f11838f 27 (#) Use HAL_CRC_Calculate() function to compute the CRC Value of
mbed_official 235:685d5f11838f 28 a new 32-bit data buffer. This function resets the CRC computation
mbed_official 235:685d5f11838f 29 unit before starting the computation to avoid getting wrong CRC values.
mbed_official 235:685d5f11838f 30
mbed_official 235:685d5f11838f 31 @endverbatim
mbed_official 235:685d5f11838f 32 ******************************************************************************
mbed_official 235:685d5f11838f 33 * @attention
mbed_official 235:685d5f11838f 34 *
mbed_official 532:fe11edbda85c 35 * <h2><center>&copy; COPYRIGHT(c) 2015 STMicroelectronics</center></h2>
mbed_official 235:685d5f11838f 36 *
mbed_official 235:685d5f11838f 37 * Redistribution and use in source and binary forms, with or without modification,
mbed_official 235:685d5f11838f 38 * are permitted provided that the following conditions are met:
mbed_official 235:685d5f11838f 39 * 1. Redistributions of source code must retain the above copyright notice,
mbed_official 235:685d5f11838f 40 * this list of conditions and the following disclaimer.
mbed_official 235:685d5f11838f 41 * 2. Redistributions in binary form must reproduce the above copyright notice,
mbed_official 235:685d5f11838f 42 * this list of conditions and the following disclaimer in the documentation
mbed_official 235:685d5f11838f 43 * and/or other materials provided with the distribution.
mbed_official 235:685d5f11838f 44 * 3. Neither the name of STMicroelectronics nor the names of its contributors
mbed_official 235:685d5f11838f 45 * may be used to endorse or promote products derived from this software
mbed_official 235:685d5f11838f 46 * without specific prior written permission.
mbed_official 235:685d5f11838f 47 *
mbed_official 235:685d5f11838f 48 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
mbed_official 235:685d5f11838f 49 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
mbed_official 235:685d5f11838f 50 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
mbed_official 235:685d5f11838f 51 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
mbed_official 235:685d5f11838f 52 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
mbed_official 235:685d5f11838f 53 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
mbed_official 235:685d5f11838f 54 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
mbed_official 235:685d5f11838f 55 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
mbed_official 235:685d5f11838f 56 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
mbed_official 235:685d5f11838f 57 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
mbed_official 235:685d5f11838f 58 *
mbed_official 235:685d5f11838f 59 ******************************************************************************
mbed_official 235:685d5f11838f 60 */
mbed_official 235:685d5f11838f 61
mbed_official 235:685d5f11838f 62 /* Includes ------------------------------------------------------------------*/
mbed_official 235:685d5f11838f 63 #include "stm32f4xx_hal.h"
mbed_official 235:685d5f11838f 64
mbed_official 235:685d5f11838f 65 /** @addtogroup STM32F4xx_HAL_Driver
mbed_official 235:685d5f11838f 66 * @{
mbed_official 235:685d5f11838f 67 */
mbed_official 235:685d5f11838f 68
mbed_official 532:fe11edbda85c 69 /** @addtogroup CRC
mbed_official 235:685d5f11838f 70 * @{
mbed_official 235:685d5f11838f 71 */
mbed_official 235:685d5f11838f 72
mbed_official 235:685d5f11838f 73 #ifdef HAL_CRC_MODULE_ENABLED
mbed_official 235:685d5f11838f 74
mbed_official 235:685d5f11838f 75 /* Private typedef -----------------------------------------------------------*/
mbed_official 235:685d5f11838f 76 /* Private define ------------------------------------------------------------*/
mbed_official 235:685d5f11838f 77 /* Private macro -------------------------------------------------------------*/
mbed_official 235:685d5f11838f 78 /* Private variables ---------------------------------------------------------*/
mbed_official 235:685d5f11838f 79 /* Private function prototypes -----------------------------------------------*/
mbed_official 235:685d5f11838f 80 /* Private functions ---------------------------------------------------------*/
mbed_official 532:fe11edbda85c 81 /* Exported functions --------------------------------------------------------*/
mbed_official 235:685d5f11838f 82
mbed_official 532:fe11edbda85c 83 /** @addtogroup CRC_Exported_Functions
mbed_official 235:685d5f11838f 84 * @{
mbed_official 235:685d5f11838f 85 */
mbed_official 235:685d5f11838f 86
mbed_official 532:fe11edbda85c 87 /** @addtogroup CRC_Exported_Functions_Group1
mbed_official 532:fe11edbda85c 88 * @brief Initialization and de-initialization functions
mbed_official 235:685d5f11838f 89 *
mbed_official 532:fe11edbda85c 90 @verbatim
mbed_official 235:685d5f11838f 91 ==============================================================================
mbed_official 235:685d5f11838f 92 ##### Initialization and de-initialization functions #####
mbed_official 235:685d5f11838f 93 ==============================================================================
mbed_official 235:685d5f11838f 94 [..] This section provides functions allowing to:
mbed_official 235:685d5f11838f 95 (+) Initialize the CRC according to the specified parameters
mbed_official 235:685d5f11838f 96 in the CRC_InitTypeDef and create the associated handle
mbed_official 235:685d5f11838f 97 (+) DeInitialize the CRC peripheral
mbed_official 235:685d5f11838f 98 (+) Initialize the CRC MSP
mbed_official 235:685d5f11838f 99 (+) DeInitialize CRC MSP
mbed_official 235:685d5f11838f 100
mbed_official 235:685d5f11838f 101 @endverbatim
mbed_official 235:685d5f11838f 102 * @{
mbed_official 235:685d5f11838f 103 */
mbed_official 235:685d5f11838f 104
mbed_official 235:685d5f11838f 105 /**
mbed_official 235:685d5f11838f 106 * @brief Initializes the CRC according to the specified
mbed_official 235:685d5f11838f 107 * parameters in the CRC_InitTypeDef and creates the associated handle.
mbed_official 235:685d5f11838f 108 * @param hcrc: pointer to a CRC_HandleTypeDef structure that contains
mbed_official 235:685d5f11838f 109 * the configuration information for CRC
mbed_official 235:685d5f11838f 110 * @retval HAL status
mbed_official 235:685d5f11838f 111 */
mbed_official 235:685d5f11838f 112 HAL_StatusTypeDef HAL_CRC_Init(CRC_HandleTypeDef *hcrc)
mbed_official 235:685d5f11838f 113 {
mbed_official 235:685d5f11838f 114 /* Check the CRC handle allocation */
mbed_official 352:95e80f5e68f6 115 if(hcrc == HAL_NULL)
mbed_official 235:685d5f11838f 116 {
mbed_official 235:685d5f11838f 117 return HAL_ERROR;
mbed_official 235:685d5f11838f 118 }
mbed_official 235:685d5f11838f 119
mbed_official 235:685d5f11838f 120 /* Check the parameters */
mbed_official 235:685d5f11838f 121 assert_param(IS_CRC_ALL_INSTANCE(hcrc->Instance));
mbed_official 235:685d5f11838f 122
mbed_official 235:685d5f11838f 123 if(hcrc->State == HAL_CRC_STATE_RESET)
mbed_official 235:685d5f11838f 124 {
mbed_official 532:fe11edbda85c 125 /* Allocate lock resource and initialize it */
mbed_official 532:fe11edbda85c 126 hcrc->Lock = HAL_UNLOCKED;
mbed_official 235:685d5f11838f 127 /* Init the low level hardware */
mbed_official 235:685d5f11838f 128 HAL_CRC_MspInit(hcrc);
mbed_official 235:685d5f11838f 129 }
mbed_official 235:685d5f11838f 130
mbed_official 235:685d5f11838f 131 /* Change CRC peripheral state */
mbed_official 235:685d5f11838f 132 hcrc->State = HAL_CRC_STATE_BUSY;
mbed_official 235:685d5f11838f 133
mbed_official 235:685d5f11838f 134 /* Change CRC peripheral state */
mbed_official 235:685d5f11838f 135 hcrc->State = HAL_CRC_STATE_READY;
mbed_official 235:685d5f11838f 136
mbed_official 235:685d5f11838f 137 /* Return function status */
mbed_official 235:685d5f11838f 138 return HAL_OK;
mbed_official 235:685d5f11838f 139 }
mbed_official 235:685d5f11838f 140
mbed_official 235:685d5f11838f 141 /**
mbed_official 235:685d5f11838f 142 * @brief DeInitializes the CRC peripheral.
mbed_official 235:685d5f11838f 143 * @param hcrc: pointer to a CRC_HandleTypeDef structure that contains
mbed_official 235:685d5f11838f 144 * the configuration information for CRC
mbed_official 235:685d5f11838f 145 * @retval HAL status
mbed_official 235:685d5f11838f 146 */
mbed_official 235:685d5f11838f 147 HAL_StatusTypeDef HAL_CRC_DeInit(CRC_HandleTypeDef *hcrc)
mbed_official 235:685d5f11838f 148 {
mbed_official 235:685d5f11838f 149 /* Check the CRC handle allocation */
mbed_official 352:95e80f5e68f6 150 if(hcrc == HAL_NULL)
mbed_official 235:685d5f11838f 151 {
mbed_official 235:685d5f11838f 152 return HAL_ERROR;
mbed_official 235:685d5f11838f 153 }
mbed_official 235:685d5f11838f 154
mbed_official 235:685d5f11838f 155 /* Check the parameters */
mbed_official 235:685d5f11838f 156 assert_param(IS_CRC_ALL_INSTANCE(hcrc->Instance));
mbed_official 235:685d5f11838f 157
mbed_official 235:685d5f11838f 158 /* Change CRC peripheral state */
mbed_official 235:685d5f11838f 159 hcrc->State = HAL_CRC_STATE_BUSY;
mbed_official 235:685d5f11838f 160
mbed_official 235:685d5f11838f 161 /* DeInit the low level hardware */
mbed_official 235:685d5f11838f 162 HAL_CRC_MspDeInit(hcrc);
mbed_official 235:685d5f11838f 163
mbed_official 235:685d5f11838f 164 /* Change CRC peripheral state */
mbed_official 235:685d5f11838f 165 hcrc->State = HAL_CRC_STATE_RESET;
mbed_official 235:685d5f11838f 166
mbed_official 235:685d5f11838f 167 /* Release Lock */
mbed_official 235:685d5f11838f 168 __HAL_UNLOCK(hcrc);
mbed_official 235:685d5f11838f 169
mbed_official 235:685d5f11838f 170 /* Return function status */
mbed_official 235:685d5f11838f 171 return HAL_OK;
mbed_official 235:685d5f11838f 172 }
mbed_official 235:685d5f11838f 173
mbed_official 235:685d5f11838f 174 /**
mbed_official 235:685d5f11838f 175 * @brief Initializes the CRC MSP.
mbed_official 235:685d5f11838f 176 * @param hcrc: pointer to a CRC_HandleTypeDef structure that contains
mbed_official 235:685d5f11838f 177 * the configuration information for CRC
mbed_official 235:685d5f11838f 178 * @retval None
mbed_official 235:685d5f11838f 179 */
mbed_official 235:685d5f11838f 180 __weak void HAL_CRC_MspInit(CRC_HandleTypeDef *hcrc)
mbed_official 235:685d5f11838f 181 {
mbed_official 235:685d5f11838f 182 /* NOTE : This function Should not be modified, when the callback is needed,
mbed_official 235:685d5f11838f 183 the HAL_CRC_MspInit could be implemented in the user file
mbed_official 235:685d5f11838f 184 */
mbed_official 235:685d5f11838f 185 }
mbed_official 235:685d5f11838f 186
mbed_official 235:685d5f11838f 187 /**
mbed_official 235:685d5f11838f 188 * @brief DeInitializes the CRC MSP.
mbed_official 235:685d5f11838f 189 * @param hcrc: pointer to a CRC_HandleTypeDef structure that contains
mbed_official 235:685d5f11838f 190 * the configuration information for CRC
mbed_official 235:685d5f11838f 191 * @retval None
mbed_official 235:685d5f11838f 192 */
mbed_official 235:685d5f11838f 193 __weak void HAL_CRC_MspDeInit(CRC_HandleTypeDef *hcrc)
mbed_official 235:685d5f11838f 194 {
mbed_official 235:685d5f11838f 195 /* NOTE : This function Should not be modified, when the callback is needed,
mbed_official 235:685d5f11838f 196 the HAL_CRC_MspDeInit could be implemented in the user file
mbed_official 235:685d5f11838f 197 */
mbed_official 235:685d5f11838f 198 }
mbed_official 235:685d5f11838f 199
mbed_official 235:685d5f11838f 200 /**
mbed_official 235:685d5f11838f 201 * @}
mbed_official 532:fe11edbda85c 202 */
mbed_official 235:685d5f11838f 203
mbed_official 532:fe11edbda85c 204 /** @addtogroup CRC_Exported_Functions_Group2
mbed_official 532:fe11edbda85c 205 * @brief Peripheral Control functions
mbed_official 235:685d5f11838f 206 *
mbed_official 532:fe11edbda85c 207 @verbatim
mbed_official 235:685d5f11838f 208 ==============================================================================
mbed_official 235:685d5f11838f 209 ##### Peripheral Control functions #####
mbed_official 235:685d5f11838f 210 ==============================================================================
mbed_official 235:685d5f11838f 211 [..] This section provides functions allowing to:
mbed_official 235:685d5f11838f 212 (+) Compute the 32-bit CRC value of 32-bit data buffer,
mbed_official 235:685d5f11838f 213 using combination of the previous CRC value and the new one.
mbed_official 235:685d5f11838f 214 (+) Compute the 32-bit CRC value of 32-bit data buffer,
mbed_official 235:685d5f11838f 215 independently of the previous CRC value.
mbed_official 235:685d5f11838f 216
mbed_official 235:685d5f11838f 217 @endverbatim
mbed_official 235:685d5f11838f 218 * @{
mbed_official 235:685d5f11838f 219 */
mbed_official 235:685d5f11838f 220
mbed_official 235:685d5f11838f 221 /**
mbed_official 235:685d5f11838f 222 * @brief Computes the 32-bit CRC of 32-bit data buffer using combination
mbed_official 235:685d5f11838f 223 * of the previous CRC value and the new one.
mbed_official 235:685d5f11838f 224 * @param hcrc: pointer to a CRC_HandleTypeDef structure that contains
mbed_official 235:685d5f11838f 225 * the configuration information for CRC
mbed_official 235:685d5f11838f 226 * @param pBuffer: pointer to the buffer containing the data to be computed
mbed_official 235:685d5f11838f 227 * @param BufferLength: length of the buffer to be computed
mbed_official 235:685d5f11838f 228 * @retval 32-bit CRC
mbed_official 235:685d5f11838f 229 */
mbed_official 235:685d5f11838f 230 uint32_t HAL_CRC_Accumulate(CRC_HandleTypeDef *hcrc, uint32_t pBuffer[], uint32_t BufferLength)
mbed_official 235:685d5f11838f 231 {
mbed_official 235:685d5f11838f 232 uint32_t index = 0;
mbed_official 235:685d5f11838f 233
mbed_official 235:685d5f11838f 234 /* Process Locked */
mbed_official 235:685d5f11838f 235 __HAL_LOCK(hcrc);
mbed_official 235:685d5f11838f 236
mbed_official 235:685d5f11838f 237 /* Change CRC peripheral state */
mbed_official 235:685d5f11838f 238 hcrc->State = HAL_CRC_STATE_BUSY;
mbed_official 235:685d5f11838f 239
mbed_official 235:685d5f11838f 240 /* Enter Data to the CRC calculator */
mbed_official 235:685d5f11838f 241 for(index = 0; index < BufferLength; index++)
mbed_official 235:685d5f11838f 242 {
mbed_official 235:685d5f11838f 243 hcrc->Instance->DR = pBuffer[index];
mbed_official 235:685d5f11838f 244 }
mbed_official 235:685d5f11838f 245
mbed_official 235:685d5f11838f 246 /* Change CRC peripheral state */
mbed_official 235:685d5f11838f 247 hcrc->State = HAL_CRC_STATE_READY;
mbed_official 235:685d5f11838f 248
mbed_official 235:685d5f11838f 249 /* Process Unlocked */
mbed_official 235:685d5f11838f 250 __HAL_UNLOCK(hcrc);
mbed_official 235:685d5f11838f 251
mbed_official 235:685d5f11838f 252 /* Return the CRC computed value */
mbed_official 235:685d5f11838f 253 return hcrc->Instance->DR;
mbed_official 235:685d5f11838f 254 }
mbed_official 235:685d5f11838f 255
mbed_official 235:685d5f11838f 256 /**
mbed_official 235:685d5f11838f 257 * @brief Computes the 32-bit CRC of 32-bit data buffer independently
mbed_official 235:685d5f11838f 258 * of the previous CRC value.
mbed_official 235:685d5f11838f 259 * @param hcrc: pointer to a CRC_HandleTypeDef structure that contains
mbed_official 235:685d5f11838f 260 * the configuration information for CRC
mbed_official 235:685d5f11838f 261 * @param pBuffer: Pointer to the buffer containing the data to be computed
mbed_official 235:685d5f11838f 262 * @param BufferLength: Length of the buffer to be computed
mbed_official 235:685d5f11838f 263 * @retval 32-bit CRC
mbed_official 235:685d5f11838f 264 */
mbed_official 235:685d5f11838f 265 uint32_t HAL_CRC_Calculate(CRC_HandleTypeDef *hcrc, uint32_t pBuffer[], uint32_t BufferLength)
mbed_official 235:685d5f11838f 266 {
mbed_official 235:685d5f11838f 267 uint32_t index = 0;
mbed_official 235:685d5f11838f 268
mbed_official 235:685d5f11838f 269 /* Process Locked */
mbed_official 235:685d5f11838f 270 __HAL_LOCK(hcrc);
mbed_official 235:685d5f11838f 271
mbed_official 235:685d5f11838f 272 /* Change CRC peripheral state */
mbed_official 235:685d5f11838f 273 hcrc->State = HAL_CRC_STATE_BUSY;
mbed_official 235:685d5f11838f 274
mbed_official 235:685d5f11838f 275 /* Reset CRC Calculation Unit */
mbed_official 235:685d5f11838f 276 __HAL_CRC_DR_RESET(hcrc);
mbed_official 235:685d5f11838f 277
mbed_official 235:685d5f11838f 278 /* Enter Data to the CRC calculator */
mbed_official 235:685d5f11838f 279 for(index = 0; index < BufferLength; index++)
mbed_official 235:685d5f11838f 280 {
mbed_official 235:685d5f11838f 281 hcrc->Instance->DR = pBuffer[index];
mbed_official 235:685d5f11838f 282 }
mbed_official 235:685d5f11838f 283
mbed_official 235:685d5f11838f 284 /* Change CRC peripheral state */
mbed_official 235:685d5f11838f 285 hcrc->State = HAL_CRC_STATE_READY;
mbed_official 235:685d5f11838f 286
mbed_official 235:685d5f11838f 287 /* Process Unlocked */
mbed_official 235:685d5f11838f 288 __HAL_UNLOCK(hcrc);
mbed_official 235:685d5f11838f 289
mbed_official 235:685d5f11838f 290 /* Return the CRC computed value */
mbed_official 235:685d5f11838f 291 return hcrc->Instance->DR;
mbed_official 235:685d5f11838f 292 }
mbed_official 235:685d5f11838f 293
mbed_official 235:685d5f11838f 294 /**
mbed_official 235:685d5f11838f 295 * @}
mbed_official 532:fe11edbda85c 296 */
mbed_official 235:685d5f11838f 297
mbed_official 532:fe11edbda85c 298
mbed_official 532:fe11edbda85c 299 /** @addtogroup CRC_Exported_Functions_Group3
mbed_official 532:fe11edbda85c 300 * @brief Peripheral State functions
mbed_official 235:685d5f11838f 301 *
mbed_official 235:685d5f11838f 302 @verbatim
mbed_official 235:685d5f11838f 303 ==============================================================================
mbed_official 235:685d5f11838f 304 ##### Peripheral State functions #####
mbed_official 235:685d5f11838f 305 ==============================================================================
mbed_official 235:685d5f11838f 306 [..]
mbed_official 235:685d5f11838f 307 This subsection permits to get in run-time the status of the peripheral
mbed_official 235:685d5f11838f 308 and the data flow.
mbed_official 235:685d5f11838f 309
mbed_official 235:685d5f11838f 310 @endverbatim
mbed_official 235:685d5f11838f 311 * @{
mbed_official 235:685d5f11838f 312 */
mbed_official 235:685d5f11838f 313
mbed_official 235:685d5f11838f 314 /**
mbed_official 235:685d5f11838f 315 * @brief Returns the CRC state.
mbed_official 235:685d5f11838f 316 * @param hcrc: pointer to a CRC_HandleTypeDef structure that contains
mbed_official 235:685d5f11838f 317 * the configuration information for CRC
mbed_official 235:685d5f11838f 318 * @retval HAL state
mbed_official 235:685d5f11838f 319 */
mbed_official 235:685d5f11838f 320 HAL_CRC_StateTypeDef HAL_CRC_GetState(CRC_HandleTypeDef *hcrc)
mbed_official 235:685d5f11838f 321 {
mbed_official 235:685d5f11838f 322 return hcrc->State;
mbed_official 235:685d5f11838f 323 }
mbed_official 235:685d5f11838f 324
mbed_official 235:685d5f11838f 325 /**
mbed_official 235:685d5f11838f 326 * @}
mbed_official 235:685d5f11838f 327 */
mbed_official 235:685d5f11838f 328
mbed_official 235:685d5f11838f 329 /**
mbed_official 235:685d5f11838f 330 * @}
mbed_official 235:685d5f11838f 331 */
mbed_official 235:685d5f11838f 332
mbed_official 235:685d5f11838f 333 #endif /* HAL_CRC_MODULE_ENABLED */
mbed_official 235:685d5f11838f 334 /**
mbed_official 235:685d5f11838f 335 * @}
mbed_official 235:685d5f11838f 336 */
mbed_official 235:685d5f11838f 337
mbed_official 235:685d5f11838f 338 /**
mbed_official 235:685d5f11838f 339 * @}
mbed_official 235:685d5f11838f 340 */
mbed_official 235:685d5f11838f 341
mbed_official 235:685d5f11838f 342 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/