历史上的今天
今天是:2024年09月26日(星期四)
2019年09月26日 | stm32产生随机数
2019-09-26 来源:eefocus
stm32使用rand()函数产生随机数,在OS编程中会设置srand()随机种子,其实随机种子就是某一时候的time()的值,因为这个值不同,所以每次的随机数都不同。
那么我们需要在stm32中模拟这样的一个随机种子
1——可以采用ADC采样值,必须是一个空脚(没接GND&VCC)
2——可以采用定时器的计数值
上传部分代码
/*
必须要每次刷新种子。每次的随机数才会不一样
srand()在#include"stdlib.h"
rand()在#include"time.h"
*/
srand(Timer_Count_Value); //随机种子Timer_Count_Value是定时器的计数值,
num = rand() % 128; //生成0—128内的随机整数,
printf("<<---OS_RUN:%d--->>rn",num);
打印结果
<<---OS_RUN:0--->>
<<---OS_RUN:106--->>
<<---OS_RUN:84--->>
<<---OS_RUN:62--->>
<<---OS_RUN:40--->>
<<---OS_RUN:18--->>
<<---OS_RUN:124--->>
<<---OS_RUN:29--->>
<<---OS_RUN:7--->>
<<---OS_RUN:113--->>
<<---OS_RUN:17--->>
<<---OS_RUN:123--->>
<<---OS_RUN:28--->>
<<---OS_RUN:6--->>
<<---OS_RUN:57--->>
<<---OS_RUN:35--->>
上一篇:keil库的运用,进阶版
下一篇:stm32-4路pwm优化
史海拾趣
|
使用keil+Ulink-2调试LPC1114,点了flashdownload后总是报错:target.dll has been canceled.SWD调试不是只需要从Ulink-2上引两根线到芯片的p0.10,p1.3吗?我没有用过SWD调试,使用变压器给芯片提供3.3V电压,从Ulink上引得7,9根线到芯片的SWD端口 ...… 查看全部问答> |
|
我看了WINCE500\\PUBLIC\\COMMON\\OAK\\DRIVERS\\SDCARD\\SDBUSDRIVER目录下的source文件,发现TARGETTYPE=LIBRARY,就是说是编译成库文件的,但是我对整个工程Build and sysgen,发现在工程目录下生成了SDBUS.dll文件,我想SDBUS.dll文件应该是在SYSGEN ...… 查看全部问答> |
|
ad6.9封装库元件命名 一、多引脚集成电路芯片封装SOIC、SOP、TSOP在AD7.1元器件封装库中的命名含义。例如:SOIC库分为L、M、N三种。L、M、N --代表芯片去除引脚后的片身宽度,即芯片两相对引脚焊盘的最小宽度。其中L宽度最大,N次之,M最小。-- ...… 查看全部问答> |
|
最近项目中要用到CC2530构建无线传感网,利用一个CC2530(假设为A)管理底下的多个终端,终端上也是CC2530,负责采集数据或者受控。每个终端都有一个事先定好的固定的编号,最终要实现通过A来控制底下的所有终端,且能根据编号访问到固定的终端。我 ...… 查看全部问答> |
|
这几天要精简乘法和除法,找到ti提供的乘除法处理程序,我就试了一下,为什么得数都不对哪!哪位大牛用过,解释一下。 程序和说明在附件里。 [ 本帖最后由 zengbo84 于 2012-3-16 10:22 编辑 ]… 查看全部问答> |
|
上位机通过proteus中自带的虚拟串口与protues通信 上位机自行设定个房间温度上下限 超过该范围可以操作升温降温电机动作 最近显示屏上位机即将完成 有需要共同研究的可以联系我! 显示屏上位机也是用visual studio200 ...… 查看全部问答> |




