Å legge lyd til et Raspberry Pi-prosjekt er et enkelt spørsmål om å koble til en HDMI-skjerm med innebygde høyttalere eller ved å legge til forsterkede høyttalere til lydporten. Imidlertid er ingen løsning veldig lett eller bærbar. Prosjekter som krever et lite, energieffektivt fotavtrykk, har ikke plass til store forsterkede høyttalere. Men for enkle lyder kan Pi generere frekvenser på sine GPIO-pinner som driver et piezoelement for å produsere lyder.
Denne opplæringen vil vise deg hvordan du kobler et billig piezo elektrisk element til Pi for å produsere enkle farger.
Piezo elektriske elementer arbeider med prinsippet om at enkelte materialer som krystaller vil produsere strøm når de legges under stress, bøyd eller vibrasert. Enkelte bruksområder av et piezoelement inkluderer å oppdage vibrasjoner som baner eller lyder.
Piezo elektriske komponenter fungerer også i revers, hvis en strøm blir brukt på elementet, vil den bøye eller bøye seg. Ved å bruke denne metoden og å bruke et oscillerende signal, vil elementet vibrere ved samme frekvens som signalet.
For å koble opp piezoelementet må du lodde de strengede ledningene til noe som kan koble til Pi-pinnene. Hvis du er villig til å begå jumper-ledninger til prosjektet, kutt og stripp den ene enden av ledningen og loddetinnet som nedenfor. Instruksjonene nedenfor bruker litt oppkoblingstråd for å unngå å skille ut jumperkabler.
Etter disse trinnene bør du ha et montert piezoelement på en membran som forsterker summen av elementet festet til Pi. Det skal se noe som bildet nedenfor.
Montert Pi og ElementDet er flere guider for å kjøpe og installere et OS på Raspberry Pi. Følg ditt valg av kjøp og installasjon. Når Raspberry Pi er oppstart og konfigurert, fortsett til neste trinn.
Nå som elektronikken er tilkoblet, er programvaren for å kjøre GPIO-porter nødvendig. WiringPi-prosjektet gir fin kontroll over GPIO-pinnene fra kommandolinjen og C. Det finnes python og andre wrappers for wiringPi også. I dette eksemplet vil du installere wiringPi og vi vil endre et C eksempel program for å produsere lyd.
sudo apt-get install git
git klon git: //git.drogon.net/wiringPi
cd wiringPi ./build
I eksemplet katalogen av ledningerPi-depotet er en fil som heter softTone.c. Denne filen demonstrerer bruken av funksjonen softToneWrite som oscillerer den valgte pinnen ved en gitt frekvens. Eksempelprogrammet får piezoelementet til å spille en skala. For å teste at du har bygget og kablet, kompilerer du alt riktig, og kjører det som rot.
CD-eksempler gjør softTone sudo ./softTone
Du bør nå høre en skala som spilles på piezoelementet flere ganger. Bruk CTRL C å stoppe programmet. Deretter får du litt mer kreativ med musikken. Følg instruksjonene nedenfor for å endre softTone.c Program for å spille noe litt mer interessant. Fordi matrisen skala er bare liste over frekvenser, du kan erstatte tallene og størrelsen på arrayet med det du vil. Bytt ut filen softTone.c med innholdet nedenfor. Det er faktisk bare noen få små endringer i originalen. Resultatet vil spille en enkelt melodi linje og stoppe.
#inkludere#inkludere #inkludere #inkludere #inkludere #define PIN 3 int skala [23] = 659, 659, 0, 659, 0, 523, 659, 0, 784, 0,0,0, 392, 0,0,0, 523, 0,0, 392 , 0,0,330; int main () int i; wiringPiSetup (); softToneCreate (PIN); for (i = 0; i < 23 ; ++i) printf ("%3d\n", i) ; softToneWrite (PIN, scale [i]) ; delay (200) ;
Lag og kjør softTone program igjen:
lage softTone sudo ./softTone
Hvis du lytter nøye, kan du kanskje gjenkjenne denne lille melodien. Ved ganske enkelt å endre skala array og størrelsen på den på erklæring og for loop kan du gjøre melodien så lang eller kort som du vil.
For prosjekter som krever bare enkle lyder og ikke et fullt forsterket lydsystem, kan et lite piezoelement være den ideelle løsningen. I denne opplæringen lærte du hvordan du knytter et piezoelement til Raspberry Pi, installer wiringPi, og bruk eksempler fra wiringPi-pakken for å spille musikk på elementet.
Endring av C-programmer kan ikke være for alle, så det er ledningerPi-pakkere for python og andre språk. Se wiringPi-prosjektets nettsted for et språk som kan være mer kjent. Nå bør du kunne bruke hvilket språk du er komfortabel med, for å lage dine egne lyder og melodier.