Функция random() генерирует псевдо-случайные числа.
Синтаксис
random(max) random(min, max)
Параметры
min - нижняя граница случайной величины, включительно (необязательный параметр).
max - верхняя граница случайной величины, не включительно.
Возвращаемые значения
случайное число в диапазоне от min до max-1 (long)
Примечание
Если при циклическом использовании функции random() важно получать последовательность различных случайных чисел, то для инициализации генератора случайных чисел используйте функцию randomSeed() с параметром, представляющим собой в определенной степени случайную величину. Таким параметром может быть, например, величина напряжения, считанная функцией analogRead() с не подсоединенного вывода.
Изредка требуется и обратное - использовать точно повторяющиеся последовательности псевдо-случайных чисел. Для этого перед началом генерирования последовательности случайных чисел необходимо вызвать функцию randomSeed() с параметром, представляющим собой фиксированное число.
Пример
long randNumber; void setup(){ Serial.begin(9600); // если аналоговый вход 0 ни к чему не подсоединен, то произвольный аналоговый // шум на нем обеспечит разные исходные числа, передаваемые функции randomSeed() // при каждом запуске программы. Впоследствии это позволит функции random // генерировать разные значения. randomSeed(analogRead(0)); } void loop() { // выводим случайное число в диапазоне от 0 до 299 randNumber = random(300); Serial.println(randNumber); // выводим случайное число в диапазоне от 10 до 19 randNumber = random(10, 20); Serial.println(randNumber); delay(50); }