STM32L486xx HAL User Manual
Data Structures | Defines | Enumerations | Functions
stm32l4xx_hal_crc.h File Reference

Header file of CRC HAL module. More...

#include "stm32l4xx_hal_def.h"
#include "stm32l4xx_hal_crc_ex.h"

Go to the source code of this file.

Data Structures

struct  CRC_InitTypeDef
 CRC Init Structure definition. More...
struct  CRC_HandleTypeDef
 CRC Handle Structure definition. More...

Defines

#define DEFAULT_CRC32_POLY   0x04C11DB7U
#define DEFAULT_CRC_INITVALUE   0xFFFFFFFFU
#define DEFAULT_POLYNOMIAL_ENABLE   ((uint8_t)0x00U)
#define DEFAULT_POLYNOMIAL_DISABLE   ((uint8_t)0x01U)
#define DEFAULT_INIT_VALUE_ENABLE   ((uint8_t)0x00U)
#define DEFAULT_INIT_VALUE_DISABLE   ((uint8_t)0x01U)
#define CRC_POLYLENGTH_32B   0x00000000U
#define CRC_POLYLENGTH_16B   CRC_CR_POLYSIZE_0
#define CRC_POLYLENGTH_8B   CRC_CR_POLYSIZE_1
#define CRC_POLYLENGTH_7B   CRC_CR_POLYSIZE
#define HAL_CRC_LENGTH_32B   32U
#define HAL_CRC_LENGTH_16B   16U
#define HAL_CRC_LENGTH_8B   8U
#define HAL_CRC_LENGTH_7B   7U
#define CRC_INPUTDATA_FORMAT_UNDEFINED   0x00000000U
#define CRC_INPUTDATA_FORMAT_BYTES   0x00000001U
#define CRC_INPUTDATA_FORMAT_HALFWORDS   0x00000002U
#define CRC_INPUTDATA_FORMAT_WORDS   0x00000003U
#define HAL_CRC_Input_Data_Reverse   HAL_CRCEx_Input_Data_Reverse
#define HAL_CRC_Output_Data_Reverse   HAL_CRCEx_Output_Data_Reverse
#define __HAL_CRC_RESET_HANDLE_STATE(__HANDLE__)   ((__HANDLE__)->State = HAL_CRC_STATE_RESET)
 Reset CRC handle state.
#define __HAL_CRC_DR_RESET(__HANDLE__)   ((__HANDLE__)->Instance->CR |= CRC_CR_RESET)
 Reset CRC Data Register.
#define __HAL_CRC_INITIALCRCVALUE_CONFIG(__HANDLE__, __INIT__)   ((__HANDLE__)->Instance->INIT = (__INIT__))
 Set CRC INIT non-default value.
#define __HAL_CRC_SET_IDR(__HANDLE__, __VALUE__)   (WRITE_REG((__HANDLE__)->Instance->IDR, (__VALUE__)))
 Store data in the Independent Data (ID) register.
#define __HAL_CRC_GET_IDR(__HANDLE__)   (((__HANDLE__)->Instance->IDR) & CRC_IDR_IDR)
 Return the data stored in the Independent Data (ID) register.
#define IS_DEFAULT_POLYNOMIAL(DEFAULT)
#define IS_DEFAULT_INIT_VALUE(VALUE)
#define IS_CRC_POL_LENGTH(LENGTH)
#define IS_CRC_INPUTDATA_FORMAT(FORMAT)

Enumerations

enum  HAL_CRC_StateTypeDef {
  HAL_CRC_STATE_RESET = 0x00U, HAL_CRC_STATE_READY = 0x01U, HAL_CRC_STATE_BUSY = 0x02U, HAL_CRC_STATE_TIMEOUT = 0x03U,
  HAL_CRC_STATE_ERROR = 0x04U
}
 CRC HAL State Structure definition. More...

Functions

HAL_StatusTypeDef HAL_CRC_Init (CRC_HandleTypeDef *hcrc)
 Initialize the CRC according to the specified parameters in the CRC_InitTypeDef and create the associated handle.
HAL_StatusTypeDef HAL_CRC_DeInit (CRC_HandleTypeDef *hcrc)
 DeInitialize the CRC peripheral.
__weak void HAL_CRC_MspInit (CRC_HandleTypeDef *hcrc)
 Initializes the CRC MSP.
__weak void HAL_CRC_MspDeInit (CRC_HandleTypeDef *hcrc)
 DeInitialize the CRC MSP.
uint32_t HAL_CRC_Accumulate (CRC_HandleTypeDef *hcrc, uint32_t pBuffer[], uint32_t BufferLength)
 Compute the 7, 8, 16 or 32-bit CRC value of an 8, 16 or 32-bit data buffer starting with the previously computed CRC as initialization value.
uint32_t HAL_CRC_Calculate (CRC_HandleTypeDef *hcrc, uint32_t pBuffer[], uint32_t BufferLength)
 Compute the 7, 8, 16 or 32-bit CRC value of an 8, 16 or 32-bit data buffer starting with hcrc->Instance->INIT as initialization value.
HAL_CRC_StateTypeDef HAL_CRC_GetState (CRC_HandleTypeDef *hcrc)
 Return the CRC handle state.

Detailed Description

Header file of CRC HAL module.

Author:
MCD Application Team
Attention:

© COPYRIGHT(c) 2017 STMicroelectronics

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of STMicroelectronics nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Definition in file stm32l4xx_hal_crc.h.