1 /*! 2 * @file apm32f10x_crc.h 3 * 4 * @brief This file contains all the functions prototypes for the CRC firmware library 5 * 6 * @version V1.0.4 7 * 8 * @date 2022-12-01 9 * 10 * @attention 11 * 12 * Copyright (C) 2020-2022 Geehy Semiconductor 13 * 14 * You may not use this file except in compliance with the 15 * GEEHY COPYRIGHT NOTICE (GEEHY SOFTWARE PACKAGE LICENSE). 16 * 17 * The program is only for reference, which is distributed in the hope 18 * that it will be useful and instructional for customers to develop 19 * their software. Unless required by applicable law or agreed to in 20 * writing, the program is distributed on an "AS IS" BASIS, WITHOUT 21 * ANY WARRANTY OR CONDITIONS OF ANY KIND, either express or implied. 22 * See the GEEHY SOFTWARE PACKAGE LICENSE for the governing permissions 23 * and limitations under the License. 24 */ 25 26 #ifndef __APM32F10X_CRC_H 27 #define __APM32F10X_CRC_H 28 29 /* Includes */ 30 #include "apm32f10x.h" 31 32 #ifdef __cplusplus 33 extern "C" { 34 #endif 35 36 /** @addtogroup APM32F10x_StdPeriphDriver 37 @{ 38 */ 39 40 /** @addtogroup CRC_Driver CRC Driver 41 @{ 42 */ 43 44 /** @defgroup CRC_Functions Functions 45 @{ 46 */ 47 48 /* Reset DATA */ 49 void CRC_ResetDATA(void); 50 51 /* Operation functions */ 52 uint32_t CRC_CalculateCRC(uint32_t data); 53 uint32_t CRC_CalculateBlockCRC(uint32_t* buf, uint32_t bufLen); 54 uint32_t CRC_ReadCRC(void); 55 void CRC_WriteIDRegister(uint8_t inData); 56 uint8_t CRC_ReadIDRegister(void); 57 58 /**@} end of group CRC_Functions*/ 59 /**@} end of group CRC_Driver */ 60 /**@} end of group APM32F10x_StdPeriphDriver */ 61 62 #ifdef __cplusplus 63 } 64 #endif 65 66 #endif /* __APM32F10X_CRC_H */ 67