ho un piccolo problema con le musichette dei BUZZER Passivi.
Mi spiego meglio
ho creato una sorta di PLC con relè di potenza ect.ect. ed una tastiera 4x4 con cui sto ancora impazzendo.
Ci ho montato anche un BUZZER che funziona benissimo, ed ho modificato gli esempi usando millis() per non bloccare le altre funzioni, il tutto funziona benissimo.
Però non riesco a trovare una lista di musichette già fatte per il BUZZER.....come compositore non sono un granchè.
Esiste per caso una lista già compilata con varie musiche??
Potresti fare una cosa del genere, scrivendo in freq[] e in dur[] la frequenza e la durata di ciascuna nota. Dopo l'ultima nota metti una frequenza uguale a zero.
Per quanto riguarda le note, fai una tabella (ad esempio con uno switch/case) con le note musicali nella notazione americana, ad esempio da A3 (LA) a G5 (SOL), e le rispettive frequenze. Anziché freq[] l'array si chiamerà note[] e nella tabella avrai:
potrebbe essere utile per accorciare ulteriormente la funzione.
Ma il mio problema al momento è che vorrei una lista di frequenze e durata gia fatte ,tipo un almbum musicale, dove poter scegliere la canzone.......ma non ne trovo di decenti...con repertorio vasto.
Puso:
Ma il mio problema al momento è che vorrei una lista di frequenze e durata gia fatte ,tipo un almbum musicale, dove poter scegliere la canzone.......ma non ne trovo di decenti...con repertorio vasto.
:o
Non credo ci siano, tantomeno utilizzabili direttamente da Arduino con tone().
Puoi anche prenderti dei MIDI dei brani che ti interessano ed estrarre in qualche modo le note di UNA sola traccia (Arduino non è polifonico). Poi queste note, probabilmente il loro codice MIDI e relativa durata, devi convertirle in qualche modo in nota (ma puoi lasciare la stesa codifica MIDI, la frequenza la dedurrai dal codice della nota) e durata (che deve diventare in msec).
A quel punto, vista la poca RAM di Arduino, devi usare una schedina SD per memorizzare i brani, divisi in singoli file, o in alternativa puoi vedere se in qualche modo potresti leggere da Arduino direttamente i file MIDI e da questo estrarre UNA traccia ma la vedo dura perché devi sicuramente usare qualche libreria o farti tu le routine per leggere ed interpretare un file MIDI scartando le tracce che non ti interessano e tutti gli altri eventi (Program Change, Control Change, eccetera).
Insomma, mi pare che il gioco non valga la candela...
Ehm, non era necessario, o quantomeno bastava un allegato, non ti pare? Inoltre dovrebbe mappare le note così scritte con il corrispondente codice MIDI, così serve a poco.
Si ma se vuole "tipo un album musicale", e "con repertorio vasto" l'unica soluzione è prendere i MIDI che si trovano facilmente in rete, e processarli per suonarli con la tone(). La tua tabella va anche bene, ovviamente è corretta (oddio, diciamo che basta la prima ottava, poi le successive si ottengono raddoppiando le 12 frequenze base...), ma in pratica il formato di una tale tabella dipende fortemente da come intende memorizzare i brani e quindi di che tipo. Fino a che non stabilisce quello, non abbiamo modo di consigliargli nulla di preciso.
PS: magari metti la tua tabella come allegato invece che nel testo, giusto per rendere più leggibile il thread..
avevo dimenticato quando da piccolo provavo a cimentarmi con una chitarra da 50mila Lire......scordata.(+ 50mila per le corde nuove e l'accordatura).
E' interessante
a parte migliorare i vecchi progetti non avevo più idee,ma grazie ad u semplice buzzer,mi sono venute in mente idee nuove...mi immagino già 8 buzzer suonatori ed io che faccio il DIRETTORE DI ORCHESTRA al........CONCERTONE DELL'ANNO.
Puso:
non avevo più idee,ma grazie ad u semplice buzzer,mi sono venute in mente idee nuove...mi immagino già 8 buzzer suonatori
Hehe, beh ma allora fai prima a prenderti una qualsiasi schedina mp3 per Arduino, in genere hanno anche un lettore di schede SD, dove ci carichi gli mp3 e di fatto puoi suonare qualsiasi cosa (qui si, che avresti un repertorio quasi infinito...) tra l'altro senza impegnare la CPU o la sua RAM...