ronwal il 18/2/2015, 22:03
trasmissione 433mhz
Salve a tutti, vorrei provare a trasmettere tramite un arduino uno ,tre segnali analogici ad un arduino nano e visualizzarli su un disp 20x4...

ronwal il 18/2/2015, 22:04
Re:trasmissione 433mhz
i due modulini che ho sono questi:
[
ronwal il 18/2/2015, 22:08
Re:trasmissione 433mhz
Su arduino 1 su A0 collego un partitore per la lettura di tensione di un banco 24v,suA1e A2 due sensori di corrente ad effetto hall.. e mi andranno a misurare la corrente di due stringhe differenti di pannelli fotovoltaici del mio impianto ad isola!
Chi ha voglia di aiutarmi?...
Io non sono un gran che per la programmazzione!!

ElettroshockNow il 19/2/2015, 16:25
Re:trasmissione 433mhz
Devi trasmettere usando una codifica Manchester.

Con Arduino puoi farlo usando semplicemente la libreria virtualwire.

Credo di averla usata nel progetto powermeter (trovi sia il tx che rx).

Unica nota dolente....
I moduli ricevitori non funzionano bene.
I tx Ok (oltre 30m)

Ciao
Elettro

ronwal il 19/2/2015, 18:06
Re:trasmissione 433mhz
Ciao elettro...cosa vuol dire? non riesco a trasmettere da una stanza all'altra?

ronwal il 19/2/2015, 18:15
Re:trasmissione 433mhz
Ho dato un occhio al tuo progetto, fuori dalla mia portata...
Purtroppo non ho capito come funziona la virtualwire!

ElettroshockNow il 19/2/2015, 18:47
Re:trasmissione 433mhz
CITAZIONE (ronwal, 19/02/2015 18:15:03 ) [quote]Ciao elettro...cosa vuol dire? non riesco a trasmettere da una stanza all'altra?

Per esperienza non ho mai superato i 5 metri con quei moduli , e il responsabile è il modulo ricevitore.

Usando il Tx e un ricevitore Aurel è tutta un'altra storia, 30 metri garantiti.

Per oltrepassare tale distanza oltre agli accurati accorgimenti sull'antenna bisogna sostituire anche il tx.

Magari con un BoostTx sempre dell'Aurel con i 500m garantiti .... fino a 1Km : ..


Tornando alla distanza stanza stanza con i moduli in tuo possesso (forse i miei erano difettosi).

Usa la libreria VirtualWire sia per il tx che per RX impostando nel setup i piedini che utilizzerai per la trasmissione e ricezione


vw_set_tx_pin(transmit_pin);
vw_set_rx_pin(receive_pin);
vw_set_ptt_pin(transmit_en_pin);
vw_set_ptt_inverted(true);
vw_setup(2000);



-----------Trasmettitore--------------------

Poi quello che trasmetti lo metti in un array

char msg[3] = {Tensione,Corrente,ecc};

indicando quanti byte trasmetterai nell'istruzione successiva

vw_send((uint8_t *)msg, 3 );
vw_wait_tx();




----------Ricevitore---------------------------------------
Sul Ricevitore avrai:

uint8_t buf[VW_MAX_MESSAGE_LEN];
uint8_t buflen = VW_MAX_MESSAGE_LEN;
if (vw_get_message(buf, &buflen))
{
Tensione = [1];
Corrente = buf[2]);
ecc = buf[3]);
}


Io uso questo metodo
Unico neo .... trasmette solo byte ,quindi valori da 0 a 255 ....
Per gli int o float devi convertirli in byte --> trasmettere ---->riconvertirli

Forse esisteranno altre librerie ,ma io non le conosco

ronwal il 19/2/2015, 19:06
Re:trasmissione 433mhz
ecco...le cose incominciano ad essere piu chiare....quindi se io prendo il valore analogico letto che va da 0-1024 non lo posso inviare......

