aurora moon
/
receive_copy_copy
手柄测试
Fork of nRF24L01P_Hello_World by
main.cpp
- Committer:
- accelerator225
- Date:
- 2017-11-01
- Revision:
- 4:d6e5433bcbf6
- Parent:
- 3:61afd8d17063
File content as of revision 4:d6e5433bcbf6:
#include "mbed.h" #include "nRF24L01P.h" #define TRANSFER_SIZE 11 #define JY901transfersize 44 Serial pc(PA_9,PA_10, 9600); // tx, rx //Serial JY901(PB_10,PB_11,9600); // mosi, miso, sck, csn, ce, irq nRF24L01P my_nrf24l01p(PB_15, PB_14, PB_13, PB_6, PB_5, PB_7); int main() { pc.printf("init\r\n"); char JY901data[JY901transfersize]; char txData[TRANSFER_SIZE], rxData[TRANSFER_SIZE]; int JY901cnt = 0; int txDataCnt = 0; int rxDataCnt = 0; my_nrf24l01p.powerUp(); 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() ); my_nrf24l01p.setTransferSize( TRANSFER_SIZE ); my_nrf24l01p.setReceiveMode(); my_nrf24l01p.enable(); while (1) { /*while(JY901cnt < JY901transfersize) JY901data[JY901cnt++] = JY901.getc(); my_nrf24l01p.write(NRF24L01P_PIPE_P0,JY901data,JY901cnt); my_nrf24l01p.setReceiveMode(); JY901cnt = 0;;*/ if ( my_nrf24l01p.readable() ) { if ( pc.readable() ) { txData[txDataCnt++] = pc.getc(); if ( txDataCnt >= sizeof( txData ) ) { my_nrf24l01p.write( NRF24L01P_PIPE_P0, txData, txDataCnt ); my_nrf24l01p.setReceiveMode(); txDataCnt = 0; } } rxDataCnt = my_nrf24l01p.read( NRF24L01P_PIPE_P0, rxData, sizeof( rxData ) ); for ( int i = 0; rxDataCnt > 0; rxDataCnt--, i++ ) { pc.putc( rxData[i] ); } } } }