Taula de continguts:

Llums de fades musicals: 6 passos (amb imatges)
Llums de fades musicals: 6 passos (amb imatges)

Vídeo: Llums de fades musicals: 6 passos (amb imatges)

Vídeo: Llums de fades musicals: 6 passos (amb imatges)
Vídeo: Маленький лисенок вышел к людям за помощью 2024, Desembre
Anonim
Image
Image

Per IanCumming Segueix-ne més per l'autor:

Intervalòmetre Arduino
Intervalòmetre Arduino
No només un temporitzador horari
No només un temporitzador horari
No només un temporitzador horari
No només un temporitzador horari
Un termòmetre de píxels
Un termòmetre de píxels
Un termòmetre de píxels
Un termòmetre de píxels

Quant a: M’agrada fer coses des de coets fins a electrònica. Més informació sobre IanCumming »

Benvinguts a tothom

Ja és gairebé l’època festiva i el nombre de botigues han començat a publicar la seva decoració festiva, he pensat que és el moment adequat per construir llums de fades musicals.

Pas 1: parts utilitzades

Peces usades
Peces usades

Utilitzaré el següent:

  • 12 LEDs
  • 12 resistències limitants de corrent
  • 1 matriu de transistors Darlington ULN 2803
  • Alguns cables de pont
  • Un altaveu piezoelèctric
  • Una taula de pa i
  • un Arduino
  • Per fer la cadena de llums de fades he utilitzat 5 cables d’un cable Ethernet

Pas 2: el codi

// GLOBAL VARS int barTime = 1200; // 8/8 = 1000ms byte nrLEDS = 4; // 4 LED base, podeu afegir molts leds de bytes paral·lels = {3, 4, 5, 6}; byte speaker = 11; byte patternLength = 64; // patró Longitud byte songLength = 51; cançó byte const = {// Jingle Bells Data 29, 2, 29, 2, 29, 4, 29, 2, 29, 2, 29, 4, 29, 2, 32, 2, 25, 3, 27, 1, 29, 8, 30, 2, 30, 2, 30, 3, 30, 1, 30, 2, 29, 2, 29, 2, 29, 1, 29, 1, 29, 2, 27, 2, 27, 2, 29, 2, 27, 4, 32, 4, 29, 2, 29, 2, 29, 4, 29, 2, 29, 2, 29, 4, 29, 2, 32, 2, 25, 3, 27, 1, 29, 8, 30, 2, 30, 2, 30, 2, 30, 2, 30, 2, 29, 2, 29, 2, 29, 1, 29, 1, 32, 2, 32, 2, 30, 2, 27, 2, 25, 8}; // L’estructura és el número de nota // Llargada de nota en el patró de bytes constants de vuitè = {// Dades del patró 0b0001, 0b0010, 0b0100, 0b1000, // Bits corresponents a Leds en matriu 0b0001, 0b0010, 0b0100, 0b1000, 0b0001, 0b0010, 0b0100, 0b1000, 0b0001, 0b0010, 0b0100, 0b1000, 0b1000, 0b1100, 0b0100, 0b0110, 0b0010, 0b0011, 0b0001, 0b1001, 0b1000, 0b1100, 0b0100, 0b01, 0b01, 0b01, 0b01 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1010, 0b0101, 0b1100, 0b0011, 0b1100, 011, 011, 011, 011, 011, 011, 011, 011, 011 0b0011, 0b1100, 0b0011, 0b1100, 0b0011,};

En primer lloc, declaro les meves variables, les més interessants són Song and Pattern.

  • La cançó emmagatzema la melodia; en aquest cas es tracta de campanes Jingle.
  • El patró emmagatzema les posicions activades i desactivades en els bits dels valors de la matriu.

Funcions personalitzades

// FUNCIONS int noteToHz (int note) {// Converteix una nota núm. a Freq float freq = 440 * (pow (1.059463094359, nota-21)); // -21 us dóna la nota 1 a C3 (Crec) retorn int (freq); // Els resultats són exactes a 1hz} LEDs buits (byte PORT_X) {// Estat del control del LED per a (int q = 0; q

