"My name is Linux ...Linux-Toolbox", parafrasando il noto 007, tecnologico, invincibile, romantico... interpretato da attori del calibro di Sean Connery e Roger Moore.
Buongiorno a tutti Voi!
Torno con i miei piedi ben piantati sul Pianeta Terra per aiutarvi a realizzare un interfaccia analogica per i vostri microcomputer. Questo circuito vi consentirà di riprodurre audio (es. MP3), messaggi vocali e segnali analogici arbitrari.
Prima di mostrarvi lo schema elettrico, guardiamo insieme il video che ho realizzato per Voi...
Visto? Un semplice dispositivo, comandato da algoritmi software e che può fare davvero di tutto!
Lo schema elettrico del circuito è il seguente:
(fare click per ingrandire)
Come funziona?
E' semplice! Il componente utilizzato è un DAC (Digital to Analog Converter) la cui sigla è LTC1450.
Questo DAC può generare segnali, con una risoluzione di 12 bit, riferiti alla tensione interna di 2,048V. Il circuito interno di amplificazione, posto nello stadio di uscita, provvederà a fornire una tensione di 1 mV per ciascun LSB (Low Significant Bit), pertanto, potremo generare tensioni comprese tra 0 e 4,096 V.
Che applicazioni può avere questo circuito?
Moltissime! E' possibile generare delle forme d'onda arbitrarie (programmate all'interno di tabelle dati), periodiche e/o aperiodiche.
Nel nostro caso, un semplice software gestito dal sistema tuttofare Linux-Toolbox (che ho descritto qui) effettuerà delle operazioni di lettura dalle tabelle dati e scrittura nel registro di input del DAC. I risultati li avete già visti e sentiti nel video ...possiamo generare voce, musica e forme d'onda.
Questo è il codice per generare 1000 sinusoidi prelevate da una tabella dati (per creare la tabella vedere qui):
/* sine wave */
for (t=0; t<1000; t++) {
for (i=0; i<256; i++) {
(*((unsigned char *)(cs3_base)+0)) = for (t=0; t<1000; t++) {
for (i=0; i<256; i++) {
(unsigned char)(sinetable[i]);
for (k=0; k<200; k++); //dummy delay
}
}
Adesso la "parola" passa a Voi! Create l'applicazione che avete sempre sognato.
Qui Pianeta Terra, a presto.