IOT_LAB_accelerometer_receiver
Dependencies: MMA8451Q mbed nRF24L01P
main.cpp@0:1208cef6fff7, 2017-04-03 (annotated)
- Committer:
- RITVIK_DAVE
- Date:
- Mon Apr 03 03:08:00 2017 +0000
- Revision:
- 0:1208cef6fff7
acc
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
RITVIK_DAVE | 0:1208cef6fff7 | 1 | #include "mbed.h" |
RITVIK_DAVE | 0:1208cef6fff7 | 2 | #include "nRF24L01P.h" |
RITVIK_DAVE | 0:1208cef6fff7 | 3 | |
RITVIK_DAVE | 0:1208cef6fff7 | 4 | Serial pc(USBTX, USBRX); // tx, rx |
RITVIK_DAVE | 0:1208cef6fff7 | 5 | |
RITVIK_DAVE | 0:1208cef6fff7 | 6 | nRF24L01P my_nrf24l01p(PTD2, PTD3, PTD1, PTD0, PTD5, PTD4); // mosi, miso, sck, csn, ce, irq |
RITVIK_DAVE | 0:1208cef6fff7 | 7 | DigitalOut GreenLED(PTA12); |
RITVIK_DAVE | 0:1208cef6fff7 | 8 | |
RITVIK_DAVE | 0:1208cef6fff7 | 9 | |
RITVIK_DAVE | 0:1208cef6fff7 | 10 | int main() { |
RITVIK_DAVE | 0:1208cef6fff7 | 11 | |
RITVIK_DAVE | 0:1208cef6fff7 | 12 | char count[3]; |
RITVIK_DAVE | 0:1208cef6fff7 | 13 | char RxDataCnt; |
RITVIK_DAVE | 0:1208cef6fff7 | 14 | char temp; |
RITVIK_DAVE | 0:1208cef6fff7 | 15 | |
RITVIK_DAVE | 0:1208cef6fff7 | 16 | float x,y,z; |
RITVIK_DAVE | 0:1208cef6fff7 | 17 | my_nrf24l01p.powerUp(); |
RITVIK_DAVE | 0:1208cef6fff7 | 18 | my_nrf24l01p.setRfFrequency(2422); |
RITVIK_DAVE | 0:1208cef6fff7 | 19 | |
RITVIK_DAVE | 0:1208cef6fff7 | 20 | // Display the (default) setup of the nRF24L01+ chip |
RITVIK_DAVE | 0:1208cef6fff7 | 21 | pc.printf( "nRF24L01+ Frequency : %d MHz\r\n", my_nrf24l01p.getRfFrequency() ); |
RITVIK_DAVE | 0:1208cef6fff7 | 22 | pc.printf( "nRF24L01+ Output power : %d dBm\r\n", my_nrf24l01p.getRfOutputPower() ); |
RITVIK_DAVE | 0:1208cef6fff7 | 23 | pc.printf( "nRF24L01+ Data Rate : %d kbps\r\n", my_nrf24l01p.getAirDataRate() ); |
RITVIK_DAVE | 0:1208cef6fff7 | 24 | pc.printf( "nRF24L01+ TX Address : 0x%010llX\r\n", my_nrf24l01p.getTxAddress() ); |
RITVIK_DAVE | 0:1208cef6fff7 | 25 | pc.printf( "nRF24L01+ RX Address : 0x%010llX\r\n", my_nrf24l01p.getRxAddress() ); |
RITVIK_DAVE | 0:1208cef6fff7 | 26 | |
RITVIK_DAVE | 0:1208cef6fff7 | 27 | pc.printf( "Simple 3 Byte Receiver\r\n" ); |
RITVIK_DAVE | 0:1208cef6fff7 | 28 | |
RITVIK_DAVE | 0:1208cef6fff7 | 29 | RxDataCnt = 3; |
RITVIK_DAVE | 0:1208cef6fff7 | 30 | my_nrf24l01p.setTransferSize( RxDataCnt ); |
RITVIK_DAVE | 0:1208cef6fff7 | 31 | |
RITVIK_DAVE | 0:1208cef6fff7 | 32 | my_nrf24l01p.setReceiveMode(); |
RITVIK_DAVE | 0:1208cef6fff7 | 33 | my_nrf24l01p.enable(); |
RITVIK_DAVE | 0:1208cef6fff7 | 34 | |
RITVIK_DAVE | 0:1208cef6fff7 | 35 | while (1) { |
RITVIK_DAVE | 0:1208cef6fff7 | 36 | |
RITVIK_DAVE | 0:1208cef6fff7 | 37 | // If we've received anything in the nRF24L01+... |
RITVIK_DAVE | 0:1208cef6fff7 | 38 | if ( my_nrf24l01p.readable() ) { |
RITVIK_DAVE | 0:1208cef6fff7 | 39 | |
RITVIK_DAVE | 0:1208cef6fff7 | 40 | // ...read the data into the receive buffer |
RITVIK_DAVE | 0:1208cef6fff7 | 41 | temp = my_nrf24l01p.read( NRF24L01P_PIPE_P0, count, RxDataCnt ); |
RITVIK_DAVE | 0:1208cef6fff7 | 42 | if(count[0]>100) |
RITVIK_DAVE | 0:1208cef6fff7 | 43 | x=(count[0]-100)/(-50); |
RITVIK_DAVE | 0:1208cef6fff7 | 44 | else |
RITVIK_DAVE | 0:1208cef6fff7 | 45 | x=count[0]/50.0; |
RITVIK_DAVE | 0:1208cef6fff7 | 46 | |
RITVIK_DAVE | 0:1208cef6fff7 | 47 | if(count[1]>100) |
RITVIK_DAVE | 0:1208cef6fff7 | 48 | y=(count[1]-100)/(-50); |
RITVIK_DAVE | 0:1208cef6fff7 | 49 | else |
RITVIK_DAVE | 0:1208cef6fff7 | 50 | y=count[1]/50.0; |
RITVIK_DAVE | 0:1208cef6fff7 | 51 | |
RITVIK_DAVE | 0:1208cef6fff7 | 52 | if(count[2]>100) |
RITVIK_DAVE | 0:1208cef6fff7 | 53 | z=(count[2]-100)/(-50); |
RITVIK_DAVE | 0:1208cef6fff7 | 54 | else |
RITVIK_DAVE | 0:1208cef6fff7 | 55 | z=count[2]/50.0; |
RITVIK_DAVE | 0:1208cef6fff7 | 56 | |
RITVIK_DAVE | 0:1208cef6fff7 | 57 | pc.printf( "Cnt %d = x_axis-->%d y_axis-->%d z_axis%d\r\n",temp,x,y,z); |
RITVIK_DAVE | 0:1208cef6fff7 | 58 | |
RITVIK_DAVE | 0:1208cef6fff7 | 59 | |
RITVIK_DAVE | 0:1208cef6fff7 | 60 | // Toggle LED2 (to help debug nRF24L01+ -> Host communication) |
RITVIK_DAVE | 0:1208cef6fff7 | 61 | GreenLED = !GreenLED; |
RITVIK_DAVE | 0:1208cef6fff7 | 62 | wait_ms(10); |
RITVIK_DAVE | 0:1208cef6fff7 | 63 | } |
RITVIK_DAVE | 0:1208cef6fff7 | 64 | } |
RITVIK_DAVE | 0:1208cef6fff7 | 65 | } |
RITVIK_DAVE | 0:1208cef6fff7 | 66 |