Loading...
Pages: [1]   Go Down
Author Topic: Ricevere segnale 433 RF da telecomando cancello  (Read 253 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Salve a tutti, mi serviva utilizzare Arduino come telecomando di un cancello, però prima devo catturare la sequenza di bit trasmessi dal telecomando originale!
Ho fatto diverse prove con gli esempi della libreria Virtualwire...
qualcuno può aiutarmi???

il ricevitore che uso è questo: link
Logged

ivrea (to)
Offline Offline
God Member
*****
Karma: 10
Posts: 647
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ma in quel link vendono un ricevente e un trasmittente. Tu invece usi solo il ricevente su Arduino e come trasmittente usi il telecomando del cancello?
Se si, sei sicuro che il telecomando sia alla stessa frequenza di 433?
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

si uso solo il ricevitore,
il telecomando ho guardato su internet che il modello trasmette al 433 quindi ne sono sicuro...
Logged

ivrea (to)
Offline Offline
God Member
*****
Karma: 10
Posts: 647
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Sarebbe utile avere il link o il codice di uno sketch che hai provato.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Code:
#include <VirtualWire.h>

const int led_pin = 6;
const int transmit_pin = 12;
const int receive_pin = 11;
const int transmit_en_pin = 3;

void setup()
{
    delay(1000);
    Serial.begin(9600); // Debugging only
    Serial.println("setup");

    // Initialise the IO and ISR
    vw_set_tx_pin(transmit_pin);
    vw_set_rx_pin(receive_pin);
    vw_set_ptt_pin(transmit_en_pin);
    vw_set_ptt_inverted(true); // Required for DR3100
    vw_setup(2000); // Bits per sec

    vw_rx_start();       // Start the receiver PLL running
}

void loop()
{
    uint8_t buf[VW_MAX_MESSAGE_LEN];
    uint8_t buflen = VW_MAX_MESSAGE_LEN;

    if (vw_get_message(buf, &buflen)) // Non-blocking
    {
int i;

        digitalWrite(led_pin, HIGH); // Flash a light to show received good message
// Message with a good checksum received, print it.
Serial.print("Got: ");

for (i = 0; i < buflen; i++)
{
    Serial.print(buf[i], HEX);
    Serial.print(' ');
}
Serial.println();
        digitalWrite(led_pin, LOW);
    }
}
Logged

Cagliari
Offline Offline
Faraday Member
**
Karma: 49
Posts: 3031
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

C'è una discussione simile --> http://arduino.cc/forum/index.php?topic=34911.0
Logged


Pages: [1]   Go Up
Print
 
Jump to: