![](/media/cache/group/default_image.jpg.50x50_q85.jpg)
Node 1 for WSN communication, sending Pot values over nRF
Fork of WSN_Node1 by
Diff: node1.cpp
- Revision:
- 5:c44298b018f4
- Parent:
- 4:b3a70cbb7c81
- Child:
- 6:47347a642702
diff -r b3a70cbb7c81 -r c44298b018f4 node1.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/node1.cpp Mon Jun 06 11:05:41 2016 +0000 @@ -0,0 +1,64 @@ +/****PIPE1 Transmitter****/ + +#include "mbed.h" +#include "nRF24L01P.h" + +Serial pc(USBTX, USBRX); // tx, rx + +nRF24L01P my_nrf24l01p(PTD2, PTD3, PTD1, PTD0, PTD5, PTD4); // mosi, miso, sck, csn, ce, irq +DigitalOut RedLED(PTA5); +AnalogIn pot(A0); + +int main() +{ + char count[1]; + char TxDataCnt; + char temp; + + //set tx and rx address for pipe1: 5bytes long; different for every pipe + long long TxAddress_PIPE1 = 0xE2E2E2E2E2; + long long RxAddress_PIPE1 = 0xE2E2E2E2E2; + + my_nrf24l01p.powerUp(); + my_nrf24l01p.setRfFrequency(2410); + + //set tx address + my_nrf24l01p.setTxAddress(TxAddress_PIPE1); + + //set rxaddress with default width for specified pipe + my_nrf24l01p.setRxAddress(RxAddress_PIPE1, DEFAULT_NRF24L01P_ADDRESS_WIDTH, NRF24L01P_PIPE_P1); + + // Display the (default) setup of the nRF24L01+ chip + 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 - PIPE1 : 0x%010llX\r\n", my_nrf24l01p.getTxAddress() ); + + pc.printf( "Wirelesss sensor network \r\n"); + + TxDataCnt = 1; + + //set transfer size for each pipe + my_nrf24l01p.setTransferSize(TxDataCnt, NRF24L01P_PIPE_P1); + my_nrf24l01p.enable(); + + char pot_val; + + while (1) { + + //adjusting data to 0-255 with char data type + pot_val = 255*(pot.read()); + + count[0] = pot_val; + + //transmit on specified pipe + temp = my_nrf24l01p.write( NRF24L01P_PIPE_P1,count, TxDataCnt ); + + pc.printf( "Sending %d bytes from PIPE1; POT=%d\r\n",temp,count[0]); + + // Toggle LED1 (to help debug Host -> nRF24L01+ communication) + RedLED = !RedLED; + + wait(1); + } +} \ No newline at end of file