/** ****************************************************************************** * @file fm33a0xxev_hash.c * @author FM33A0XXEV Application Team * @version V1.0.0 * @date 16-April-2020 * @brief This file provides firmware functions to manage the following * functionalities of....: * */ /* Includes ------------------------------------------------------------------*/ #include "fm33a0xxev_hash.h" /** @addtogroup fm33a0xxev_StdPeriph_Driver * @{ */ /** @defgroup HASH * @brief HASH driver modules * @{ */ /* HASHÔËËãÆô¶¯¼Ä´æÆ÷£¬Èí¼þд1Æô¶¯ÔËË㣬ÔËËã½áÊøºóÓ²¼þ×Ô¶¯ÇåÁã Ïà¹Øº¯Êý */ void HASH_CSR_START_Setable(FunState NewState) { if (NewState == ENABLE) { HASH->CSR |= (HASH_CSR_START_Msk); } else { HASH->CSR &= ~(HASH_CSR_START_Msk); } } FunState HASH_CSR_START_Getable(void) { if (HASH->CSR & (HASH_CSR_START_Msk)) { return ENABLE; } else { return DISABLE; } } /* SHAË㷨ѡÔñ Ïà¹Øº¯Êý */ void HASH_CSR_HASHSEL_Set(uint32_t SetValue) { uint32_t tmpreg; tmpreg = HASH->CSR; tmpreg &= ~(HASH_CSR_HASHSEL_Msk); tmpreg |= (SetValue & HASH_CSR_HASHSEL_Msk); HASH->CSR = tmpreg; } uint32_t HASH_CSR_HASHSEL_Get(void) { return (HASH->CSR & HASH_CSR_HASHSEL_Msk); } /* ÊäÈë»òÊä³öÊý¾Ý˳Ðò½»»»¿ØÖÆ 00£º²»½»»» 01£ºhalf-word½»»» 10£ºbyte½»»» 11£ºbit½»»» ´Ë¼Ä´æÆ÷ÓÃÓÚ¶ÔÊäÈë32bitÊý¾ÝµÄλÐò½øÐе÷Õû£»±ÈÈçÊäÈëΪ0x1234_5678£¬half-word½»»»ºóΪ0x5678_1234£¬byte½»»»ºóΪ0x7856_3412£¬bit½»»»ºóΪ0x1E6A_2C48 Ïà¹Øº¯Êý */ void HASH_DTR_DATA_TYPE_Set(uint32_t SetValue) { uint32_t tmpreg; tmpreg = HASH->DTR; tmpreg &= ~(HASH_DTR_DATA_TYPE_Msk); tmpreg |= (SetValue & HASH_DTR_DATA_TYPE_Msk); HASH->DTR = tmpreg; } uint32_t HASH_DTR_DATA_TYPE_Get(void) { return (HASH->DTR & HASH_DTR_DATA_TYPE_Msk); } void HASH_Deinit(void) { //HASH->CSR = 0x00000000; //HASH->DTR = 0x00000000; } /******END OF FILE****/