random()

Функция random() возвращает псевдослучайное число.

Синтаксис

random(max);
random(min, max);

Параметры

min: нижняя граница случайных значений, включительно (опционально).
max: верхняя граница случайных значений, не включительно.

Возвращаемое значение

Случайное число между min и max-1, тип данных long.

Замечание по использованию

Если при каждом запуске программы необходимо получать разные последовательности значений, генерируемых функцией random(), то необходимо инициализировать генератор псевдослучайных чисел со случайным параметром. Например, можно использовать значение, отдаваемое функцией analogRead() c не подключенного порта.

В некоторых случаях необходимо получать одинаковую последовательность при каждом запуске программы на Arduino. В этом случае инициализировать генератор псевдослучайных чисел следует вызовом функции randomSeed() с фиксированным параметром.

Пример

long randNumber;

void setup() {
	Serial.begin(9600);
/*
  если порт 0 не подключен, то генератор псевдослучайных чисел
  будет инициализироваться функцией randomSeed() со случайного
  значения при каждом запуске программы из-за "шума" на порту
 */
	randomSeed(analogRead(0));
}

void loop() {
	// выводим случайное число из диапазона 0..299
	randNumber = random(300);
	Serial.println(randNumber); 
	//выводим случайное число из диапазона 10..19 
	randNumber = random(10, 20); 
	Serial.println(randNumber); 
	delay(50); 
}