ElettroshockNow il 19/2/2015, 19:42
Re:trasmissione 433mhz
CITAZIONE (ronwal, 19/02/2015 19:06:52 ) [quote]ecco...le cose incominciano ad essere piu chiare....quindi se io prendo il valore analogico letto che va da 0-1024 non lo posso inviare......


Direttamente No.

Devi dividere la variabile a 16bit in due byte da 8bit : (in realtà la tua variabile è a 10Bit)

Lettura = XXXX

byte Lettura1 = Lettura&0xFF;
byte Lettura2=(Lettura&0xFF00)>>8;


A questo punto invii i due byte

char msg[2] = {Lettura1,Lettura2};
vw_send((uint8_t *)msg, 2 );
vw_wait_tx();


TX ------------->-------->------->> RX


Riceverai i due byte :
uint8_t buf[VW_MAX_MESSAGE_LEN];
uint8_t buflen = VW_MAX_MESSAGE_LEN;
if (vw_get_message(buf, &buflen))
{
Lettura1 = buf[1];
Lettura2 = buf[2]);
}

e ricrei la variabile

Lettura = (int(buf[2]<<8)+buf[1]);

Lettura = XXXX

ronwal il 19/2/2015, 20:32
Re:trasmissione 433mhz
le operazioni matematiche le devo fare prima o dopo la trasmissione?

ElettroshockNow il 19/2/2015, 20:51
Re:trasmissione 433mhz
CITAZIONE (ronwal, 19/02/2015 20:32:59 ) [quote]le operazioni matematiche le devo fare prima o dopo la trasmissione?


Leggi il valore analogico
Converti in Byte
Trasmetti i Byte
-------------------->
Ricevi i byte
Converti nel valore

ElettroshockNow il 19/2/2015, 21:13
Re:trasmissione 433mhz
TX


//---------------------------------------------------------------
#include < VirtualWire.h >

void setup() {
  vw_set_tx_pin(12);
  vw_set_rx_pin(11);
  vw_set_ptt_pin(3);
  vw_set_ptt_inverted(true);
  vw_setup(2000);
}

void loop() {

  int Tensione_adc = analogRead(A0);

  byte Tens1 = Tensione_adc&0xFF;
  byte Tens2=(Tensione_adc&0xFF00)>>8;
  char msg[2] = {Tens1,Tens2};
  vw_send((uint8_t *)msg, 2 );
  vw_wait_tx();
}
//-----------------------------------------------------------------




RX

//------------------------------------------------------------------
#include < VirtualWire.h >
int Tensione_adc;


void setup() {
  vw_set_tx_pin(12);
  vw_set_rx_pin(11);
  vw_set_ptt_pin(3);
  vw_set_ptt_inverted(true);
  vw_setup(2000);
}


void loop() {
    uint8_t buf[VW_MAX_MESSAGE_LEN];
    uint8_t buflen = VW_MAX_MESSAGE_LEN;
    if (vw_get_message(buf, &buflen))
    {   
      Tensione_adc = (int(buf[1]<<8)+buf[0]);
    }   
}

//------------------------------------------------------------



NOTA: Togliere gli spazi in  < VirtualWire.h > per evitare errori nella compilazione  <VirtualWire.h>

ronwal il 19/2/2015, 21:19
Re:trasmissione 433mhz
tensione adc sara un valore compreso tra 0-1024 giusto?
per farlo vedere su disp....il solito lcd print (tensione adc)

ElettroshockNow il 19/2/2015, 21:25
Re:trasmissione 433mhz
Sisi lcd.print("tensione_adc");

forse prima dovrai aggiungere

float tensione= Tensione_adc/fattore_conversione;
lcd.print("tensione,1"); //visualizzazione ad una cifra decimale

ronwal il 19/2/2015, 21:26
Re:trasmissione 433mhz
e per gli altri due valori copio e incollo?

ElettroshockNow il 19/2/2015, 21:26
Re:trasmissione 433mhz
CITAZIONE (ronwal, 19/02/2015 21:26:11 ) [quote]e per gli altri due valori copio e incollo?


Quali valori ?

ronwal il 19/2/2015, 21:28
Re:trasmissione 433mhz
Grazie Elettro...bimba permettendo faro due prove a giorni

