pro vyuku PSS v Jecne

Committer:
vladvana
Date:
Sun Sep 24 12:31:52 2017 +0000
Revision:
0:23d1f73bf130
podklady pro cviceni z PSS

Who changed what in which revision?

UserRevisionLine numberNew contents of line
vladvana 0:23d1f73bf130 1 /**
vladvana 0:23d1f73bf130 2 ******************************************************************************
vladvana 0:23d1f73bf130 3 * @file stm32f1xx_hal_crc.h
vladvana 0:23d1f73bf130 4 * @author MCD Application Team
vladvana 0:23d1f73bf130 5 * @version V1.0.0
vladvana 0:23d1f73bf130 6 * @date 15-December-2014
vladvana 0:23d1f73bf130 7 * @brief Header file of CRC HAL module.
vladvana 0:23d1f73bf130 8 ******************************************************************************
vladvana 0:23d1f73bf130 9 * @attention
vladvana 0:23d1f73bf130 10 *
vladvana 0:23d1f73bf130 11 * <h2><center>&copy; COPYRIGHT(c) 2014 STMicroelectronics</center></h2>
vladvana 0:23d1f73bf130 12 *
vladvana 0:23d1f73bf130 13 * Redistribution and use in source and binary forms, with or without modification,
vladvana 0:23d1f73bf130 14 * are permitted provided that the following conditions are met:
vladvana 0:23d1f73bf130 15 * 1. Redistributions of source code must retain the above copyright notice,
vladvana 0:23d1f73bf130 16 * this list of conditions and the following disclaimer.
vladvana 0:23d1f73bf130 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
vladvana 0:23d1f73bf130 18 * this list of conditions and the following disclaimer in the documentation
vladvana 0:23d1f73bf130 19 * and/or other materials provided with the distribution.
vladvana 0:23d1f73bf130 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
vladvana 0:23d1f73bf130 21 * may be used to endorse or promote products derived from this software
vladvana 0:23d1f73bf130 22 * without specific prior written permission.
vladvana 0:23d1f73bf130 23 *
vladvana 0:23d1f73bf130 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
vladvana 0:23d1f73bf130 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
vladvana 0:23d1f73bf130 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
vladvana 0:23d1f73bf130 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
vladvana 0:23d1f73bf130 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
vladvana 0:23d1f73bf130 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
vladvana 0:23d1f73bf130 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
vladvana 0:23d1f73bf130 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
vladvana 0:23d1f73bf130 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
vladvana 0:23d1f73bf130 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
vladvana 0:23d1f73bf130 34 *
vladvana 0:23d1f73bf130 35 ******************************************************************************
vladvana 0:23d1f73bf130 36 */
vladvana 0:23d1f73bf130 37
vladvana 0:23d1f73bf130 38 /* Define to prevent recursive inclusion -------------------------------------*/
vladvana 0:23d1f73bf130 39 #ifndef __STM32F1xx_HAL_CRC_H
vladvana 0:23d1f73bf130 40 #define __STM32F1xx_HAL_CRC_H
vladvana 0:23d1f73bf130 41
vladvana 0:23d1f73bf130 42 #ifdef __cplusplus
vladvana 0:23d1f73bf130 43 extern "C" {
vladvana 0:23d1f73bf130 44 #endif
vladvana 0:23d1f73bf130 45
vladvana 0:23d1f73bf130 46 /* Includes ------------------------------------------------------------------*/
vladvana 0:23d1f73bf130 47 #include "stm32f1xx_hal_def.h"
vladvana 0:23d1f73bf130 48
vladvana 0:23d1f73bf130 49 /** @addtogroup STM32F1xx_HAL_Driver
vladvana 0:23d1f73bf130 50 * @{
vladvana 0:23d1f73bf130 51 */
vladvana 0:23d1f73bf130 52
vladvana 0:23d1f73bf130 53 /** @addtogroup CRC
vladvana 0:23d1f73bf130 54 * @{
vladvana 0:23d1f73bf130 55 */
vladvana 0:23d1f73bf130 56
vladvana 0:23d1f73bf130 57 /* Exported types ------------------------------------------------------------*/
vladvana 0:23d1f73bf130 58
vladvana 0:23d1f73bf130 59 /** @defgroup CRC_Exported_Types CRC Exported Types
vladvana 0:23d1f73bf130 60 * @{
vladvana 0:23d1f73bf130 61 */
vladvana 0:23d1f73bf130 62
vladvana 0:23d1f73bf130 63 /**
vladvana 0:23d1f73bf130 64 * @brief CRC HAL State Structure definition
vladvana 0:23d1f73bf130 65 */
vladvana 0:23d1f73bf130 66 typedef enum
vladvana 0:23d1f73bf130 67 {
vladvana 0:23d1f73bf130 68 HAL_CRC_STATE_RESET = 0x00, /*!< CRC not yet initialized or disabled */
vladvana 0:23d1f73bf130 69 HAL_CRC_STATE_READY = 0x01, /*!< CRC initialized and ready for use */
vladvana 0:23d1f73bf130 70 HAL_CRC_STATE_BUSY = 0x02, /*!< CRC internal process is ongoing */
vladvana 0:23d1f73bf130 71 HAL_CRC_STATE_TIMEOUT = 0x03, /*!< CRC timeout state */
vladvana 0:23d1f73bf130 72 HAL_CRC_STATE_ERROR = 0x04 /*!< CRC error state */
vladvana 0:23d1f73bf130 73
vladvana 0:23d1f73bf130 74 }HAL_CRC_StateTypeDef;
vladvana 0:23d1f73bf130 75
vladvana 0:23d1f73bf130 76 /**
vladvana 0:23d1f73bf130 77 * @brief CRC handle Structure definition
vladvana 0:23d1f73bf130 78 */
vladvana 0:23d1f73bf130 79 typedef struct
vladvana 0:23d1f73bf130 80 {
vladvana 0:23d1f73bf130 81 CRC_TypeDef *Instance; /*!< Register base address */
vladvana 0:23d1f73bf130 82
vladvana 0:23d1f73bf130 83 HAL_LockTypeDef Lock; /*!< CRC locking object */
vladvana 0:23d1f73bf130 84
vladvana 0:23d1f73bf130 85 __IO HAL_CRC_StateTypeDef State; /*!< CRC communication state */
vladvana 0:23d1f73bf130 86
vladvana 0:23d1f73bf130 87 }CRC_HandleTypeDef;
vladvana 0:23d1f73bf130 88
vladvana 0:23d1f73bf130 89 /**
vladvana 0:23d1f73bf130 90 * @}
vladvana 0:23d1f73bf130 91 */
vladvana 0:23d1f73bf130 92
vladvana 0:23d1f73bf130 93 /* Exported constants --------------------------------------------------------*/
vladvana 0:23d1f73bf130 94 /* Exported macro ------------------------------------------------------------*/
vladvana 0:23d1f73bf130 95
vladvana 0:23d1f73bf130 96 /** @defgroup CRC_Exported_Macros CRC Exported Macros
vladvana 0:23d1f73bf130 97 * @{
vladvana 0:23d1f73bf130 98 */
vladvana 0:23d1f73bf130 99
vladvana 0:23d1f73bf130 100 /** @brief Reset CRC handle state
vladvana 0:23d1f73bf130 101 * @param __HANDLE__: CRC handle
vladvana 0:23d1f73bf130 102 * @retval None
vladvana 0:23d1f73bf130 103 */
vladvana 0:23d1f73bf130 104 #define __HAL_CRC_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_CRC_STATE_RESET)
vladvana 0:23d1f73bf130 105
vladvana 0:23d1f73bf130 106 /**
vladvana 0:23d1f73bf130 107 * @brief Resets CRC Data Register.
vladvana 0:23d1f73bf130 108 * @param __HANDLE__: CRC handle
vladvana 0:23d1f73bf130 109 * @retval None
vladvana 0:23d1f73bf130 110 */
vladvana 0:23d1f73bf130 111 #define __HAL_CRC_DR_RESET(__HANDLE__) (SET_BIT((__HANDLE__)->Instance->CR,CRC_CR_RESET))
vladvana 0:23d1f73bf130 112
vladvana 0:23d1f73bf130 113 /**
vladvana 0:23d1f73bf130 114 * @brief Stores a 8-bit data in the Independent Data(ID) register.
vladvana 0:23d1f73bf130 115 * @param __HANDLE__: CRC handle
vladvana 0:23d1f73bf130 116 * @param __VALUE__: 8-bit value to be stored in the ID register
vladvana 0:23d1f73bf130 117 * @retval None
vladvana 0:23d1f73bf130 118 */
vladvana 0:23d1f73bf130 119 #define __HAL_CRC_SET_IDR(__HANDLE__, __VALUE__) (MODIFY_REG((__HANDLE__)->Instance->IDR, CRC_IDR_IDR, (__VALUE__))
vladvana 0:23d1f73bf130 120
vladvana 0:23d1f73bf130 121 /**
vladvana 0:23d1f73bf130 122 * @brief Returns the 8-bit data stored in the Independent Data(ID) register.
vladvana 0:23d1f73bf130 123 * @param __HANDLE__: CRC handle
vladvana 0:23d1f73bf130 124 * @retval 8-bit value of the ID register
vladvana 0:23d1f73bf130 125 */
vladvana 0:23d1f73bf130 126 #define __HAL_CRC_GET_IDR(__HANDLE__) (((__HANDLE__)->Instance->IDR) & CRC_IDR_IDR)
vladvana 0:23d1f73bf130 127
vladvana 0:23d1f73bf130 128 /**
vladvana 0:23d1f73bf130 129 * @}
vladvana 0:23d1f73bf130 130 */
vladvana 0:23d1f73bf130 131
vladvana 0:23d1f73bf130 132 /* Exported functions --------------------------------------------------------*/
vladvana 0:23d1f73bf130 133
vladvana 0:23d1f73bf130 134 /** @addtogroup CRC_Exported_Functions
vladvana 0:23d1f73bf130 135 * @{
vladvana 0:23d1f73bf130 136 */
vladvana 0:23d1f73bf130 137
vladvana 0:23d1f73bf130 138 /** @addtogroup CRC_Exported_Functions_Group1
vladvana 0:23d1f73bf130 139 * @{
vladvana 0:23d1f73bf130 140 */
vladvana 0:23d1f73bf130 141
vladvana 0:23d1f73bf130 142 /* Initialization/de-initialization functions **********************************/
vladvana 0:23d1f73bf130 143 HAL_StatusTypeDef HAL_CRC_Init(CRC_HandleTypeDef *hcrc);
vladvana 0:23d1f73bf130 144 HAL_StatusTypeDef HAL_CRC_DeInit (CRC_HandleTypeDef *hcrc);
vladvana 0:23d1f73bf130 145 void HAL_CRC_MspInit(CRC_HandleTypeDef *hcrc);
vladvana 0:23d1f73bf130 146 void HAL_CRC_MspDeInit(CRC_HandleTypeDef *hcrc);
vladvana 0:23d1f73bf130 147
vladvana 0:23d1f73bf130 148 /**
vladvana 0:23d1f73bf130 149 * @}
vladvana 0:23d1f73bf130 150 */
vladvana 0:23d1f73bf130 151
vladvana 0:23d1f73bf130 152 /** @addtogroup CRC_Exported_Functions_Group2
vladvana 0:23d1f73bf130 153 * @{
vladvana 0:23d1f73bf130 154 */
vladvana 0:23d1f73bf130 155
vladvana 0:23d1f73bf130 156 /* Peripheral Control functions ************************************************/
vladvana 0:23d1f73bf130 157 uint32_t HAL_CRC_Accumulate(CRC_HandleTypeDef *hcrc, uint32_t pBuffer[], uint32_t BufferLength);
vladvana 0:23d1f73bf130 158 uint32_t HAL_CRC_Calculate(CRC_HandleTypeDef *hcrc, uint32_t pBuffer[], uint32_t BufferLength);
vladvana 0:23d1f73bf130 159
vladvana 0:23d1f73bf130 160
vladvana 0:23d1f73bf130 161 /**
vladvana 0:23d1f73bf130 162 * @}
vladvana 0:23d1f73bf130 163 */
vladvana 0:23d1f73bf130 164
vladvana 0:23d1f73bf130 165 /** @addtogroup CRC_Exported_Functions_Group3
vladvana 0:23d1f73bf130 166 ** @{
vladvana 0:23d1f73bf130 167 */
vladvana 0:23d1f73bf130 168
vladvana 0:23d1f73bf130 169 /* Peripheral State functions **************************************************/
vladvana 0:23d1f73bf130 170 HAL_CRC_StateTypeDef HAL_CRC_GetState(CRC_HandleTypeDef *hcrc);
vladvana 0:23d1f73bf130 171
vladvana 0:23d1f73bf130 172 /**
vladvana 0:23d1f73bf130 173 * @}
vladvana 0:23d1f73bf130 174 */
vladvana 0:23d1f73bf130 175
vladvana 0:23d1f73bf130 176
vladvana 0:23d1f73bf130 177 /**
vladvana 0:23d1f73bf130 178 * @}
vladvana 0:23d1f73bf130 179 */
vladvana 0:23d1f73bf130 180
vladvana 0:23d1f73bf130 181 /**
vladvana 0:23d1f73bf130 182 * @}
vladvana 0:23d1f73bf130 183 */
vladvana 0:23d1f73bf130 184
vladvana 0:23d1f73bf130 185 /**
vladvana 0:23d1f73bf130 186 * @}
vladvana 0:23d1f73bf130 187 */
vladvana 0:23d1f73bf130 188
vladvana 0:23d1f73bf130 189 #ifdef __cplusplus
vladvana 0:23d1f73bf130 190 }
vladvana 0:23d1f73bf130 191 #endif
vladvana 0:23d1f73bf130 192
vladvana 0:23d1f73bf130 193 #endif /* __STM32F1xx_HAL_CRC_H */
vladvana 0:23d1f73bf130 194
vladvana 0:23d1f73bf130 195 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/