Eduvance IoTLabs
/
WirelessSensorNetwork_RX
Receiver code of Wireless sensor network using NRF24L01P.
main.cpp
- Committer:
- eduvanceIoT
- Date:
- 2016-09-10
- Revision:
- 1:a7a6a47d25ca
- Parent:
- 0:6decc57a1464
File content as of revision 1:a7a6a47d25ca:
#include "mbed.h" #include "nRF24L01P.h" Serial pc(USBTX, USBRX); //NRF connectioms nRF24L01P my_nrf24l01p(PTD2, PTD3, PTD1, PTD0, PTD5, PTD4); // mosi, miso, sck, csn, ce, irq //led for debugging purposes DigitalOut GreenLED(LED2); int main() { char count[2]; char RxDataCnt; char temp; //waking up NRF module my_nrf24l01p.powerUp(); //set frequency of receiver my_nrf24l01p.setRfFrequency(2410); //display some default parameters of NRF pc.printf( "nRF24L01+ Frequency : %d MHz\r\n", my_nrf24l01p.getRfFrequency() ); pc.printf( "nRF24L01+ Output power : %d dBm\r\n", my_nrf24l01p.getRfOutputPower() ); pc.printf( "nRF24L01+ Data Rate : %d kbps\r\n", my_nrf24l01p.getAirDataRate() ); pc.printf( "nRF24L01+ TX Address : 0x%010llX\r\n", my_nrf24l01p.getTxAddress() ); pc.printf( "nRF24L01+ RX Address : 0x%010llX\r\n", my_nrf24l01p.getRxAddress() ); pc.printf( "Simple 2 Byte Receiver\r\n" ); RxDataCnt = 2; //setting packet size my_nrf24l01p.setTransferSize( RxDataCnt ); //setting NRF as receiver my_nrf24l01p.setReceiveMode(); //enabling radio my_nrf24l01p.enable(); while (1) { //If we've received anything in the nRF if (my_nrf24l01p.readable()) { //read the data into the receive buffer temp = my_nrf24l01p.read( NRF24L01P_PIPE_P0, count, RxDataCnt); pc.printf( "$%d %d;",count[0],count[1]); //Toggle LED2 for debugging purposes GreenLED = !GreenLED; wait_ms(10); } } }