ronwal il 19/2/2015, 21:28
Re:trasmissione 433mhz
devo trasmettere A0...A1....A2😁

ElettroshockNow il 19/2/2015, 21:32
Re:trasmissione 433mhz
CITAZIONE (ronwal, 19/02/2015 21:28:49 ) [quote]devo trasmettere A0...A1....A2😁


:lol:

Sisi li metti in sequenza

--------------TX------------------

int Tensione_adc = analogRead(A0);
int Corrente_adc = analogRead(A1);

byte Tens1 = Tensione_adc&0xFF;
byte Tens2=(Tensione_adc&0xFF00)>>8;
byte Corr1 = Corrente_adc&0xFF;
byte Corr2=(Corrente_adc&0xFF00)>>8;
char msg[2] = {Tens1,Tens2,Corr1,Corr2};
vw_send((uint8_t *)msg, 4 ); //aggiornare il numero di byte trasmessi
vw_wait_tx();


-------------------RX------------------

Tensione_adc = (int(buf[2]<<8)+buf[1]);
Corrente_adc = (int(buf[4]<<8)+buf[3]);

ronwal il 19/2/2015, 21:40
Re:trasmissione 433mhz
Come tempi di aggiornamento ricezione dove devo agire??
Dove trovo i moduli rx aurel?
Dopo questo devo fare prove!!
Grrrraaaazzzziiiieee

ps: ci vorrebbe un tutorial in italiano per arduino 👍

ElettroshockNow il 19/2/2015, 22:00
Re:trasmissione 433mhz
CITAZIONE (ronwal, 19/02/2015 21:40:20 ) [quote]Come tempi di aggiornamento ricezione dove devo agire??
Dove trovo i moduli rx aurel?



Con la sequenza:
vw_send((uint8_t *)msg, 2 );
vw_wait_tx();

invii la trasmissione.

Io di solito metto tutto all'interno di :

//-----------------------------------------------------------------
if (millis()>(Tmemoria + 60000)){ //Riesegui le istruzioni contenute nell'if ogni 60000mS
Tmemoria=millis();

bla bla bla
bla bla bla
bla bla bla

}
//------------------------------------------------------------------


Cosi facendo il codice non si ferma mai ;) e trasmette ogni tot secondi

Il ricevitore fà tutto solo.

ElettroshockNow il 19/2/2015, 22:08
Re:trasmissione 433mhz
Per i ricevitori compatibili al tuo trasmettitore puoi vedere qui.


ronwal il 20/2/2015, 19:15
Re:trasmissione 433mhz
Ciao elettro, ho provato lo sketc ma niente non va....ho collegato al pin 10 l'rx del nano, puo essere quello il problema?....e il vw set ptt pin (3) cosa vuol dire?

ElettroshockNow il 20/2/2015, 20:13
Re:trasmissione 433mhz
Sostituisci i moduli con due fili,forse sono loro ;)

Collegando :
gnd-gnd
tx-rx

il pin ptt non serve per il tuo scopo ,metti un pin a piacimento.

Ciao
Elettro

Ps:domani mattina provo anch'io

ElettroshockNow il 20/2/2015, 20:19
Re:trasmissione 433mhz
I'm sorry.
Aggiungi alla fine del setup dell'rx il comando:

vw_rx_start();

provando sempre con i cavi ,poi se funziona li sostituisci ;)

ronwal il 20/2/2015, 20:22
Re:trasmissione 433mhz
uguale risultato .....0 su display

ronwal il 20/2/2015, 20:25
Re:trasmissione 433mhz
ho provato con oscilloscopio e il segnale arriva al ricevente

ronwal il 20/2/2015, 20:27
Re:trasmissione 433mhz
ecco il ricevente nano


ronwal il 20/2/2015, 20:28
Re:trasmissione 433mhz
l'arduino uno come trasmittente funziona perche sul ricevente con l'oscilloscopio vedo la stessa cosa della trasmittente

ronwal il 20/2/2015, 20:30
Re:trasmissione 433mhz
ecco lo sketch che ho su arduino uno su tx


ronwal il 20/2/2015, 21:52
Re:trasmissione 433mhz
sono riuscito a trasmettereun valore....da 0 a 3 ...con un potenziometro su A0 del trasmittente....ma non doveva arrivare da 0 a 1024?... bo.... ho provato la portata.....da una stanza all'altra tranquillamente...

ronwal il 20/2/2015, 21:58
Re:trasmissione 433mhz
Mi sono accorto che sul piedino d10 del nano non funzionava, ho spostato sul 9 ed ho visualizzato qualcosa

ElettroshockNow il 21/2/2015, 9:06
Re:trasmissione 433mhz
Trovato errore ....

ronwal il 21/2/2015, 9:13
Re:trasmissione 433mhz
:clap.gif:

ronwal il 21/2/2015, 9:19
Re:trasmissione 433mhz
quindi?

ElettroshockNow il 21/2/2015, 9:21
Re:trasmissione 433mhz
--------------------------TX-----------------------------

//-------------TX-RF------------------------------
#include <VirtualWire.h>

void setup() {
vw_set_tx_pin(12);
vw_setup(2000); 
}

void loop() {

int Tensione_adc = analogRead(A0);

byte Tens1 = Tensione_adc&0xFF;
byte Tens2=(Tensione_adc&0xFF00)>>8;
char msg[2] = {Tens1,Tens2};
digitalWrite(13, HIGH);
vw_send((uint8_t *)msg, 2 );
vw_wait_tx();
digitalWrite(13, LOW);   
delay(1000);
}
//-----------------------------------------------------------




-----------------------------RX-------------------------------


//-----------------------RX-RF-------------------------------
#include <VirtualWire.h>
int Tensione_adc;
unsigned long Tmemoria;


void setup() {
Serial.begin(9600) ;
vw_set_tx_pin(12);
vw_set_rx_pin(11);
vw_set_ptt_pin(3);
vw_set_ptt_inverted(true);
vw_setup(2000);
vw_rx_start();
}


void loop() {
uint8_t buf[VW_MAX_MESSAGE_LEN];
uint8_t buflen = VW_MAX_MESSAGE_LEN;
if (vw_get_message(buf, &buflen))
{
Tensione_adc = (int(buf[1]<<8)+buf[0]);
}


if (millis()>(Tmemoria + 1000 )){ //Esegui ogni 1000 mS
Tmemoria=millis();
Serial.print("Tensione_adc= ");
Serial.println(Tensione_adc);
digitalWrite(13, HIGH);
delay(50);             
digitalWrite(13, LOW);
}
}
//----------------------------------------------------------



ElettroshockNow il 21/2/2015, 9:23
Re:trasmissione 433mhz
L'errore era :

Tensione_adc = (int(buf[1]<<8)+buf[0]);

.... pardon

Avevo contato male il numero del buffer ... si parte sempre da 0 ,ma spesso mi sbaglio con questi array :wacko:

ElettroshockNow il 21/2/2015, 9:33
Re:trasmissione 433mhz
CITAZIONE (ronwal, 21/02/2015 09:23:05 ) [quote]quindi?

e quindi?
Provato?
Distanza?

ronwal il 21/2/2015, 9:41
Re:trasmissione 433mhz
yes funziona.....ho dovuto fare un lcd clear...altrimenti il disp visualizzava male

ronwal il 21/2/2015, 9:47
Re:trasmissione 433mhz
non riesco a moltiplicare il valore....il fattore di conversione devo dichiararlo come int?

ElettroshockNow il 21/2/2015, 9:57
Re:trasmissione 433mhz
float Tensione = Tensione_adc*0.45;

La variabile che trasmetti è un int ed equivale al valore letto sull'adc.

La tensione sarà tale valore per il fattore di conversione e per farlo devi creare una variabile float che sarà appunto la tensione

Ti consiglio però di dichiarare la variabile ad inizio listato cosi da averla come globale.

float tensione;

Tensione = Tensione_adc*0.45;

