Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
Chciałem zagrać kilka efektów dźwiękowych i zdałem sobie sprawę, że jest to jeden z zaniedbanych obszarów, jeśli chodzi o samouczki. Nawet na Youtube brakuje dobrych tutoriali na temat Arduino i dźwięków, więc jako miły facet postanowiłem podzielić się swoją wiedzą na temat Arduino.
Jeśli nie lubisz czytać, oto pełny film z faktycznie odtwarzanymi dźwiękami:
Krok 1: Po pierwsze, podstawy
Jeśli kiedykolwiek kupiłeś zestaw startowy Arduino, zwykle zawiera on jeden aktywny brzęczyk/głośnik i jeden pasywny brzęczyk/głośnik.
Więc który jest który?
Różnice wizualne są następujące:
- Głośnik aktywny jest zwykle wyższy niż głośnik pasywny
- Głośnik aktywny jest uszczelniony na dole, ale głośnik pasywny ma dno otwarte.
Różnice techniczne polegają na tym, że głośnik aktywny ma wbudowane komponenty aktywne, które pozwalają mu pracować z napięciem stałym.
Tak więc, jeśli podłączymy zasilanie 5V lub 3V do głośnika aktywnego, automatycznie wyda sygnał dźwiękowy, podczas gdy głośnik pasywny pracuje z napięciem AC lub sygnałem PWM DC.
Teraz, gdy znamy różnice, chodźmy dalej i połączmy je.
Krok 2: Podłączanie głośników do Arudino
Połączenia są proste.
Jeden z pinów PWM (piny od 2 do 13) jest podłączony do plusa głośnika, a minus do rezystora 100 omów, który jest podłączony do masy.
Teraz możemy przejść do naszego szkicu/kodu.
Krok 3: Kodeks
Kodeks to właściwie tylko jedna linijka!
Jeśli chcesz zagrać tylko jeden dźwięk, wystarczy:
ton (pin, częstotliwość, czas trwania)
Gdzie pin to pin, do którego podłączony jest głośnik, częstotliwość to częstotliwość (w hercach), a czas trwania w milisekundach jest opcjonalny.
Proste, prawda? Zróbmy coś ciekawszego.
Krok 4: Granie w ton Supermario
Do odtwarzania dźwięku Supermario można użyć następujących elementów!
Po prostu wklej i ciesz się:
Arduino Mario Bros Tunes With Piezo Buzzer i PWM autor: Dipto Pratyaksa ostatnia aktualizacja: 31.03.13 */ #include
#define melodyPin 3 //Mario melodia głównego motywu int melody = { NOTE_E7, NOTE_E7, 0, NOTE_E7, 0, NOTE_C7, NOTE_E7, 0, NOTE_G7, 0, 0, 0, NOTE_G6, 0, 0, 0, UWAGA_C7, 0, 0, UWAGA_G6, 0, 0, UWAGA_E6, 0, 0, UWAGA_A6, 0, UWAGA_B6, 0, UWAGA_AS6, UWAGA_A6, 0, UWAGA_G6, UWAGA_E7, UWAGA_G7, UWAGA_A7, 0, UWAGA_F7, UWAGA_G7, 0, UWAGA_E7, 0, UWAGA_C7, UWAGA_D7, UWAGA_B6, 0, 0, UWAGA_C7, 0, 0, UWAGA_G6, 0, 0, UWAGA_E6, 0, 0, UWAGA_A6, 0, UWAGA_B6, 0, UWAGA_AS6, UWAGA_A6, 0, NOTE_G6, NOTE_E7, NOTE_G7, NOTE_A7, 0, NOTE_F7, NOTE_G7, 0, NOTE_E7, 0, NOTE_C7, NOTE_D7, UWAGA_B6, 0, 0 }; //Mario main im tempo int tempo = { 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 9, 9, 9, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 9, 9, 9, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, };
//
Krok 5: Co dalej?
Co chcesz zagrać w coś bardziej złożonego? Jak muzyka lub efekty dźwiękowe z Arduino? Cóż, pamięć Arduino jest ograniczona, więc nie ma możliwości próbkowania dźwięków z większą szybkością. Jeśli chcesz zrobić coś wymyślnego, potrzebujesz karty SD podłączonej do Arduino i odtwarzaj dźwięk z karty. Mam nadzieję, że czegoś się nauczyliście!
Rozważ zasubskrybowanie Fungineers na Youtube; co tydzień są tutoriale, rzeczy DIY, geek-ery drukowania 3D!