#ifndef _TRNG_DRV_H_ #define _TRNG_DRV_H_ #define TRNGIF_TLB_BAS (TRNG_BASE_ADDR) #define rTRNGIF_CTRL (*(volatile unsigned int *)(TRNGIF_TLB_BAS + 0x00)) #define rTRNGIF_DATA (*(volatile unsigned int *)(TRNGIF_TLB_BAS + 0x04)) #define TRNGIF_CTRL_EN_MASK 0x00000100 #define TRNGIF_CTRL_IE_MASK 0x00000200 #define TRNGIF_CTRL_CLR_MASK 0x00000400 #define TRNGIF_CTRL_STA_MASK 0x00000800 #define TRNG_ENABLE (1<<25) /******************************************************************************* * Function Name : GetRandomWord * Description : 随机数生成函数 * Input : None * Output : None * Return : 1个unsigned int型随机数 ******************************************************************************/ extern unsigned int GetRandomWord(void); /******************************************************************************* * Function Name : Init_Trng * Description : 随机数功能初始化函数。 * 开启随机数模块时钟,并设置随机数模块时钟频率为系统时钟频率的1/8 * Input : None * Output : None * Return : None ******************************************************************************/ extern void Init_Trng(void); /******************************************************************************* * Function Name : Trng_Disable * Description : 关闭随机数模块时钟 * Input : None * Output : None * Return : None ******************************************************************************/ extern void Trng_Disable(void); #endif