Arduino: Зміна яскравості світлодіода узалежності від гучності звуку


Для зміни яскравості світлодіоду залежно від гучності звуку можна використовувати аналоговий сигнал з мікрофона і подавати це значення на світлодіод через ШІМ (широтно-імпульсна модуляція).
У цьому коді ми зчитуємо аналогове значення з мікрофона і використовуємо функцію map(), щоб перетворити це значення в діапазон яскравості (0-255). Потім ми використовуємо це значення яскравості для керування світлодіодом за допомогою ШІМ, використовуючи analogWrite(). Чим вище значення звуку, тим яскравіший світлодіод.
Запустіть цей код на вашій Arduino, і світлодіод буде змінювати яскравість залежно від гучності звуку, яку він отримує з мікрофона.
У виразі map(soundValue, minSoundThreshold, 1023, 0, 2550), число 1023 вказує на максимальне значення вхідного діапазону, який потрібно відобразити на інший діапазон. У контексті Arduino аналогового входу, такий як вихід з мікрофона, максимальне значення зазвичай становить 1023. Це означає, що аналоговий пін може зчитувати значення від 0 до 1023, де 0 відповідає абсолютно низькому рівню напруги, а 1023 - абсолютно високому рівню напруги.
Функція map() використовується для відображення значення з одного діапазону на інший діапазон. У вас є наступні параметри:
• soundValue - вхідне значення, яке ви зчитали з мікрофона (від 0 до 1023).
• Параметр 2 (minSoundThreshold) - мінімальне значення вхідного діапазону.
• Параметр 3 (1023) - максимальне значення вхідного діапазону.
• Параметр 4 (0) - мінімальне значення вихідного діапазону (яскравість світлодіоду в цьому випадку).
• Параметр 5 (2550) - максимальне значення вихідного діапазону (максимальна яскравість світлодіоду в цьому випадку).
Функція map() виконує лінійне перетворення значень між цими двома діапазонами. Таким чином, вихідне значення буде знаходитися в діапазоні від 0 до 255, залежно від значення, яке зчитується з мікрофона.

Коментарі