
``` # U083Necule TRNG ## 通过CubeMX创建工程 ![]()  ![]()  ![]()  ![]()  ![]()  ![]()  ![]() ## 生成代码,直接编译下载运行  ![]() ## 看不懂,直接OK吧。  ![]() ## 运行OK,串口调试会收到Welcome to STM32 world ! 这是Demo里自带的  ![]() ## 只要调用这个函数  ![]() ## 在原按键程序里,添加两行代码,即可实现 if (BspButtonState == BUTTON_PRESSED) { /* Update button state */ BspButtonState = BUTTON_RELEASED; /* -- Sample board code to toggle leds ---- */ BSP_LED_Toggle(LED_GREEN); /* ..... Perform your action ..... */ HAL_RNG_GenerateRandomNumber(&hrng, &Trng); printf("The random number is: %d !\n\r", Trng); }  ![]() ## 至此,一个简单的随机数生成并打印功能实现。 ## 接下来修改为中断方式,回到cubeMX,使能中断  ![]() ## 修改程序 if (BspButtonState == BUTTON_PRESSED) { /* Update button state */ BspButtonState = BUTTON_RELEASED; /* -- Sample board code to toggle leds ---- */ BSP_LED_Toggle(LED_GREEN); /* ..... Perform your action ..... */ HAL_RNG_GenerateRandomNumber_IT(&hrng); } ## 添加回调函数 void HAL_RNG_ReadyDataCallback(RNG_HandleTypeDef *hrng, uint32_t random32bit) { printf("The random number is: %d !\n\r", random32bit); } ## 编译运行  ![]() ## 中断方式也实现。 ``` |
【P-NUCLEO-53L8A1评测】存在检测之动向追踪
STM32
STM32C071RBT6外部中断LED点亮熄灭
【2025·STM32峰会】GUI解决方案实训分享1-对LVGL咖啡机例程的牛刀小试以及问题排查
新版STM32Cube for Visual Studio Code开发体验
【NUCLEO-U083RC评测】+ AES加解密模块性能测试
【NUCLEO-U083RC评测】SLEEP_MODE、STOP_MODE、STANDBY_MODE简要测试
【STM32N6570-DK评测】摄像头video encoder
实战经验 | STM32CubeIDE实用技巧之工程联调
【STM32H745I-DISCO】基于TouchGFX的工业控制器界面设计