На прошлом уроке мы научились создавать различные звуки. Также мы научились
создавать ноты генерируя звук определенной частоты. Какая частота какой
ноте соответвует можно посмотреть здесь:
Таблица соотношения нот и частот
Для экспериментов будем использовать схему из прошлого урока:
void setup() {
pinMode(13, OUTPUT);
}
void loop() {
tone(13, 294, 300);
delay(300);
tone(13, 349, 300);
delay(300);
tone(13, 440, 300);
delay(300);
tone(13, 349, 300);
delay(300);
tone(13, 392, 600);
delay(600);
tone(13, 349, 300);
delay(300);
tone(13, 329, 300);
delay(300);
tone(13, 440, 600);
delay(600);
tone(13, 392, 600);
delay(600);
tone(13, 294, 1200);
delay(1200);
tone(13, 349, 300);
delay(300);
tone(13, 440, 300);
delay(300);
tone(13, 523, 300);
delay(300);
tone(13, 523, 300);
delay(300);
tone(13, 587, 600);
delay(600);
tone(13, 523, 300);
delay(300);
tone(13, 466, 300);
delay(300);
tone(13, 440, 1200);
delay(60000);
}
После нажатия на кнопку "начать эмуляцию" вы услишите мелодию
"Подмосковные вечера". Попробуйте запрограммиоровать какую-нибудь другую
мелодию.
random(max) random(min, max)где параметр min - это нижняя граница случайных значений, включительно, параметр max = верхняя граница случайных значений, не включительно. Таким образом функция random возвращает псевдослучайное число из диапазона от min до max-1. Если минимальное значение не указано, то выводится число из диапазона от 0 до max-1.
void setup()
{
pinMode(13, OUTPUT);
}
void loop()
{
tone(13, random(100,1000), 500);
delay(600);
}
long randNumber;
void setup(){
Serial.begin(9600);
// если порт 0 неподключен, то генератор псевдослучайных чисел
// будет инициализироваться функцией randomSeed() со случайного
// значения при каждом запуске программы из-за "шума" на порту
randomSeed(analogRead(0));
}
void loop() {
// выводим случайное число из диапазона 0..299
randNumber = random(300);
Serial.println(randNumber);
delay(500);
}