| ||||
Arduino UNO урок 7 - Пьезо
| ||||
|
В данном уроке рассмотрим работу с пьезоизлучателем для генерирования звуков. Мы будем использовать пьезодатчик (Piezo Transducer), который позволяет генерировать звуковые волны в диапазоне частот 20 Гц - 20 000 Гц. Не путайте с пьезобиперами и т.п., которые генерируют звук только определенной частоты при подаче на них постоянного напряжения. Мы будем использовать ШИМ-генератор Arduino для генерирования звука на пьезоизлучателе.
Используйте данную функцию, когда вам необходима какая-либо частота и не нужен ШИМ на 3 и 11 ножках Arduino. ШИМ Arduino запускается на частоте 500 Гц, это вполне хороший звуковой тон для нашего примера. Для работы схемы подсоедините пьезодатчик к ноге 9 и 0V Arduino. В скетче, показанном ниже, мы сделали альтернативную функцию beep(), которая посылает ШИМ-сигнал на пьезо, затем идет небольшая задержка, затем сигнал с пьезо снимается и опять задержка. В результате чего издается непродолжительный звук. Переменная delayms используется в функции для задания времени звучания в миллисекундах. Продолжительность ШИМ (20 в нашем примере) не очень важна. Скетч ниже, при запуске программы издает 3 непродолжительных, а затем один продолжительный звуковой сигнал. /* Пьезо Данный пример показывает управление Пьезо на 9 ножке Arduino, используя функцию analogWrite() При запуске издается 3 коротких звуковых сигнала, затем пауза в 1 сек, а затем продолжительный звуковой сигнал */ void setup() { pinMode(9, OUTPUT); // устанавливаем 9 ногу как выход beep(50); beep(50); beep(50); delay(1000); } void loop() { beep(200); } void beep(unsigned char delayms){ analogWrite(9, 20); // значение должно находится между 0 и 255 // поэкспериментируйте для получения хорошего тона delay(delayms); // пауза delayms мс analogWrite(9, 0); // 0 - выключаем пьезо delay(delayms); // пауза delayms мс } Оригинал статьи на английском языке (перевод Колтыков А.В.)
Добавил: Павел (Admin) Автор: Неизвестно Вас может заинтересовать:
|
|||
| ||||
|