Les dues funcions que tinc faran el següent:

  • Calculeu la freqüència de la funció de to al bucle
  • enceneu o apagueu els LED en funció del valor que es passi a la funció

Funció de configuració

void setup () {// setup OUTPUT pins pinMode (altaveu, OUTPUT); for (int t = 0; t <nrLEDS; t ++) {pinMode (leds [t], OUTPUT); }}

A la funció de configuració he establert els pins necessaris a OUTPUT.

Funció de bucle

void loop () {// Music Loop for (int t = 0; t <songLength; t ++) {// Notes, Longitud i reprodueix la melodia int note = noteToHz (cançó [t * 2]); int length = ((cançó [(t * 2) +1] * barTime) / 8); to (altaveu, nota, longitud - 50); // Llums intermitents! lightLEDs (patró [t% patróLongitud]); retard (longitud); } // Silence Loop int randomSilence = aleatori (1000, 5000); per a (int t = 0; t

Tinc 2 bucles a la funció Bucle principal. Un bucle de cançó i un bucle de silenci

El bucle de cançó llegirà les dades de la matriu de cançons i reproduirà la nota mitjançant la funció de to

El bucle de la cançó serà,

  • Llegiu les dades de la matriu de cançons,
  • Aleshores, toqueu la nota amb la funció de to
  • Enceneu els LEDs, la matriu de patrons de lectura.

Al bucle Silence

només s’encenen els LED

Connecteu l’Arduino i pengeu el codi. (A continuació, desconnecteu-lo)

Pas 3: Inici del circuit

Inici del circuit
Inici del circuit
Inici del circuit
Inici del circuit
Inici del circuit
Inici del circuit
Inici del circuit
Inici del circuit

Començaré amb la cadena de llums

  • He utilitzat el cable d’un cable Ethernet i he soldat 3 LEDs en paral·lel quatre vegades, assegurant-me de separar els LED de manera uniforme durant uns 2 metres
  • Vaig soldar l'ànode de cadascun dels conduïts a un sol cable.
  • A continuació, el càtode de cada LED a 4 cables separats. Amb una resistència, per descomptat
  • Vaig repetir aquest procés 3 vegades per obtenir una cadena de 12 LEDs i vaig posar pins de capçalera al final dels 5 cables

Connecteu els rails de terra i positius a la taula de suport

Pas 4: l'ULN2803

La ULN2803
La ULN2803
La ULN2803
La ULN2803
La ULN2803
La ULN2803

Col·loqueu el xip ULN2308 a la pissarra

El ULN2308 és un xip de matriu de transistors; del full de dades que puc veure

  • Aquest pin 1 és una entrada que activa el pin 18 "ON"
  • El pin 2 activa 17. Etc.
  • El pin 9 està mòlt
  • Connecteu el pin 9 del xip al rail de terra
  • Connecteu el carril positiu a una tira terminal, una tira per sobre del pin 18. (Veureu per què en un minut)
  • Connecteu el pin 1 del xip al pin 3 de l’Arduino
  • 2 passa a 4
  • 3 del xip passa a 5 i
  • 4 va al pin 6 de l'Arduino
  • Col·loqueu la corda LED a la taula de suport. On el cable d’ànode comú està connectat a la tira connectada a 5 volts. La resta de passadors de llum de fades haurien d’anar als pins 18, 17, 16 i 15 del xip.

Pas 5: afegir so

Afegint so
Afegint so
  • Connecteu l’altaveu piezoelèctric entre 2 tires de borns
  • Connecteu el pol negatiu de l’element Piezo a terra i
  • L’altre extrem de l’altaveu al pin 11

Pas 6: Conclusió

Conclusió
Conclusió
Conclusió
Conclusió

Tinc una cadena de llum que tocarà aleatòriament les campanades per recordar-me que és la temporada festiva.

Recomanat: