STM32F4 随机数发生器RNG【使用库函数】

本文介绍STM32F4的随机数发生器RNG,该模块利用环境噪声生成32位随机数。文中详细解释了RNG的工作原理、主要特性和使用步骤,包括使能时钟、启动RNG及读取随机数的具体方法。

STM32F4的随机数发生器RNG,以环境噪声为种子,产生32位随机数供主机使用。

【主要特性】

1、产生32位随机数  2、两次转换时间间隔40PLL48CLK   3、随机数熵检测以发现不正常位,以产生稳定序列  3、可被关闭以省电

【实验过程】

产生一个随机数,编译器跟踪查看随机数

【代码实现】

RNG只有三个寄存器CR、SR和DR。配置信息写在CR,状态信息可从SR读取,产生的随机数存放在DR中。

首先,使能RNG时钟

RCC_AHB2PeriphClockCmd(RCC_AHB2Periph_RNG,ENABLE);

然后,启动RNG

RNG_Cmd(ENABLE);

最后等待随机数产生完毕标志,读数即可

while(RNG_GetFlagStatus(RNG_FLAG_DRDY) == RESET);  //等待随机数准备完毕
data = RNG_GetRandomNumber();   //读数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值