NRF receiver
Dependencies: TSI mbed nRF24L01P
main_send.cpp
00001 #include "mbed.h" 00002 #include "nRF24L01P.h" 00003 #include "TSISensor.h" 00004 00005 Serial pc(USBTX, USBRX); // tx, rx 00006 00007 nRF24L01P my_nrf24l01p(PTD2, // MOSI 00008 PTD3, // MISO 00009 PTD1, // SCK 00010 PTA13, // CSN 00011 PTD5, // CE 00012 PTD0); // IRQ 00013 #define TRANSFER_SIZE 4 00014 00015 DigitalOut led(LED_GREEN); 00016 00017 TSISensor tsi; 00018 00019 int main() 00020 { 00021 00022 pc.baud(115200); 00023 pc.format(); 00024 00025 char txData[TRANSFER_SIZE]; 00026 int txDataCnt = 4; 00027 00028 my_nrf24l01p.powerUp(); 00029 00030 pc.printf( "nRF24L01+ Frequency : %d MHz\r\n", my_nrf24l01p.getRfFrequency() ); 00031 pc.printf( "nRF24L01+ Output power : %d dBm\r\n", my_nrf24l01p.getRfOutputPower() ); 00032 pc.printf( "nRF24L01+ Data Rate : %d kbps\r\n", my_nrf24l01p.getAirDataRate() ); 00033 pc.printf( "nRF24L01+ TX Address : 0x%010llX\r\n", my_nrf24l01p.getTxAddress() ); 00034 pc.printf( "nRF24L01+ RX Address : 0x%010llX\r\n", my_nrf24l01p.getRxAddress() ); 00035 00036 pc.printf( "Type keys to test transfers:\r\n (transfers are grouped into %d characters)\r\n", TRANSFER_SIZE ); 00037 00038 my_nrf24l01p.setTransferSize( TRANSFER_SIZE ); 00039 00040 my_nrf24l01p.enable(); 00041 00042 while (1) { 00043 00044 while(tsi.readPercentage() < 0.5); 00045 txData[0] = 's'; 00046 txData[1] = 't'; 00047 txData[2] = 'a'; 00048 txData[3] = '\0'; 00049 my_nrf24l01p.write( NRF24L01P_PIPE_P0, txData, txDataCnt ); 00050 pc.printf("txData: %s \n\r", txData); 00051 00052 wait(1); 00053 00054 while(tsi.readPercentage() < 0.5); 00055 txData[0] = 'S'; 00056 txData[1] = 'T'; 00057 txData[2] = 'A'; 00058 txData[3] = '\0'; 00059 my_nrf24l01p.write( NRF24L01P_PIPE_P0, txData, txDataCnt ); 00060 pc.printf("txData: %s \n\r", txData); 00061 00062 wait(1); 00063 } 00064 } 00065 00066 /* 00067 ///////////////////////////////////////////////////////////////////////////////////// 00068 Serial pc(USBTX, USBRX); // tx, rx 00069 00070 nRF24L01P my_nrf24l01p(PTD2, // MOSI 00071 PTD3, // MISO 00072 PTD1, // SCK 00073 PTA13, // CSN 00074 PTD5, // CE 00075 PTD0); // IRQ 00076 #define TRANSFER_SIZE 4 00077 00078 DigitalOut led(LED_GREEN); 00079 00080 int main() { 00081 00082 pc.baud(9600); 00083 pc.format(); 00084 00085 char txData[TRANSFER_SIZE]; 00086 txData[0] = 's'; 00087 txData[1] = 't'; 00088 txData[2] = 'a'; 00089 txData[3] = '\0'; 00090 int txDataCnt = 4; 00091 00092 my_nrf24l01p.powerUp(); 00093 00094 pc.printf( "nRF24L01+ Frequency : %d MHz\r\n", my_nrf24l01p.getRfFrequency() ); 00095 pc.printf( "nRF24L01+ Output power : %d dBm\r\n", my_nrf24l01p.getRfOutputPower() ); 00096 pc.printf( "nRF24L01+ Data Rate : %d kbps\r\n", my_nrf24l01p.getAirDataRate() ); 00097 pc.printf( "nRF24L01+ TX Address : 0x%010llX\r\n", my_nrf24l01p.getTxAddress() ); 00098 pc.printf( "nRF24L01+ RX Address : 0x%010llX\r\n", my_nrf24l01p.getRxAddress() ); 00099 00100 pc.printf( "Type keys to test transfers:\r\n (transfers are grouped into %d characters)\r\n", TRANSFER_SIZE ); 00101 00102 my_nrf24l01p.setTransferSize( TRANSFER_SIZE ); 00103 00104 my_nrf24l01p.enable(); 00105 00106 while (1) 00107 { 00108 led = 1 - led; 00109 wait(2.0); 00110 00111 my_nrf24l01p.write( NRF24L01P_PIPE_P0, txData, txDataCnt ); 00112 00113 pc.printf("txData: %s \n\r", txData); 00114 } 00115 } 00116 00117 00118 ///////////////////////////////////////////////////////////////////////////////////// 00119 Serial pc(USBTX, USBRX); // tx, rx 00120 00121 nRF24L01P my_nrf24l01p(PTD2, // MOSI 00122 PTD3, // MISO 00123 PTD1, // SCK 00124 PTA13, // CSN 00125 PTD5, // CE 00126 PTD0); // IRQ 00127 #define TRANSFER_SIZE 4 00128 00129 TSISensor tsi; 00130 00131 DigitalOut led(LED_GREEN); 00132 00133 int main() { 00134 00135 pc.baud(9600); 00136 pc.format(); 00137 00138 char txData[TRANSFER_SIZE]; 00139 txData[0] = 's'; 00140 txData[1] = 't'; 00141 txData[2] = 'a'; 00142 txData[3] = '\0'; 00143 int txDataCnt = 4; 00144 00145 my_nrf24l01p.powerUp(); 00146 00147 pc.printf( "nRF24L01+ Frequency : %d MHz\r\n", my_nrf24l01p.getRfFrequency() ); 00148 pc.printf( "nRF24L01+ Output power : %d dBm\r\n", my_nrf24l01p.getRfOutputPower() ); 00149 pc.printf( "nRF24L01+ Data Rate : %d kbps\r\n", my_nrf24l01p.getAirDataRate() ); 00150 pc.printf( "nRF24L01+ TX Address : 0x%010llX\r\n", my_nrf24l01p.getTxAddress() ); 00151 pc.printf( "nRF24L01+ RX Address : 0x%010llX\r\n", my_nrf24l01p.getRxAddress() ); 00152 00153 pc.printf( "Type keys to test transfers:\r\n (transfers are grouped into %d characters)\r\n", TRANSFER_SIZE ); 00154 00155 my_nrf24l01p.setTransferSize( TRANSFER_SIZE ); 00156 00157 my_nrf24l01p.enable(); 00158 00159 while(1) 00160 { 00161 my_nrf24l01p.write( NRF24L01P_PIPE_P0, txData, txDataCnt ); 00162 //wait(0.5); 00163 //pc.printf("txData: %s \n\r", txData); 00164 //led = 1 - led; 00165 } 00166 } 00167 00168 ///////////////////////////////////////////////////////////////////////////////////// 00169 Serial pc(USBTX, USBRX); // tx, rx 00170 00171 nRF24L01P my_nrf24l01p(p5, p6, p7, p8, p9); 00172 #define TRANSFER_SIZE 32 00173 00174 00175 //DigitalOut led(LED_GREEN); 00176 00177 int main() { 00178 00179 pc.baud(115200); 00180 pc.format(); 00181 00182 char txData[TRANSFER_SIZE]; 00183 txData[0] = 's'; 00184 txData[1] = 't'; 00185 txData[2] = 'a'; 00186 txData[3] = '\0'; 00187 int txDataCnt = 4; 00188 00189 my_nrf24l01p.powerUp(); 00190 my_nrf24l01p.setAirDataRate(NRF24L01P_DATARATE_1_MBPS); 00191 pc.printf( "nRF24L01+ Frequency : %d MHz\r\n", my_nrf24l01p.getRfFrequency() ); 00192 pc.printf( "nRF24L01+ Output power : %d dBm\r\n", my_nrf24l01p.getRfOutputPower() ); 00193 pc.printf( "nRF24L01+ Data Rate : %d kbps\r\n", my_nrf24l01p.getAirDataRate() ); 00194 pc.printf( "nRF24L01+ TX Address : 0x%010llX\r\n", my_nrf24l01p.getTxAddress() ); 00195 pc.printf( "nRF24L01+ RX Address : 0x%010llX\r\n", my_nrf24l01p.getRxAddress() ); 00196 00197 pc.printf( "Type keys to test transfers:\r\n (transfers are grouped into %d characters)\r\n", TRANSFER_SIZE ); 00198 00199 my_nrf24l01p.setTransferSize( TRANSFER_SIZE ); 00200 00201 my_nrf24l01p.enable(); 00202 00203 while (1) 00204 { 00205 00206 //while(tsi.readPercentage() < 0.5); 00207 txData[0] = 's'; 00208 txData[1] = 't'; 00209 txData[2] = 'a'; 00210 txData[3] = '\0'; 00211 my_nrf24l01p.write( NRF24L01P_PIPE_P0, txData, txDataCnt ); 00212 pc.printf("txData: %s \n\r", txData); 00213 00214 wait(1); 00215 //while(tsi.readPercentage() < 0.5); 00216 txData[0] = 'S'; 00217 txData[1] = 'T'; 00218 txData[2] = 'A'; 00219 txData[3] = '\0'; 00220 my_nrf24l01p.write( NRF24L01P_PIPE_P0, txData, txDataCnt ); 00221 pc.printf("txData: %s \n\r", txData); 00222 00223 wait(1); 00224 } 00225 }*/
Generated on Fri Jul 22 2022 22:33:17 by 1.7.2