埃斯提爱慕
发布时间:2024-5-24 18:46
|
```5 R6 r( l2 r; f4 Z& q # U083Necule TRNG0 V1 t/ W; `: T" `8 x& Y6 `6 U ## 通过CubeMX创建工程 , d4 K' y3 |: g' w6 H3 k

8 Z, M. _$ I: c0 u
! f' w- ~# h* e# n! Q7 }2 _



## 生成代码,直接编译下载运行8 K* Z" p* G+ {6 y. H 
## 看不懂,直接OK吧。 ' {/ `$ \+ A! {( d; p5 y
4 {) G7 f/ J9 J6 q; f/ \( } ## 运行OK,串口调试会收到Welcome to STM32 world !% @6 B( z9 r7 {. s* ?: ^ 这是Demo里自带的' k8 Y2 J' |/ U6 H* D+ ]/ [; O# e 0 t. b0 g8 ]& d. t& P: M' D 
## 只要调用这个函数* k' `; h6 n: ?& D, g , {. Y! s+ u( ?7 ?. |- ?& O, h# l
## 在原按键程序里,添加两行代码,即可实现 1 I g9 d% ]$ A6 K if (BspButtonState == BUTTON_PRESSED) { /* Update button state */: A" d/ g# V+ q; y4 m BspButtonState = BUTTON_RELEASED; /* -- Sample board code to toggle leds ---- */ BSP_LED_Toggle(LED_GREEN); /* ..... Perform your action ..... */( U0 Y6 K, A! A * K0 A6 Q7 d- I& A+ p HAL_RNG_GenerateRandomNumber(&hrng, &Trng);3 _; U2 r1 [( d1 P. ] printf("The random number is: %d !\n\r", Trng); }+ `( O, z) |' e! \! V ; W: v/ n5 \0 w* B+ G+ P. n7 I r 
## 至此,一个简单的随机数生成并打印功能实现。 , n' ^% W6 ~ H6 a i" k ## 接下来修改为中断方式,回到cubeMX,使能中断4 m# ?2 Y x& G/ n5 h 0 |% X8 M6 ?0 d7 y
' ]$ {1 c! w8 E6 z6 [& ^, F! Z ## 修改程序1 s+ f, s& S$ }) u8 w* a if (BspButtonState == BUTTON_PRESSED) { /* Update button state */ BspButtonState = BUTTON_RELEASED; /* -- Sample board code to toggle leds ---- */ BSP_LED_Toggle(LED_GREEN); /* ..... Perform your action ..... */0 h( z! p b" K0 z ; y& J7 p# K/ n) T HAL_RNG_GenerateRandomNumber_IT(&hrng); + J) M6 @' Z, z1 m: \9 ^ }% u& g* D; f, R3 g, V # m" r2 ~1 E H1 W. ?- Q ## 添加回调函数/ a- L' H3 m$ R, i! ], P0 `: q void HAL_RNG_ReadyDataCallback(RNG_HandleTypeDef *hrng, uint32_t random32bit): E$ q5 y- `) k+ y# m {7 w# m+ @1 c1 b1 K1 ^/ E z) [6 o printf("The random number is: %d !\n\r", random32bit); }+ R# H$ @2 R3 C4 k" e! ~ ## 编译运行 3 e2 q1 o1 P# K5 \1 I9 H
## 中断方式也实现。. P1 n5 Z3 C) K5 F5 T- j6 o4 [ ``` ) R4 g4 H. I- d. Y: ]6 k; R |
【下载问题解决】关于ST官网下载软件问题解决
【STM32H735G-DK测评】lvgl移植
【STM32H735G-DK 测评】STM32H735G-DK External Loder 编译和测试
《MCUBoot课程》学习笔记+从信任链原理到量产实践
STM32CubeIDE 2.2.0新版本发布
CubeMX生成CubeIDE工程代码乱码
【stm32U3测评】使用FDCAN进行IAP升级----【2】FDCAN的Classic模式通信
STM32CubeIDE实时时钟(RTC)经验分享
实战经验 | ClassB功能安全认证代码与应用代码分区的实现要点
【STM32U3 评测】人体行为识别
微信公众号
手机版