| | #1 (permalink) Top |
| User Data registr.: 26-04-2008 Residenza: Massa Carrara
Messaggi: 3.420
| clackson
vorrei fare un circuito per clackson / trombe bitonali da montare su auto 7,4V. Casse passsive, casse amplificate, oppure PIC programmato con micro ampli e casse passive. Consigli? Un amico ( ILLEZ ) ha individutao un PIC ( ? ) che potrebbe suonare , ma solo per 1 secondo. Qualcuno conosce qualche integrato che possa campionare almeno TRE secondi? Grazie |
| | |
| | #2 (permalink) Top | |
| User Data registr.: 21-01-2004 Residenza: Milano
Messaggi: 989
| Citazione:
Michele
__________________ __________________________________________________ The worst day flying is better than the best day working. | |
| | |
| | #3 (permalink) Top |
| User Data registr.: 06-08-2007 Residenza: Empoli
Messaggi: 1.813
|
Supponiamo di usare una 25LC512 (o taglio differente, al momento non importa) e di riuscire in qualche modo (che non conosco) a programmarla con un suono campionato anche a 8Khz della durata di qualche secondo. riesco a leggerla ad una velocità sufficiente per riprodurlo decentemente? (in subordine, come ci porto il suono campionato?? )
__________________ ....... |
| | |
| | #4 (permalink) Top |
| User Data registr.: 21-01-2004 Residenza: Milano
Messaggi: 989
| Una possibilità è questa: ti procuri un programma di editing audio (io uso CoolEdit); con questi programmi hai due possibilità: o campioni il suono o lo generi usando due oscillatori a circa 320 e 350 hz. A questo punto puoi normalizzarlo per avere 256 valori picco-picco in modo da convertirlo con 8 bit e decidi la frequenza di campionamento a cui vuoi riprodurlo. Quando hai raggiunto un risultato soddisfacente memorizzi il file in formato 'ascii': il programma ti genera una tabella con tutti i campioni espressi come numeri decimali; con un programmino da poche righe leggi il file e lo formatti in modo che diventi la dichiarazione di un vettore con inizializzazione dei valori tipo: unsigned char Clakson = { 0, 01, 02, 04, ... --- 255, 255, 0, 0}; e lo includi nel tuo programma e puoi con un primo programma scriverlo nella memoria flash esterna e con un secondo leggerlo per ricostruire il suono. Per l'uscita la soluzione più semplice è uno shift register a 8 bit con un convertitore R/2R ed un amplificatore. In assembly ti bastano circa 150 uS per leggere un dato e scriverlo sul convertitore ed avere una banda passante accettabile... Michele
__________________ __________________________________________________ The worst day flying is better than the best day working. |
| | |
| | #5 (permalink) Top |
| User Data registr.: 06-08-2007 Residenza: Empoli
Messaggi: 1.813
|
Mi chiedevo se c'erano soluzioni più 'semplici' per programmare l'eeprom. Se l'array stesse in memoria del pic, non userei l'eeprom esterna ![]() Quindi si dovrebbe dividere il file in n parti minori dei circa 8K disponibili, caricarle una per una e poi usarle nell'altro programma.
__________________ ....... |
| | |
| | #6 (permalink) Top | |
| User Data registr.: 21-01-2004 Residenza: Milano
Messaggi: 989
| Citazione:
Il vantaggio del campionamento (per questa applicazione) è che ti puoi costruire 3 campioni per riprodurre l'attacco, il suono continuo e lo spegnimento che rendono il tutto molto più naturale. Se decidi per il campionamento ti posso passare dei campioni sintetizzati di clakson 'veri'. Michele
__________________ __________________________________________________ The worst day flying is better than the best day working. | |
| | |
| | #7 (permalink) Top |
| User Data registr.: 06-08-2007 Residenza: Empoli
Messaggi: 1.813
|
Mi sa che qui si va un po' oltre le mie conoscenze ![]() ![]() Il buon Bimoto vorrebbe le trombe stile 'il sorpasso' comandabili via radio (è giovane il ragazo, visto che in pista va piano, vuole avvertire che imgombra Ora studio un po' e vediamo cosa ne concludo.
__________________ ....... |
| | |
| | #8 (permalink) Top | |
| User Data registr.: 09-12-2008 Residenza: Ancona
Messaggi: 1.111
| Citazione:
__________________ Francesco Associazione Aeromodellistica Ancona![]() "Perchè... capito.. se un attimo il cervello ti fa clic lui fa BOOM!" Noto Anonimo Cesenate | |
| | |
| | #9 (permalink) Top |
| User Data registr.: 21-01-2004 Residenza: Milano
Messaggi: 989
| Su un 12F629/675 definisci: -P2 a 5 e P1 a 2 -clock 4 Mhz -OutCh1: bit di uscita -Com: flag che abilita il suono a 1 e lo disabilita se 0 -abilita l'interrupt sul timer 1, no prescaler - e ascolta se ti piace... /************************************************** ****************** Interrupt code ************************************************** ******************/ void interrupt T1PWM(void) { if (F1Cnt > 0){ TIMER1 = -4100; F1Cnt--; }else{ TIMER1 = -3980; if (--F2Cnt == 0){ F2Cnt = P2; F1Cnt = P1; } } if (Cmd){ OutCh1 = !OutCh1; }else{ OutCh1 = 0; } TMR1IF = 0; } Michele
__________________ __________________________________________________ The worst day flying is better than the best day working. |
| | |
| | #10 (permalink) Top | |
| User Data registr.: 09-11-2006 Residenza: Fermo Termiche Portosangiorgio
Messaggi: 149
| Citazione:
![]() Ci sono molti chip sonori facili da usare ma poco reperibili, oppure una semplice sintesi vocale vedi Futura Elettronica - Home Page Prodotti semiconduttori, sintesi vocali. Ci registri tutti i rumori e suoni che vuoi, basta che ti scorri il pdf del ISD1212G e ti rendi conto della semplicita' d'uso. Saluti Pantalo' | |
| | |
![]() |
| Bookmarks |
| |