Arduino进阶03.Arduino 随机数

要生成随机数,可以使用Arduino随机数函数。我们有两个函数:

  • randomSeed(seed)
  • random()

randomSeed(seed)

randomSeed(seed)函数重置Arduino的伪随机数生成器。虽然random()返回的数字的分布本质上是随机的,但是顺序是可预测的。你应该将发生器重置为某个随机值。如果你有一个未连接的模拟引脚,它可能会从周围环境中拾取随机噪音。这些可能是无线电波,宇宙射线,手机的电磁干扰,荧光灯等。

例子

randomSeed(analogRead(5)); // randomize using noise from analog pin 5

random()

random函数生成伪随机数。以下是语法。

random()语法

long random(max) // it generate random numbers from 0 to max
long random(min, max) // it generate random numbers from min to max

例子

long randNumber;

void setup() {
   Serial.begin(9600);
   // if analog input pin 0 is unconnected, random analog
   // noise will cause the call to randomSeed() to generate
   // different seed numbers each time the sketch runs.
   // randomSeed() will then shuffle the random function.
   randomSeed(analogRead(0));
}

void loop() {
   // print a random number from 0 to 299
   Serial.print("random1=");
   randNumber = random(300);
   Serial.println(randNumber); // print a random number from 0to 299
   Serial.print("random2=");
   randNumber = random(10, 20);// print a random number from 10 to 19
   Serial.println (randNumber);
   delay(50);
}

让我们现在重温我们对一些基本概念的知识,例如位和字节。

Bit(位)

位只是一个二进制数字。

  • 二进制系统使用两个数字,0和1。
  • 与十进制数字系统类似,数字的位数不具有相同的值,位的“意义”取决于其在二进制数中的位置。例如,十进制数666中的数字相同,但具有不同的值。
Bits

字节

一个字节由8位组成。

由于可以以256种不同的方式组合一个字节的八个0和1,所以可以由一个字节表示的最大十进制数是255(一个组合表示零)。

如果一个位是一个数字,逻辑上字节表示数字。

可以对它们执行所有数学运算。

一个字节中的数字也不具有相同的意义。

最左边的位具有被称为最高有效位(MSB)的最大值。

最右边的位具有最小值,因此称为最低有效位(LSB)。

发布者:suiyublg,转转请注明出处:https://huibian.net/1303-2/

(60977)
suiyublg的头像suiyublg
上一篇 2017年4月6日 15:51
下一篇 2017年4月8日 23:43

相关推荐

  • Arduino教程07.Arduino 运算符

    运算符是一个符号,它告诉编译器执行特定的数学或逻辑函数。

    2017年3月23日
    67424
  • Arduino教程09.Arduino 循环

    编程语言提供了各种控制结构,允许更复杂的执行路径。 循环语句允许我们多次执行一个语句或一组语句,以下是大多数编程语言中循环语句的一般形式: C语言提供以下类型的循环来处理循环需求。 序号 循环及描述 1 while循环while循环将会连续、无限循环,直到括号()内的表达式变为false。必须用一些东西改变被测试的变量,否则while循环永远不会退出。 2 …

    2017年3月25日
    48203
  • Arduino传感器04.Arduino PIR传感器

    PIR传感器可以让你感知运动。它们用于检测人是否进入或离开传感器的范围。通常出现在家庭或企业使用的电器和小工具中。它们通常被称为PIR,“被动红外”,“热电”或“IR运动”传感器。 以下是PIR传感器的优点: PIR由热电传感器制成,圆形金属罐中央有一个矩形晶体,可以检测红外辐射的水平。所有东西都发射出低水平的辐射,而东西越热发射的辐射就越多。运动检测器中的…

    2017年4月23日
    80000
  • Arduino传感器01.Arduino 湿度传感器

    在本节中,我们将学习如何使用不同的传感器连接我们的Arduino板。我们将讨论以下传感器: 湿度传感器(DHT22) DHT-22(也称为AM2302)是一个数字输出,相对湿度和温度传感器。它使用电容式湿度传感器和热敏电阻来测量周围空气,并在数据引脚上发送数字信号。 在本例中,你将学习如何将此传感器与Arduino UNO一起使用。室温和湿度将打印到串口监视…

    2017年4月20日
    51500
  • Arduino教程05.Arduino 数据类型

    C中的数据类型是指用于声明不同类型的变量或函数的扩展系统。变量的类型确定它在存储器中占用多少空间以及如何解释存储的位模式。

    下表提供了你将在Arduino编程期间使用的所有数据类型。

    2017年3月21日
    59403

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

评论列表(13条)

  • Mr. W的头像
    Mr. W 2017年11月7日 12:23

    123

    • Mr. W的头像
      Mr. W 2017年11月9日 09:44

      @Mr. W123123

    • Mr. W的头像
      Mr. W 2017年11月9日 09:44

      @Mr. W123123444444

    • Mr. W的头像
      Mr. W 2017年11月9日 09:44

      @Mr. Whhhh

    • Mr. W的头像
      Mr. W 2017年11月9日 09:45

      @Mr. Wjjjjjjjjj

    • Mr. W的头像
      Mr. W 2017年11月9日 09:45

      @Mr. Wfffffsfddfd

    • Mr. W的头像
      Mr. W 2017年11月9日 09:46

      @Mr. W999999

    • Mr. W的头像
      Mr. W 2017年11月9日 09:45

      @Mr. Weqwrffdsfdsafdsfdssfdsfd

    • Mr. W的头像
      Mr. W 2017年11月9日 09:46

      @Mr. W666666

  • Mr. W的头像
    Mr. W 2017年11月9日 09:44

    ffff

  • hony的头像
    hony 2017年11月29日 22:10

    我看看

  • ♔悠雨的头像
    ♔悠雨 2017年12月15日 09:39

    j

  • ♔悠雨的头像
    ♔悠雨 2017年12月15日 09:40

    alert(0)

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
欢迎大家来到大雄学编程!