Maniacbug's nRF24L01+ arduino library ported to mbed. Functional with minor issues.
Diff: nRF24L01P_Maniacbug.cpp
- Revision:
- 4:491267614a10
- Parent:
- 2:a483f426d380
- Child:
- 5:7463cf21b7fb
--- a/nRF24L01P_Maniacbug.cpp Thu Apr 25 14:45:45 2013 +0000 +++ b/nRF24L01P_Maniacbug.cpp Thu May 23 13:44:14 2013 +0000 @@ -393,6 +393,9 @@ // Flush buffers flush_rx(); flush_tx(); + + // set EN_RXADDRR to 0 to fix pipe 0 from receiving + write_register(EN_RXADDR, 0); } /****************************************************************************/ @@ -500,10 +503,10 @@ // Yay, we are done. // Power down - powerDown(); +// powerDown(); // Flush buffers (Is this a relic of past experimentation, and not needed anymore? - flush_tx(); +// flush_tx(); return result; } @@ -514,7 +517,7 @@ // Transmitter power-up write_register(CONFIG, ( read_register(CONFIG) | _BV(PWR_UP) ) & ~_BV(PRIM_RX) ); // wait_msMicroseconds(150); - wait_us(150); + wait_us(130); // Send the payload write_payload( buf, len ); @@ -522,7 +525,7 @@ // Allons! ce(HIGH); // wait_msMicroseconds(15); - wait_us(15); + wait_us(15); ce(LOW); } @@ -618,6 +621,8 @@ const uint8_t max_payload_size = 32; write_register(RX_PW_P0,min(payload_size,max_payload_size)); + + flush_tx(); } /****************************************************************************/ @@ -994,5 +999,3 @@ else return b; } - -// vim:ai:cin:sts=2 sw=2 ft=cpp