Miscelare segnali PPM con arduino - BaroneRosso.it - Forum Modellismo

Torna indietro   BaroneRosso.it - Forum Modellismo > Elettronica > Circuiti Elettronici


 
 
Strumenti discussione Visualizzazione
Prev Messaggio precedente   Prossimo messaggio Next
Vecchio 11 febbraio 14, 23:50   #6 (permalink)  Top
Adv Moderator
 
L'avatar di romoloman
 
Data registr.: 15-08-2007
Residenza: sto a Massa ma sono molto Positivo
Messaggi: 12.071
Citazione:
Originalmente inviato da faustog_2 Visualizza messaggio
allora ho avuto il tempo di studiare.. e fare le prove in effetti la funzione pulseIn risolve molto bene il discorso, una precisione paragonabile a quella che si ottiene lavorando con i registri del Timer del capture e del modulo compare.. circa 8 microsecondi rileva da un estremo 873 uS dall'altro estremo 2073 uS così come usando direttamente i registri... . Di seguito giusto una demo per leggere il segnale di una ricevente e inviarla alla seriale. C'è da dire che conviene usare una scheda LEONARDO o arduino Micro perchè hanno piu porte digitali a disposizione e piu pin per interrupt esterni... da attenzionare però il Serial.println.... che in effetti risulta rallentare il PC... per ovviare questo problema mi sono accorto che mi è sufficiente usare una semplice applicaziione scritta in java.... insomma basta evitare il serial monitor.. adesso tutto OK , poi per creare il PPM per muovere i servo.. si può usare delayMicroseonds ......in questo modo non utilizzando il timer1 che invece viene usato dalla funzione puklseInt... i valori conviene prenderli con la specifica long volatile.

const int inputpin = 2;

long val;

void setup()
{
pinMode(inputpin, INPUT);
Serial.begin(9600);
val = pulseIn(inputpin,HIGH,25000);
}
//_________________________________________
void loop()
{
Serial.println(val);
val = pulseIn(inputpin,HIGH,25000);
}


Spero di essere stato utile ai lettori.. a presto fausto
Fausto per miscelare due segnali devi leggerne due...
Farlo in un loop usando pulseIn di fatto dimezza la frequenza di pilotaggio considerato anche il fatto che poi deve anche essere generato il segnale miscelato.
Pertanto l'unico modo è usare gli interrupt per leggere le variazioni dei due ingressi...
O utilizzando gli external interrupt (pin 2 e 3) oppure usando i pin change interrupts.
__________________
Vivere in qeusto mondo e molto belo belo e vale la pena starci ma a volte in questa UNICA vita che ci apartiene posono succedere cose brute brute alora mi chiedo perche siete incazziati domani pole esere anche lultimo
Grazie "TRANQUILLO"
FAI 15766
romoloman non è collegato   Rispondi citando
 

Bookmarks




Regole di scrittura
Non puoi creare nuove discussioni
Non puoi rispondere alle discussioni
Non puoi inserire allegati
Non puoi modificare i tuoi messaggi

BB code è Attivato
Le faccine sono Attivato
Il codice [IMG] è Attivato
Il codice HTML è Disattivato
Trackbacks è Disattivato
Pingbacks è Disattivato
Refbacks è Disattivato


Discussioni simili
Discussione Autore discussione Forum Commenti Ultimo Commento
Emulare con Arduino un segnale PPM baccothe Circuiti Elettronici 17 11 febbraio 14 19:10
aiuto con arduino e ppm alex-military Circuiti Elettronici 0 22 febbraio 13 13:52
Aiuto Miscelare canali con JR MX 22 saviothecnic Radiocomandi 16 17 novembre 08 17:33
Miscelare 2 servi per il profondità con Tx X3810 verio77 Aeromodellismo 1 07 agosto 07 10:18



Tutti gli orari sono GMT +2. Adesso sono le 12:17.


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