Оглавление:

Шумовая машина Arduino: 4 шага
Шумовая машина Arduino: 4 шага

Видео: Шумовая машина Arduino: 4 шага

Видео: Шумовая машина Arduino: 4 шага
Видео: Машинка Arduino – как собрать и программа 2024, Июль
Anonim
Шумовая машина Arduino
Шумовая машина Arduino
Шумовая машина Arduino
Шумовая машина Arduino
Шумовая машина Arduino
Шумовая машина Arduino

Я нашел крошечный динамик, разбирая старый ПК. для переработки и подумал, что посмотрю, как это звучит, используя функцию Arduino Tone (). Я начал с одного потенциометра 10 Ом для управления высотой тона и начал издавать некоторый шум. Функция Tone () использует простую последовательность импульсов. Он включает и выключает звук на разных частотах в виде прямоугольной волны. У меня были два других потенциометра, поэтому я добавил их и использовал их для управления длительностью тона. Один для управления длиной тона, а другой для управления тихим промежутком между тонами. По сути, он использует другую прямоугольную волновую диаграмму, но с гораздо более низкой частотой. С помощью этой схемы вы можете добиться хорошего разнообразия шумов. Он также хорошо работает с пьезо-зуммером, но ему не хватает низких частот динамика.

Шаг 1. Детали, которые вам понадобятся

Ардуино Уно

Макетная плата и перемычки

1 маленький динамик или пьезозуммер

1 кнопочный переключатель

3 потенциометра 10 Ом

1 резистор 22 Ом

1 резистор 10 кОм

Шаг 2: Постройте схему

Постройте схему
Постройте схему

Подключите макетную плату к контакту 5V Arduino и GND. Поместите кнопочный переключатель в крайнем правом или левом углу макетной платы и подключите его к 5 В и заземлению с помощью резистора 10 кОм. Подключите провод от схемы переключателя к контакту 2 на вашем Arduino.

На другой стороне макета установите динамик / пьезоэлектрическую цепь на 5 В и заземлите с помощью резистора 220 Ом. Этот резистор регулирует ток, таким образом регулируя громкость; вы можете попробовать разные резисторы для большей или меньшей громкости.

Разместите потенциометры в центре макета, чтобы было достаточно места, чтобы можно было возиться с ручками. Каждый горшок должен быть подключен к 5 В и заземлению, а центральные контакты на каждом должны быть подключены к аналоговым контактам A0, A1 и A2.

Шаг 3: Код

Потенциометр или потенциометр - это переменный резистор, который при подключении к Arduino будет возвращать значение от 0 до 1023. Мы будем использовать функцию map (), чтобы изменить эти значения в соответствии с нашими потребностями. Функция map () принимает пять аргументов, и в нашем случае нам нужно повторно сопоставить диапазон между 220 и 2200, чтобы произвести разумный слышимый звук.

Функция выглядит примерно так:

карта (горшок, 0, 1023, 220, 2200);

Вы можете поиграть с двумя последними значениями для более высоких и более низких частот, но будьте осторожны, чтобы не расстроить вашу собаку.

Noise_Machine.ino

/ * Шумовая машина с использованием трех потенциометров, подключенных к аналоговым входам
и пьезо или маленький динамик. Кнопка включает шум, потенциометры
управлять высотой тона с помощью функции Arduino tone () и двух задержек
значения, которые контролируют длину каждого тона и длину между
каждый тон. Потенциометры выдают аналоговые значения, которые изменяются.
используя функцию map () в больших или меньших диапазонах в соответствии с вашим
музыкальный вкус.
Этот код находится в открытом доступе.
Мэтт Томас 04.05.2019
*/
constint buttonPin = 2; // Контакт кнопки 2
постоянный динамик = 9; // Динамик или пьезо в выводе 9
int buttonState = 0; // Переменные для кнопки
int potZero; // и потенциометры
int potOne;
int potTwo;
voidsetup () {
pinMode (9, ВЫХОД); // Выходной контакт динамика / пьезо
}
voidloop () {
buttonState = digitalRead (buttonPin); // Считываем состояние кнопки
potZero = analogRead (A0); // Переменные для чтения аналоговых значений
potOne = analogRead (A1);
potTwo = analogRead (A2);
int htz = map (potZero, 0, 1023, 0, 8800); // Сопоставляем аналоговые показания с
int high = map (potOne, 0, 1023, 0, 100); // новые диапазоны номеров и создание
int low = map (potTwo, 0, 1023, 0, 100); // новые переменные
if (buttonState == HIGH) {// Если кнопка нажата…
тон (динамик, Гц); // Звучать на
задержка (высокая); // Длина тона
noTone (динамик); // Нет звука
задержка (низкая); // Время до следующего тона
} еще {
noTone (динамик); // Нет звука, если кнопка отпущена
}
}

просмотреть rawNoise_Machine.ino, размещенный с ❤ на GitHub

Шаг 4: Конец

Вот и все. Поиграйте со значениями в коде, добавьте больше горшков / кнопок и посмотрите, что еще вы можете контролировать. Сообщите мне, если я совершил какие-либо ошибки, и я надеюсь, что вам понравится музыка.

Рекомендуемые: