1 /***************************************************************************** 2 * Copyright (c) 2022, Nations Technologies Inc. 3 * 4 * All rights reserved. 5 * **************************************************************************** 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions are met: 9 * 10 * - Redistributions of source code must retain the above copyright notice, 11 * this list of conditions and the disclaimer below. 12 * 13 * Nations' name may not be used to endorse or promote products derived from 14 * this software without specific prior written permission. 15 * 16 * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY NATIONS "AS IS" AND ANY EXPRESS OR 17 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 18 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE 19 * DISCLAIMED. IN NO EVENT SHALL NATIONS BE LIABLE FOR ANY DIRECT, INDIRECT, 20 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 21 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, 22 * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 23 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 24 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 25 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26 * ****************************************************************************/ 27 28 /** 29 * @file n32l43x_crc.h 30 * @author Nations 31 * @version v1.2.0 32 * 33 * @copyright Copyright (c) 2022, Nations Technologies Inc. All rights reserved. 34 */ 35 #ifndef __N32L43X_CRC_H__ 36 #define __N32L43X_CRC_H__ 37 38 #ifdef __cplusplus 39 extern "C" { 40 #endif 41 42 #include "n32l43x.h" 43 44 /** @addtogroup n32l43x_StdPeriph_Driver 45 * @{ 46 */ 47 48 /** @addtogroup CRC 49 * @{ 50 */ 51 52 /** @addtogroup CRC_Exported_Types 53 * @{ 54 */ 55 56 /** 57 * @} 58 */ 59 60 /** @addtogroup CRC_Exported_Constants 61 * @{ 62 */ 63 64 /** 65 * @} 66 */ 67 68 /** @addtogroup CRC_Exported_Macros 69 * @{ 70 */ 71 72 /** 73 * @} 74 */ 75 76 /** @addtogroup CRC_Exported_Functions 77 * @{ 78 */ 79 80 void CRC32_ResetCrc(void); 81 uint32_t CRC32_CalcCrc(uint32_t Data); 82 uint32_t CRC32_CalcBufCrc(uint32_t pBuffer[], uint32_t BufferLength); 83 uint32_t CRC32_GetCrc(void); 84 void CRC32_SetIDat(uint8_t IDValue); 85 uint8_t CRC32_GetIDat(void); 86 87 uint16_t CRC16_CalcBufCrc(uint8_t pBuffer[], uint32_t BufferLength); 88 uint16_t CRC16_CalcCRC(uint8_t Data); 89 90 #ifdef __cplusplus 91 } 92 #endif 93 94 #endif /* __N32L43X_CRC_H__ */ 95 /** 96 * @} 97 */ 98 99 /** 100 * @} 101 */ 102 103 /** 104 * @} 105 */ 106