ronwal il 21/2/2015, 10:17
Re:trasmissione 433mhz
comunque da una stanza all'altra trasmette....provero a dare al tx 12v in modo da dargli piu potenza...cosi magari trasmette anche fuori!!👍

ElettroshockNow il 21/2/2015, 11:13
Re:trasmissione 433mhz


Metto in lista nuovi acquisti... sperando che la sfortuna non mi segua

ronwal il 21/2/2015, 15:48
Re:trasmissione 433mhz
ci sono riuscito


ronwal il 21/2/2015, 15:57
Re:trasmissione 433mhz
in linea d'aria siamo a circa 25 mt.....e max da una stanza all'altra....(con una parete in mezzo)!

ElettroshockNow il 21/2/2015, 20:01
Re:trasmissione 433mhz


ronwal il 21/2/2015, 20:03
Re:trasmissione 433mhz
Tutto merito tuo!!!!!
Una domanda....ma i moduli 2,4gh funzionano meglio?....si usano allo stesso modo?

ronwal il 21/2/2015, 20:03
Re:trasmissione 433mhz
se non e molto difficile potrei farci un pensierino!!

ElettroshockNow il 21/2/2015, 20:27
Re:trasmissione 433mhz
Non saprei ,ma credo di no.

In caso apri una discussione,magari qualche utente già li usa e può condividere ;)

Absolute il 22/2/2015, 15:36
Re:trasmissione 433mhz
CITAZIONE (ronwal, 21/02/2015 20:27:06 ) [quote]Una domanda....ma i moduli 2,4gh funzionano meglio?....si usano allo stesso modo?


Noi stiamo sperimentando
ort) dopo di che la si può caricare in qualsiasi applicativo per visualizzarla. Inoltre il modulo può essere impostato in modalità bridge (che loro chiamano AP+STA), ovvero impostato come client WiFi di un altro sistema WiFi e integrato in esso. La stringa a questo punto viene inviata all'interno di una rete e prelevata sempre alla stessa maniera dall'IP del modulo WiFi. Se si considera il costo del modulo di meno di 10$....

ronwal il 22/2/2015, 22:53
Re:trasmissione 433mhz
domandina facile facile....ma fa male alla salute la trasmissione 433mhz 10mw di pontenza?.....conviene ridurre la trasmissione a che so 5 -10 sec cadauna oppure non importa?

ElettroshockNow il 22/2/2015, 22:59
Re:trasmissione 433mhz
Altro che domandina ....

Cmq esiste una normativa (non ricordo ) che non consente una trasmissione continua a 433Mhz.
Il perché ?
Forse per non occupare la frequenza da un solo dispositivo..... forse.....

ronwal il 23/2/2015, 7:30
Re:trasmissione 433mhz

ronwal il 23/2/2015, 7:31
Re:trasmissione 433mhz
date un occhio!
Secondo voi che Sar hanno questi modulini da 10 mw?
Possiamo preouccuparci?

ronwal il 25/2/2015, 18:20
Re:trasmissione 433mhz
Mi sa che questa domanda fa paura a molti.....
Per Elettro.....ora ho settato un delay di 20 secondi tra una trasmissione e l'altra😷...siamo sicuri che negli altri 19 non trasmette nulla?
Volendo posso aumentare il delay a 1 minuto quando ho un determinato valore in ingresso su di un pin analogico?

MarKoZaKKa il 26/2/2015, 13:12
Re:trasmissione 433mhz
CITAZIONE (Absolute, 25/02/2015 18:20:07 ) [quote]
Noi stiamo sperimentando
Grazie.

Absolute il 27/2/2015, 10:59
Re:trasmissione 433mhz
Anche noi non li abbiamo presi dal produttore perché spedisce con DHL, e altre al costo di spedizione elevato, ci sono più possibilità che faccia pure dogana.
Li puoi trovare tranquillamente sulla baia ad un prezzo di poco superiore.....
Vedi

