Difference between revisions of "433Mhz RF link kit"
From Geeetech Wiki
(→examlple code) |
(→examlple code) |
||
Line 66: | Line 66: | ||
int i; | int i; | ||
digitalWrite(12, true); //Flash a light to show received good message | digitalWrite(12, true); //Flash a light to show received good message | ||
− | + | Serial.print("Got: "); //Message with a good checksum received, dump it. | |
for (i = 0; i < buflen; i++) | for (i = 0; i < buflen; i++) | ||
{ | { | ||
− | + | Serial.print(buf[i], HEX); | |
− | + | Serial.print(" "); | |
} | } | ||
Serial.println(""); | Serial.println(""); |
Revision as of 10:33, 26 March 2012
Introduction
The kit is consisted of transmitter and receiver, popular used for remote control.
Specification
- Frequency: 433Mhz.
- Modulation: ASK
- Receiver Data Output: High - 1/2 Vcc, Low - 0.7v
- Transmitter Input Voltage: 3-12V (high voltage = more transmitting power)
Wiring diagram
examlple code
Transmmiter:
#include <VirtualWire.h> #undef int #undef abs #undef double #undef float #undef round void setup() { Serial.begin(9600); // Debugging only Serial.println("setup"); // Initialise the IO and ISR vw_set_ptt_inverted(true); // Required for DR3100 vw_setup(2000); // Bits per sec } void loop() { const char *msg = "hello"; digitalWrite(13, true); // Flash a light to show transmitting vw_send((uint8_t *)msg, strlen(msg)); vw_wait_tx(); // Wait until the whole message is gone digitalWrite(13, false); delay(200); }
Receiver:
#include <VirtualWire.h> #undef int #undef abs #undef double #undef float #undef round void setup() { Serial.begin(9600); // Debugging only Serial.println("setup"); // Initialise the IO and ISR 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(12, true); //Flash a light to show received good message
Serial.print("Got: "); //Message with a good checksum received, dump it.
for (i = 0; i < buflen; i++)
{ Serial.print(buf[i], HEX); Serial.print(" "); } Serial.println("");
digitalWrite(12, false); } }