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 )