友情提示:680元/半年,儿童学编程,就上码丁实验室。
arduino从零开始
你将学到什么
1、 你将学到如何产生随机数
随机数
在程序中能够产生随机数是非常有用的,在游戏或制作一些效果的过程中。
Arduino 自身没有办法选择一个纯粹的随机数,我们要给他提供一个随机的种子(一个随机的开始数)。
Arduino中最常用作随机种子是通过读取悬空模拟针脚值(没有接电子元件)来完成的,因为环境中的静电会在模拟针脚上产生随机的电压,所以悬空的模拟针脚读到的值是随机的。
Arduino中提供随机种子的函数是randomSeed()放在setup()函数中。
产生随机数的函数是random(lower,upper);其中upper是取不到的。
例如下面是产生一个1到10之间的随机数:
产生随机数
如果要取0到某个值之间的随机数,则第一个参数可以省略,所以上面例子中,random(0,11)可以写成random(11);
项目案例
模拟电子骰子,让arduino随机产生1到6之间的数字,然后让板载LED闪烁对应的次数,每次按重置按钮产生一个随机数。
无限循环
函数
文字代码如下:
void setup() {
// put your setup code here, to run once:
randomSeed(analogRead(A0));
pinMode(13,OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
int r= random(1,7);
randomNumber(r);
while(1)
{}
}
void randomNumber(int num)
{
digitalWrite(13,HIGH);
delay(2000);
digitalWrite(13,LOW);
delay(2000);
for(int i=0;i<num;i++)
{
blinkLed(13,500);
}
}
void blinkLed(int pin,int delay_time)
{
digitalWrite(pin,HIGH);
delay(delay_time);
digitalWrite(pin,LOW);
delay(delay_time);
}