如何使单片机产生0~9中的任意一个随机的数,并显示出来

以单片机和七段数码管为主要元件,使用C语言编程,产生0~9中任意一个随机的数,再由数码管显示出来,有开始键和停止键

把数生成BCD码送显示就可以了追问

怎么把数生成BCD码并送显示,我是初学者,有些还不太明白

追答

网上有现成的,你一查就知道了

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-04-12
要得到比较正常的随机数,你可以去网上找找,如果用random的话。。。一点都不平衡,老出一个数字。。。其他的就简单的很了
第2个回答  2012-04-12
前两位说的对 关键是选好随机函数。

如何使单片机产生0~9中的任意一个随机的数,并显示出来
把数生成BCD码送显示就可以了

51单片机C语言问题,怎么实现一个0-9随机排列的数列?如a[10]={2,5...
先有randomize初始化,初始化一次就可以了,然后可以若干次用random,每次用random可以获得一个随机数 include <stdlib.h> main(){ randomize();for(i = 0; i < N; i++) { a[i] = random(10);} }

51单片机如何生成随机数?
单片机上电之后通过按键去启动取随机数,若是单片机上电就立即取随机数的话,那每次上电随机的结果都是一样的。然后是0到9不重复的随机数,程序中用了循环来判断是否和前面取的随机数相同,相同则进入下次取随机数,不同则存入数组。在程序中,用“#include<absacc.h>”即可使用其中定义的宏来访问绝...

51单片机产生随机数c程序
if(!i) \/\/i=0时取第一个随机数放入数组n[0]{ srand(t); \/\/随机数初始化 a=(char)(rand()%10); \/\/取随机数(0~9)n[0]=a; \/\/存入数组 i++; \/\/数组下标加1 } else while(i<10) \/\/存放剩下的9个随机数 { srand(t); \/\/随机数初始化 a=(char)(rand()%10); \/\/...

单片机如何产生随机数
要想产生真正的随机数,需要一些硬件辅助。比如一些专用的随机数发生器。当然也可以搭建一个小硬件来产生,利用单片机的内置时钟设为1M,外接一个用温度敏感电阻搭建一个特征频率10M的RC振荡电路,用慢时钟去采集快时钟,然后经过简单处理,就可以得到一个真正的随机数了。

单片机中如何求随机数
单片机中取随机数和C语言是一样的,头文件为stdlib.h,但还要有头文件 time.h int temp;srand (unsigned time(NULL));temp=rand()%100 就是产生0-99 随机数。

在单片机中如何产生随机数字
然后调用第二个函数就可以得到随机数。图片中是我的测试结果,记录了65536次试验中每个数出现的次数,大致相同。void start_random(void){ i=3;j=11;} unsigned char random(void){ unsigned char k = 0;while(k==0){ i++;i%=15;j++;j%=16;k=(i*j)%17 } k--;} ...

[请教高手]单片机怎么实现产生随机数?
8位单片机很多地方需要随机数,比如游戏的洗牌,可在timer中取数,但是随机数质量不高。随机数是一个既简单又复杂的问题,这里的例子使用了众所周知的线性叠加法,没有完美的方法产生随机数,不过线性叠加法是一个合适的方法,彻底解决8位机随机数的问题。 伪随机数函数总是返回可预知的数字,像抛骰子,如果抛足够多次,...

单片机C语言如何产生随机数
的回答吗?!其中有提到“单片机上电之后通过按键去启动取随机数,若是单片机上电就立即取随机数的话,那每次上电随机的结果都是一样的。”

keil中如何产生随机数?
实际上,随机函数有两个,srand和rand.要实现你说的功能得配合使用.函数一:int rand(void);从srand (seed)中指定的seed开始,返回一个[seed, RAND_MAX(0x7fff))间的随机整数。函数二:void srand(unsigned seed);参数seed是rand()的种子,用来初始化rand()的起始值。rand()在每次被调用的时候...

相似回答
大家正在搜