Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <RFM69.h>
- #include <SPI.h>
- #define NETWORKID 100
- #define NODEID 1
- #define FREQUENCY RF69_868MHZ
- #define ENCRYPTKEY "drapeauarbitrage"
- #define IS_RFM69HCW true
- #define SERIAL_BAUD 115200
- #define RFM69_CS 8
- #define RFM69_IRQ 7
- #define RFM69_IRQN 4
- #define RFM69_RST 4
- #define TONE_FREQUENCY 440 // En Hz
- #define DELAY 3000 // En ms
- uint8_t g_PinVibreur = 13;
- uint8_t g_FirstPinBuzzer = 11;
- uint8_t g_SecondPinBuzzer = 12;
- RFM69 g_Radio = RFM69(RFM69_CS, RFM69_IRQ, IS_RFM69HCW, RFM69_IRQN);
- void setup() {
- pinMode(RFM69_RST, OUTPUT);
- digitalWrite(RFM69_RST, HIGH);
- delay(100);
- digitalWrite(RFM69_RST, LOW);
- delay(100);
- g_Radio.initialize(FREQUENCY, NODEID, NETWORKID);
- if (IS_RFM69HCW) {
- g_Radio.setHighPower();
- }
- g_Radio.setPowerLevel(31); // power output ranges from 0 (5dBm) to 31 (20dBm)
- g_Radio.encrypt(ENCRYPTKEY);
- pinMode(g_PinVibreur, OUTPUT);
- pinMode(g_FirstPinBuzzer, OUTPUT);
- pinMode(g_SecondPinBuzzer, OUTPUT);
- }
- void loop() {
- if (g_Radio.receiveDone())
- {
- if ((bool)g_Radio.DATA == true)
- {
- uint32_t TimerStartTime = millis();
- while (millis() - TimerStartTime < DELAY) {
- digitalWrite(g_PinVibreur, HIGH);
- delay(500);
- Tone(g_FirstPinBuzzer, g_SecondPinBuzzer, 440);
- digitalWrite(g_PinVibreur, LOW);
- delay(500);
- noTone(g_FirstPinBuzzer);
- noTone(g_SecondPinBuzzer);
- }
- }
- }
- g_Radio.receiveDone(); //put radio in RX mode
- }
- void Tone(uint8_t pin_1, uint8_t pin_2, unsigned frequence) {
- noTone(pin_2);
- tone(pin_1, TONE_FREQUENCY);
- noTone(pin_1);
- tone(pin_2, TONE_FREQUENCY);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement