| | #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. |
| | |
| Bookmarks |
| |