STM32生成伪随机数

#include  <stdio.h>
#include  <stdlib.h>

#define   RAND_NUM_MAX  100

//串口打印
int fputc(int ch, FILE * stream)
{
    HAL_UART_Transmit(&huart1, (unsigned char *)&ch, 1, HAL_MAX_DELAY);
    return ch;
}

//打印随机数
void rand_num(void)
{
    srand(HAL_GetTick());    //设置随机数种子
    printf("%d\r\n", rand()%(RAND_NUM_MAX + 1));
}

缺点:这种以滴答时钟为随机数种子生成的随机数 每次开机复位值都会一样。

故STM32内部有硬件随机数RNG寄存器,保证每次开机的时候数值都不一致。

全篇完。

本人博客仅仅代表我个人见解方便记录成长笔记。

若有与 看官老爷见解有冲突,我坚信看官老爷见解是对的,我的是错的。

感谢~!

猜你喜欢

转载自blog.csdn.net/sudaroot/article/details/84949522