problemi generici arduino

salve a tutti avrei un problema con arduino....spero mi possiate aiutare

  1. acquisendo un segnale sinusoidale con arduino, mi prende solo i valori positivi,tagliandomi quelli negativi fissandoli a 0.
    presuppongo allora che abbia una quantizzazione unipolare. il mio problema dunque è che devo acquisire anche i valori negativi che lui mi fissa a 0.Come faccio?

2)come si fa a fare uno stupido salvataggio di campioni acquisiti con arduino in un vettore?
sembra una cosa banale ma vi assicuro che so programmare in C ma a questo punto penso che non gli passo i parametri da salvare o non inizzializzi bene il vettore..
mi date un consiglio

grazie

  1. Se il povero Arduino vive tra 0 e 5 Volt, come pensi di vedere tutto ciò che sta sopra 5V o sotto 0V?

  2. lo stupido salvataggio di campioni lo si può fare nel seguente modo (occhio è pseudo-codice):

...tutto quello che serve prima del loop
int vettore[]; // dichiari il vettore
int t_camp = 100 //tempo di campionamento in millisecondi...scegli tu
int i = 0;
void loop() {
vettore[i] = analog.read(porta); //leggi e salvi un valore
i++; //incrementi il contatore
delay(t_camp);
}

in questo modo acquisisci un valore ogni 100 millisecondi e lo salvi in un vettore finché i non va in overflow...lo so è stupidissimo ma è l'esempio più semplice che si possa fare, con pochi accorgimenti in più lo modifichi a tuo desiderio! :wink:

Ciao molopante

Metter tensione alternata su un entrata é un modo sicuro, semplice e poco doloroso per rompere un integrato.

Quoi aquisire dei segnali in alternata se: il segnale é isolato dall alimentazione di Arduino e se i valori picco picco sono minori di 2,5V:
Fai un partitore di tensione con 2 resistenze uguali e li colleghi a 5V e Massa e ottieni 2,5V. Lí colleghi un polo della alternata e l' altro all'entrata analogica. Se l' alternata é piú alta di 2,5 V picco picco devi diminuirla con un partitore.

Per me un "Vettore" é un valore con una grandezza e una direzione; non so cosa intendi Tu come vettore.

Ciao Uwe

uwefed:
Per me un "Vettore" é un valore con una grandezza e una direzione; non so cosa intendi Tu come vettore.

vettore=array=matrice 1d

il termine viene usato spesso in programmazione impropriamente

si puo acquisire un segnale costante negativo con arduino?
se si come

Come Ti avevo giá spiegato, forse non ero capibile.

Il trucco é riferire il segnale da misurare a una tensione positiva in modo che la somma é sempre sopra 0V.

Se il valore é sempre negativo basta anche mettere coem comune non i poli negativi, ma il positivo del segnale metterlo su massa Arduino.

Tutte due le cose funzionano solo se il segnale é isolato dalla alimentazione del Arduino.
L' alternativa é invertire il segnale con un amplificatore operationale, ma Ti serve una tensione di alimentazione positiva e negativa.

Che tensioni devi misurare?

Ciao Uwe