Описание
Функция 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()
// при каждом запуске скетча. Впоследствии это позволит функции 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);
}
Смотрите также:
randomSeed()
Справочник
Материалы взяты с официального сайта проекта Arduino и представлены по лицензии Creative Commons Attribution-ShareAlike 3.0 License.
Источник: http://arduino.ua/ru/prog/Random |