Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //receiver ---- MEGA
- /* pin connections
- ===============
- 2 -> CD
- 3 -> DR
- 7 -> CE
- 8 -> PWR
- 9 -> TXE
- 53 -> CSN
- 51 -> SI
- 50 -> SO
- 52 -> SCK
- */
- #include <nRF905.h>
- #include <SPI.h>
- #define RXADDR {0xFE, 0x4C, 0xA6, 0xE5}
- #define TXADDR {0x58, 0x6F, 0x2E, 0x10}
- #define TIMEOUT 1000
- int LED = 49;
- void setup()
- {
- nRF905_init();
- byte addr[] = RXADDR;
- nRF905_setRXAddress(addr);
- nRF905_setTransmitPower(NRF905_PWR_n10);
- nRF905_setLowRxPower(NRF905_LOW_RX_ENABLE);
- nRF905_receive();
- pinMode(LED,OUTPUT);
- pinMode(13,OUTPUT);
- }
- void loop()
- {
- char data[1] = {0};
- nRF905_powerUp();
- unsigned long startTime = millis();
- byte addr[] = TXADDR;
- nRF905_setTXAddress(addr);
- nRF905_setData(data,sizeof(data));
- while(!(nRF905_send()))
- {
- digitalWrite(13,HIGH);
- };
- nRF905_receive();
- int buflen = 1;
- byte buffer [buflen];
- boolean success;
- unsigned long sendstarttime = millis();
- while(1)
- {
- success = nRF905_getData(buffer,sizeof(buffer));
- if(success)
- break;
- if(millis() - sendstarttime > TIMEOUT)
- break;
- }
- nRF905_powerDown();
- if(success)
- {
- if(buffer[0] == 1)
- digitalWrite(LED,HIGH);
- else
- digitalWrite(LED,LOW);
- delay(1000);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement