Cuprins:
2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-13 06:58
Acesta este un proiect rapid al unei cutii de efecte sonore. Dispozitivul citește un fișier wav preînregistrat dintr-un microSD atribuit unui anumit buton și îl redă atunci când este apăsat.
Pasul 1: Veți avea nevoie de:
Modul microSD Arduino pro (sau altul) Un difuzor cu conexiune TRS (microfon / auxiliar) Conector TRS feminin 4 Butoane push 4 Rezistențe de 220 ohm Suport baterie și baterii - Am folosit cele 2 baterii CR2032 pentru monede, dar puteți utiliza alte cabluri TRS (căști)
Pasul 2: Conexiuni
Fiecare buton conectat la VCC și printr-un rezistor de 220ohm la GND (pentru a trage în jos curent fals pe cablu) în fața rezistorului, fiecare buton conectat la pinii digitali 5, 6, 7, 8 ai Arduino.
Conectorul TRS este conectat la GND și la al 9-lea pin digital al Arduino.
Modulul microSD este conectat la Arduino după cum urmează: GND => GNDVcc => VccMISO => 12MOSI => 11CS => 4SCK => 13
Bateria + este conectată la RAW și - la GND
Pasul 3: Setarea fișierelor Wave
Fișierele wav trebuie să fie la 16000 khz 8 biți mono. Denumiți-le după numărul butonului pe care urmează să le atribuiți (1, 2, 3, 4)
Puteți utiliza acest site pentru a vă converti fișierele
Pasul 4: Codul
Codul folosește 2 biblioteci pe care ar trebui să le asigurați (dacă nu le descărcați prin managerul lib): SD.hTMRpcm.h
#include // include biblioteca modulului SD # include // include biblioteca controlului difuzoarelor #define SD_ChipSelectPin 4 // define CS pin #define B1 5 // 4 butoane pin conexiuni #define B2 6 #define B3 7 #define B4 8 TMRpcm tmrpcm; // creează un obiect pentru biblioteca difuzoarelor void setup () {Serial.begin (9600); pinMode (5, INPUT); // 4 butoane inițializează ca INPUTS pinMode (6, INPUT); pinMode (7, INPUT); pinMode (8, INPUT); tmrpcm.speakerPin = 9; // definiți pinul difuzorului. // trebuie să utilizați pinul 9 al Arduino Uno și Nano // biblioteca folosește acest pin dacă (! SD.begin (SD_ChipSelectPin)) {// vedeți dacă cardul este prezent și poate fi returnat inițial; // nu mai faceți nimic dacă nu} tmrpcm.setVolume (6); // 0 la 7. Setați nivelul volumului tmrpcm.play ("start.wav"); // fișierul de sunet „1” va fi redat de fiecare dată când arduino se pornește sau este resetat} void loop () {// Serial.println (digitalRead (8)); if (digitalRead (B1)) {Serial.println ("B1"); tmrpcm.play ("1.wav"); întârziere (100); } if (digitalRead (B2)) {Serial.println ("B2"); tmrpcm.play ("2.wav"); întârziere (100); } if (digitalRead (B3)) {Serial.println ("B3"); tmrpcm.play ("3.wav"); întârziere (100); } if (digitalRead (B4)) {Serial.println ("B4"); tmrpcm.play ("4.wav"); întârziere (100); }}
Pasul 5: Conexiuni finale …
Conectați dispozitivul prin conectorul TRS cu cablul TRS la difuzor. Conectați dispozitivul la alimentare și porniți-l
…A SE DISTRA…