ElettroshockNow il 27/2/2015, 14:02
Re:trasmissione 433mhz
CITAZIONE (ronwal, 27/02/2015 10:59:32 ) [quote]Per Elettro.....ora ho settato un delay di 20 secondi tra una trasmissione e l'altra😷...siamo sicuri che negli altri 19 non trasmette nulla?


Sicurissimi, la modulazione è di tipo OOK ;)
Ciò significa che i due stati digitali (1 e 0) vengono riconosciuti con presenza o meno di portante.
Con questa semplice soluzione è possibile gestire il trasmettitore spengendolo con lo stesso pin della tx, basterà porlo a 0.
E' ciò che fa' di default la libreria ;)

ronwal il 27/2/2015, 14:36
Re:trasmissione 433mhz
Bene,e se volessi aumentare il delay portandolo ad 1-2 minuti in base ad un ingresso analogico?... come faccio?

jack6226 il 5/7/2015, 17:49
Re:trasmissione 433mhz
ciao a tutti sono un appassionato di elettronica e dia arduino e non ho potuto far a meno di notare ciò che avete scritto.
Interessato all'argomento ho provato a realizzare un progetto in cui seguendo il vostro codice dovevo riuscire a modulare l'intensità di un led ma senza successo potreste aiutarmi gentilmente

:cry:

i vostri codici

TX:

#include

void setup() {
vw_set_tx_pin(2);
vw_setup(2000);
}

void loop() {

int Lettura =map (analogRead(A0),510,1023,0,1023);
/* si possono inviare soltanto valori compresi tra
0 e 255 per tanto bisogna dividere la variabile in 2 parti
trasformare quindi in byte----> trasmettere---->
riconvertire...
char msg[2] è una variabile di tipo vettore

*/
byte Lettura1 = Lettura&0xFF;
byte Lettura2=(Lettura&0xFF00)>>8;
char msg[2] = {Lettura1,Lettura2};
digitalWrite(13, HIGH);
vw_send((uint8_t *)msg, 2 );
vw_wait_tx();
digitalWrite(13, LOW);

}


RX con una mia piccola modifica

#include
int Lettura;
unsigned long Tmemoria;
int led = 10;
int Letturadef;

int fadeAmount = 5;
void setup() {
Serial.begin(9600) ;
pinMode(led, OUTPUT);

vw_set_rx_pin(2);


vw_setup(2000);
vw_rx_start();
}


void loop() {
uint8_t buf[VW_MAX_MESSAGE_LEN];
uint8_t buflen = VW_MAX_MESSAGE_LEN;
if (vw_get_message(buf, &buflen))
{
Lettura = (int(buf[1]<<8)+buf[0]);
}

Letturadef = map(Lettura,0,1023,0,255);
analogWrite(led, Letturadef);



Serial.print("Lettura= ");
Serial.println(Letturadef);




}

ElettroshockNow il 5/7/2015, 19:04
Re:trasmissione 433mhz
Trasmetti direttamente il valore del convertitore senza il map.

Oppure fai il map dell'ingresso da 0 a 255 e invii il singolo byte.
In ricezione ti basterà usare il singolo buf per l'analogwrite
Ciao

ElettroshockNow il 5/7/2015, 19:16
Re:trasmissione 433mhz
Ovviamente testa prima senza moduli RF.
Collegando i due Gnd e il tx_pin del trasmettitore con rx_pin del ricevitore.

jack6226 il 5/7/2015, 19:42
Re:trasmissione 433mhz
Grazie della veloce risposta

ma non ho capito cosa dovrei fare nel senso

1 quali sono i passaggi che devo fare ?

2 cosa intendi con trasmetti direttamente il valore del ricevitore senza il map

3 e quando dici di usare il singolo buf intendi non trasmettere due variabili ma bensi una ?

:cry: :cry: :cry: :cry:

aiutami

ElettroshockNow il 5/7/2015, 21:32
Re:trasmissione 433mhz
Così su due piedi il tuo codice dovrebbe funzionare.
Prova senza i moduli connettendoli direttamente con due fili.

