首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

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

STM32F4 随机数发生器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();   //读数
继承事业,薪火相传
返回列表