1. Программирование Arduino — введение
2. Структура программы, константы
3. Цифровой ввод/вывод
4. Аналоговый ввод/вывод
5. Дополнительные функции ввода/вывода
6. Работа со временем
7. Математические функции
8. Псевдослучайные числа
рассмотрим специфичные функции Arduino для работы с псевдослучайными числами
void randomSeed(unsigned int seed)
Описание:
randomSeed () инициализирует генератор псевдослучайных чисел, в результате чего генерация начинается с произвольного числа псевдослучайной последовательности.
Если важно, чтобы последовательность значений сгенерированной функцией random() отличались друг от друга при разных запусках скетча – можно вызывать randomSeed () для инициализации генератора псевдослучайных чисел с параметром, считываемым с помощью analogRead () из незадействованного порта.
Наоборот, иногда может быть полезно использовать псевдослучайную последовательность, которые точно повторяются. Это можно сделать, вызывая randomSeed () с фиксированным числом.
Параметры:
unsigned int seed – число для инициализации генератора псевдослучайных чисел
Пример:
long randNumber;
void setup(){
Serial.begin(9600);
randomSeed(analogRead(0));
}
void loop(){
randNumber = random(300);
Serial.println(randNumber);
delay(50);
}
long random(long howbig)
long random(long howsmall, long howbig)
Описание:
Генерирует псевдослучайное число
Параметры:
min – нижняя граница случайных чисел, (включая)
max — верхняя граница случайных чисел, (не включая)
Возвращаемое значение:
случайное число(тип long) между min и max–1
Пример:
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);
}
читать далее: 9. Последовательная передача данных
Ссылки
http://arduino.cc/en/Reference/HomePage (или же в каталоге ArduinoIDE \reference\HomePage.html )