Per il discorso trasmissione è inutile complicarsi la vita a trasmettere un valore a 16 bit visto che l'analogWrite di arduino lavora su 256 passi.
Quindi ti consiglio di trasmettere direttamente un solo byte .
Per farlo usi la funzione map come nel tuo listato convertendo il valore del convertitore a/d lettura=(analogread (x),0,1023,0,255).

Così quello che ricevi nel buf [0] lo usi direttamente sull'analogwrite

jack6226 il 6/7/2015, 14:26
Re:trasmissione 433mhz
Questo e quello che mi hai detto di fare giusto?

tx
#include
int Letturadef;
int Lettura;
void setup() {
Serial.begin(9600);
vw_set_tx_pin(2);
vw_setup(2000);
}

void loop() {

Lettura =map (analogRead(A0),510,1023,0,1023);
Letturadef = map(Lettura,0,1023,0,255);
Serial.print("Lettura= ");
Serial.println(Letturadef);
byte Lettura1 = Letturadef&0xFF;
char msg[1] = {Lettura1};
digitalWrite(13, HIGH);
vw_send((uint8_t *)msg, 1 );
vw_wait_tx();
digitalWrite(13, LOW);
delay (200);
}


rx

#include
int Lettura;
unsigned long Tmemoria;
int led = 10;
void setup() {
Serial.begin(9600) ;
pinMode(led, OUTPUT);
vw_set_rx_pin(2);
vw_setup(2000);
vw_rx_start();
}
void loop() {
uint8_t buf[VW_MAX_MESSAGE_LEN];
uint8_t buflen = VW_MAX_MESSAGE_LEN;
if (vw_get_message(buf, &buflen))
{
Lettura = (int(buf[0]));
}
analogWrite(led, Lettura);
Serial.print("Lettura= ");
Serial.println(Lettura);
delay(200);
}}

facendo cio però i valori dell'analogico sono giusti nel primo e arrvano sbagliati nel secondo in pratica il centro non è 0 ma 249 e se lo metto verso il basso non è -255 ma 0

poi non riesco ancora a capire "Prova senza i moduli connettendoli direttamente con due fili."

devo fare cosa puoi spiegarmi bene anche quest'ultimo passaggio sono nelle tue mani..

jack6226 il 6/7/2015, 14:42
Re:trasmissione 433mhz
Ora riesco a mandare i valori usando questo codice però..



//tx

#include
int Letturadef;
int Lettura;
void setup() {
Serial.begin(9600);
vw_set_tx_pin(2);
vw_setup(2000);
}

void loop() {

Lettura =map (analogRead(A0),510,1023,0,1023);
Letturadef = map(Lettura,0,1023,0,255);

byte Lettura1 = Letturadef&0xFF;
byte Lettura2=(Letturadef&0xFF00)>>8;
char msg[2] = {Lettura1,Lettura2};
digitalWrite(13, HIGH);
vw_send((uint8_t *)msg, 2 );
vw_wait_tx();
digitalWrite(13, LOW);
delay (200);
Serial.print("Lettura= ");
Serial.println(Letturadef);
}


per ricevere



#include
int Lettura;
unsigned long Tmemoria;
int led = 10;
void setup() {
Serial.begin(9600) ;
pinMode(led, OUTPUT);
vw_set_rx_pin(2);
vw_setup(2000);
vw_rx_start();
}
void loop() {
uint8_t buf[VW_MAX_MESSAGE_LEN];
uint8_t buflen = VW_MAX_MESSAGE_LEN;
if (vw_get_message(buf, &buflen))
{
Lettura = (int(buf[1]<<8)+buf[0]);
}
analogWrite(led, Lettura);
Serial.print("Lettura= ");
Serial.println(Lettura);
delay(200);
}

ElettroshockNow il 7/7/2015, 7:24
Re:trasmissione 433mhz
Quindi funziona ?

jack6226 il 7/7/2015, 9:52
Re:trasmissione 433mhz
No... :cry:
Purtroppo si accende sempre a 255 invece a 120 o 64 rimane spento..

Non so per quale assurdo motivo



TOP100-SOLAR Galleria Immagini EnergiAlternativa