![]() |
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 |
Citazione:
Michele |
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?? :rolleyes:) |
Citazione:
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 |
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 :rolleyes: Quindi si dovrebbe dividere il file in n parti minori dei circa 8K disponibili, caricarle una per una e poi usarle nell'altro programma. |
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 |
Mi sa che qui si va un po' oltre le mie conoscenze :uhm::rolleyes: 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 :icon_rofl). Ora studio un po' e vediamo cosa ne concludo. |
Citazione:
|
Citazione:
-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 |
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' |
Questi si che sono pratici! Bi, se ti accatti l'HT2860 sei a posto, fa tutto lui. |
Citazione:
Michele |
Citazione:
|
Citazione:
|
Citazione:
Michele |
ho letto le 9 pagine. a parte che e' un circuitino del '97....... e chissa' i cinesi cosa hanno inventato nel frattempo (....). vi faccio alcune domande. dove si collega la alimentazione Vcc? cosa e' Vdd ? che potenza ha il transistor 8050? direi con una decina di euro.... dovrei avere un qualcosa che suona. non si sa che suono..... ma suona. se non ci sono altre proposte mi sa che devo tentare con questa! |
Citazione:
|
Citazione:
Io avrei optato solo per la generazione di un'onda quadra da mandare all'amplificatore ( transistor ).Oppure, visto che si è scelto di riprodurre un file campionato, avrei optato per un DAC R-2R ed amplificatore.:) |
Citazione:
|
Citazione:
Velocità: insomma...Stiamo parlando sempre di 44kHz ( che poi nemmeno sarebbero utili, penso già 20-25 per quest'applicazione possono andar bene ), non sono poi la fine del mondo!! Spazio in memoria: un segnale campionato è un segnale campionato...Mandare in out l'array di dati in parallelo e convertirli con un DAC oppure leggere l'array e generare un PWM variabile, non penso proprio ci sia un differente utilizzo di memoria nei due metodi...:) |
Citazione:
Tornando al problema, avevo preso spunto da un progetto trovato in rete con un codice del genere: void setPWM(unsigned char sample) { CCPR1L = sample >> 2; DC1B1 = (sample&0x02)>>1; DC1B0 = (sample&0x01); } void play(const char *sound, int size) { int i; for(i=0; i<size; i++) { setPWM(sound[i]); wait=1; while(wait); } } Ci sono da fare una serie di considerazioni sulla tempistica (tempi di lettura dalla eeprom, tempi legati alla frequenza di campionamento) che ancora non mi sono chiari. Oltretutto vorrei proseguire con il C, non ho molta simpatia per l'assembler (diciamo che mi fa fatica :rolleyes: non che non abbia mai programmato in assembler). La strada è quella giusta? In uscita nel piedino del PIC avrei una PWM modulata secondo i campioni prelevati dalla eeprom; supponiamo una frequenza di campionamento di 22khz, dovrei avere un filtro passa basso che taglia sopra questa frequenza? (ehm... basta una RC? Come si calcola? :fiu:) |
La frequenza di taglio dei filtri è data da: f= 1/(2*Pgreco*R*C) :wink: |
Citazione:
appena ho un po' di tempo libero faccio qualche prova. PS: se hai qualche link interessante su questi argomenti me lo puoi mandare via PM? |
io vi leggo e aspetto il parto...... io vi potrei suggerire che la nota musicale del LA. corrisponde a 440hz. per fare una tromba bitonale devono essere suonate 2 note. ad esempio un LA + DO ...... oppure DO+SOL. di più non saprei dirvi ..... cmq grazie per lo sforzo! |
nessn aggiornamento? ....... |
bi, io sto preparando la macchina per il suo esordio di domani... pensavo avessi testato il chip citato prima |
| Tutti gli orari sono GMT +2. Adesso sono le 10:16. |
Basato su: vBulletin versione 3.8.11
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
E' vietata la riproduzione, anche solo in parte, di contenuti e grafica. Copyright 1998/2019 - K-Bits P.I. 09395831002