添加头文件: #include<stdlib.h>
rand()函数会返回一个随机数,这是一个伪随机数。
如果想要真正的随机数,需要用cortex-m4以上的内核,比如F4、F7系列的stm32,使用随机数生成的外设生成
先使用一个srand()函数,设定一个种子
然后使用函数rand()获取随机数就可以了。
rand()函数产生的随机数的顺序是固定的,需要一个变量去设置随机数种子。
通常的做法是:srand(time(NULL)); //将时间的秒数作为种子
printf("%d " rand()%100); //打印出0-100的随机数
标准库stdlib中有随机函数(伪随机数),一般的随机数获取,只需要引入随机种子即可,比如可以以临时当前时间值为种子,或者某个模拟ADC随机状态
更随机的数可以利用专业的随机数发生器(随机状态产生器)
可以借助C语言中的rand()和srand()函数
然后使用函数rand()获取随机数就可以了。
printf("%d " rand());
STM32F4自带了硬件随机数发生器(RNG),RNG处理器是一个以连续模拟噪声为基础的随机数发生器,在主机读数时提供一个32位的随机数。
具体可以参考http://bbs.icxbk.com/thread-98482-1-1.html