Scusate il nome del titolo..ho questo SKETCH
si può convertirlo per pierin ?
Serve per generare melodie scrivendo il codice in C.
Non so se è vero ma vorrei provare , prima di fare danni chiedo che è meglio a voi esperti.
vi ringrazio molto e buona pasqua.
Generare una melodia.. con pierin da arduino<>pierin
Moderatori:
Paolino,
fairyvilje
7 messaggi
• Pagina 1 di 1
0
voti
questo e l'elenco che dice l'ebook:
1 Arduino Uno
Cavetti Jumper per fare i collegamenti
1 Breadboard
1 diffusore audio da 8Ω
1 resistenza da 100 Ω
e questo il codice:
dici che non si può fare?
1 Arduino Uno
Cavetti Jumper per fare i collegamenti
1 Breadboard
1 diffusore audio da 8Ω
1 resistenza da 100 Ω
e questo il codice:
- Codice: Seleziona tutto
int speakerPin = 8; // Uscita Pin 8 cassa
int length = 15; // Numero di note
char notes[] = "ccggaagffeeddc "; // Note numeriche e lo spazio rappresnta la pausa
int beats[] = { 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 4 }; // Durata delle note
int tempo = 300; // Durata di una nota da 1 = 300 ms
void playTone(int tone, int duration) { // Parametro di riproduzione musicale
for (long i = 0; i < duration * 1000L; i += tone * 2) { // Codice per decifrare le note e riprodurle
digitalWrite(speakerPin, HIGH); // Settaggio valore CASSA = ALTO
delayMicroseconds(tone); // Attendi microsecondi per il riprodurre tono
digitalWrite(speakerPin, LOW); // Settaggio valore CASSA = BASSO
delayMicroseconds(tone); // Attendi microsecondi per il riprodurre tono
}
}
void playNote(char note, int duration) { // Parametro di riproduzione musicale
char names[] = { 'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C' }; // Valore letterale note
int tones[] = { 1915, 1700, 1519, 1432, 1275, 1136, 1014, 956 }; // Frequenza delle note indicate precedentemente
// CODICE DI RIPRODUZIONE DELLE NOTE INDICATE PRECEDENTEMENTE
for (int i = 0; i < 8; i++) {
if (names[i] == note) {
playTone(tones[i], duration);
}
}
}
void setup() {
pinMode(speakerPin, OUTPUT); // Pin 8 come OUTPUT
}
void loop() {
for (int i = 0; i < length; i++) {
if (notes[i] == ' ') {
delay(beats[i] * tempo);
} else {
playNote(notes[i], beats[i] * tempo);
}
delay(tempo / 2); // Pausa tra le note riprodotte = 150 ms
}
}
dici che non si può fare?
-

Noce11
59 5 - Utente disattivato per decisione dell'amministrazione proprietaria del sito
- Messaggi: 108
- Iscritto il: 10 feb 2011, 23:48
- Località: Massa(MS) Italia - Toscana
0
voti
non puoi mettere un carico del genere su un pin di uscita
rischi la rottura, non è progettato per andare di potenza
metti almeno un trasistor
http://developer.mbed.org/users/4180_1/notebook/using-a-speaker-for-audio-output/
rischi la rottura, non è progettato per andare di potenza
metti almeno un trasistor
http://developer.mbed.org/users/4180_1/notebook/using-a-speaker-for-audio-output/
3
voti
Mi pare definitivamente appurato che gli arduinisti e assimilati l'elettronica proprio non sanno dove stanno di casa.
Il suggerimento di attaccare direttamente altoparlante e resistenza al micro e` gia` di quelle fantasione, ma almeno ha il buon gusto di non rompere nulla. Con una resistenza da 100ohm la corrente di uscita e` meno di 30mA e tutto sommato il micro ce la fa. Non sara` tanto contento ma sopravvive. Ovviamente solo sulle porte B e C.
Visto che lo schema R+altoparlante ha un rendimento schifido, si puo` collegare il carico fra due uscite: se ne manda alta una e bassa l'altra, e viceversa per il semiciclo dopo. La potenza disponibile quadruplica (6dB). Quando non si deve pilotare l'altoparlante, entrambe le uscite essere allo stesso livello, alto o basso, fa lo stesso vedere figura sotto a sinistra. Certo che pilotare un altoparlante con un micro alimentato a 3.3V, con un rendimento elettrico del circuito di meno del 10% non mi pare una furbata.
La versione migliorata NON e` quella proposta dal sito linkato, con il transistore collegato direttamente al micro: se il transistore resta acceso l'altoparlante non e` per nulla contento. Lo schema migliore e` qui sotto, a destra
Probabilmente c'e` qualche click di commutazione, ma almeno questo circuito ha il buon gusto di non fare dispetti all'altoparlante anche se si lascia l'uscita a livello alto.
Il suggerimento di attaccare direttamente altoparlante e resistenza al micro e` gia` di quelle fantasione, ma almeno ha il buon gusto di non rompere nulla. Con una resistenza da 100ohm la corrente di uscita e` meno di 30mA e tutto sommato il micro ce la fa. Non sara` tanto contento ma sopravvive. Ovviamente solo sulle porte B e C.
Visto che lo schema R+altoparlante ha un rendimento schifido, si puo` collegare il carico fra due uscite: se ne manda alta una e bassa l'altra, e viceversa per il semiciclo dopo. La potenza disponibile quadruplica (6dB). Quando non si deve pilotare l'altoparlante, entrambe le uscite essere allo stesso livello, alto o basso, fa lo stesso vedere figura sotto a sinistra. Certo che pilotare un altoparlante con un micro alimentato a 3.3V, con un rendimento elettrico del circuito di meno del 10% non mi pare una furbata.
La versione migliorata NON e` quella proposta dal sito linkato, con il transistore collegato direttamente al micro: se il transistore resta acceso l'altoparlante non e` per nulla contento. Lo schema migliore e` qui sotto, a destra
Probabilmente c'e` qualche click di commutazione, ma almeno questo circuito ha il buon gusto di non fare dispetti all'altoparlante anche se si lascia l'uscita a livello alto.
Per usare proficuamente un simulatore, bisogna sapere molta più elettronica di lui
Plug it in - it works better!
Il 555 sta all'elettronica come Arduino all'informatica! (entrambi loro malgrado)
Se volete risposte rispondete a tutte le mie domande
Plug it in - it works better!
Il 555 sta all'elettronica come Arduino all'informatica! (entrambi loro malgrado)
Se volete risposte rispondete a tutte le mie domande
1
voti
vi ringrazio molto e ora leggo per bene quello che mi avete detto e nel frattempo studio l'elettronica cosi ho già qualcosa da fare.
grazie mille e buona pasqua.
grazie mille e buona pasqua.
-

Noce11
59 5 - Utente disattivato per decisione dell'amministrazione proprietaria del sito
- Messaggi: 108
- Iscritto il: 10 feb 2011, 23:48
- Località: Massa(MS) Italia - Toscana
7 messaggi
• Pagina 1 di 1
Chi c’è in linea
Visitano il forum: Nessuno e 18 ospiti

Elettrotecnica e non solo (admin)
Un gatto tra gli elettroni (IsidoroKZ)
Esperienza e simulazioni (g.schgor)
Moleskine di un idraulico (RenzoDF)
Il Blog di ElectroYou (webmaster)
Idee microcontrollate (TardoFreak)
PICcoli grandi PICMicro (Paolino)
Il blog elettrico di carloc (carloc)
DirtEYblooog (dirtydeeds)
Di tutto... un po' (jordan20)
AK47 (lillo)
Esperienze elettroniche (marco438)
Telecomunicazioni musicali (clavicordo)
Automazione ed Elettronica (gustavo)
Direttive per la sicurezza (ErnestoCappelletti)
EYnfo dall'Alaska (mir)
Apriamo il quadro! (attilio)
H7-25 (asdf)
Passione Elettrica (massimob)
Elettroni a spasso (guidob)
Bloguerra (guerra)![arrabbiato "[#]"](./images/smilies/angry (1).gif)





