1、配置RCC、SYS、USART1、时钟84MHz
2、打开RNG

3、生成代码
1、初始化
- __HAL_RCC_RNG_CLK_ENABLE();//使能RNG时钟
- __HAL_RNG_GET_FLAG(&hrng,RNG_FLAG_DRDY);//读取RNG_SR寄存器DRDY位状态
2、代码编写
- //返回值:获取到的随机数
- uint32_t RNG_Get_RandomNum(void)
- {
- return HAL_RNG_GetRandomNumber(&hrng);
- }
-
- //生成[min,max]范围的随机数
- int RNG_Get_RandomRange(int min,int max)
- {
- return HAL_RNG_GetRandomNumber(&hrng)%(max-min+1) +min;
- }