有网友碰到这样的问题“正点原子【STM32-F407探索者】第二十一章 硬件随机数实验”。小编为您整理了以下解决方案,希望对您有帮助:
解决方案1:
探索STM32-F407的硬件随机数实验,我们将介绍如何利用STM32F4的内置随机数发生器(RNG)生成并显示随机数。首先,感兴趣的同学可以通过下载相关资料并加入讨论群935446741保持交流。关注正点原子公众号获取最新资料更新。
实验分为四个部分:介绍RNG的工作原理,硬件设计,软件设计,以及下载验证。RNG基于模拟电路,利用连续模拟噪声生成32位随机数,不受HCLK频率影响。通过RNG_CR和RNG_SR寄存器,我们可以控制和监测RNG的工作状态。
软件设计中,需引入stm32f4xx_hal_rng.c和头文件,启用RNG时钟并初始化。HAL库提供了HAL_RNG_Init函数来设置RNG,同时,RNG_Init和RNG_Get_RandomNum函数负责生成和读取随机数。在main.c中,通过KEY0按键获取随机数,实时显示在LCD上,DS0指示程序运行状态。
下载验证时,将程序加载到STM32F4探索者板,观察DS0闪烁和随机数在LCD上的显示,以及按下KEY0获取随机数的响应。通过这些操作,可以实际检验实验成果。