c语言随机函数在单片机中的应用

  • 学习4465次

c语言的随机数,可以用stdlib.h文件中的rand函数产生,在调用rand之前,需要用srand()设种子,为了得到真正的随机数,一般我们用time(0)获取当前的时间值给了srand作为种子。但是在单片机上,要实现这一点,需要带有RTC实时时钟功能才可以。对于一般的单片机,我们可以利用定时器做到,让定时器一直跑个不停,需要随机数的时候,取一个定时器的值,赋予给srand当种子,然后再调用rand产生随机数,就可以了。在实际应用中,我们一般要得到一定范围内的随机数,这时候,就需要利用一个数学技巧了。例如,要得到[min,max]之间的数据,可以用rand()%(max-min)+min来实现。

发表评论