埃斯提爱慕
发布时间:2024-5-24 18:46
|
``` # U083Necule TRNG ## 通过CubeMX创建工程/ ^% j3 l( O1 h! K/ W2 V( a" d" {
+ r0 H4 \1 o6 ^9 {
4 e# {- E& w# E7 Q- L2 t8 w$ z$ Q
 v+ Q) N m4 i3 R6 `3 S, j S



## 生成代码,直接编译下载运行0 g7 @: a5 W. q1 [# u" d; a $ g0 y: M2 C( p
- ? W7 y3 e( Q8 a ( F. o% W4 {+ I' @3 N5 ]' V ## 看不懂,直接OK吧。 
5 @, ]4 h* \ }: D% Z6 Z( ^) }* X ## 运行OK,串口调试会收到Welcome to STM32 world !3 e: Q L8 I& w& k- v% }1 u' D! ` 这是Demo里自带的 : | i; ]1 T/ R! |4 a4 Z) |" H& Y 3 J* O7 e' _& }& ]
## 只要调用这个函数+ I5 F+ Z/ T5 s' U& ]* o ( n9 j) i5 f z" n: l! b
( Z7 p; h f* j3 w: z0 \ ## 在原按键程序里,添加两行代码,即可实现$ F% R$ V9 _. t+ e if (BspButtonState == BUTTON_PRESSED) { /* Update button state */ BspButtonState = BUTTON_RELEASED; /* -- Sample board code to toggle leds ---- */3 Z3 j) A0 I- `( f& l BSP_LED_Toggle(LED_GREEN); /* ..... Perform your action ..... */ HAL_RNG_GenerateRandomNumber(&hrng, &Trng); printf("The random number is: %d !\n\r", Trng);$ H% ?" A2 m; n }9 n% ]4 S4 i/ ] R' }) u6 u ; j9 E; _% n( Z& H ) C) O7 @! _4 S% i
5 I& D* U- `' T4 }: n ## 至此,一个简单的随机数生成并打印功能实现。 ## 接下来修改为中断方式,回到cubeMX,使能中断4 o) D. Y* b M2 z7 o+ I8 k. q 1 D' b, y" b. P4 ~; ~* @
) r" m6 p7 l2 ~: W: p ## 修改程序. x( z; R) n! t # V0 \ c& ^ h$ Q) p2 l if (BspButtonState == BUTTON_PRESSED) {0 ^" I! e' q6 E& E6 t. ] /* Update button state */2 {# e/ L! J) V+ j8 u BspButtonState = BUTTON_RELEASED; /* -- Sample board code to toggle leds ---- */ BSP_LED_Toggle(LED_GREEN); /* ..... Perform your action ..... */ - s* L* G! B8 {) R& r L( M HAL_RNG_GenerateRandomNumber_IT(&hrng);2 ~3 S" p7 l3 i% Q# X- t" l" } , Z7 Y& M4 t' V' l! | }6 k R8 A; r# f ) R, C% l& Z6 S ## 添加回调函数 void HAL_RNG_ReadyDataCallback(RNG_HandleTypeDef *hrng, uint32_t random32bit)+ ^; F. T4 a C, O* z { printf("The random number is: %d !\n\r", random32bit);1 L, p* N% S! o# j }* |4 ?) ]5 j8 t8 m+ G$ x + j3 C; k: H( l2 r+ h ## 编译运行 {$ B1 j5 O) L0 } 
## 中断方式也实现。 ```( z8 O5 I( t2 o7 E : b. I5 w" i7 ^# G7 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 评测】人体行为识别
微信公众号
手机版