This program demonstrates how to use a MicroNFCBoard as a peripheral to send a message to a phone/tablet using P2P/SNEP/Android Beam.
Dependencies: MicroNFCBoardAPI mbed
Fork of MicroNFCBoardAPI_P2P_Client by
Revision 2:6c08a3907187, committed 2015-05-14
- Comitter:
- AppNearMe
- Date:
- Thu May 14 17:22:32 2015 +0000
- Parent:
- 1:5b804c0c8aa8
- Commit message:
- P2P client fork
Changed in this revision
main.cpp | Show annotated file Show diff for this revision Revisions of this file |
diff -r 5b804c0c8aa8 -r 6c08a3907187 main.cpp --- a/main.cpp Thu May 14 16:43:09 2015 +0000 +++ b/main.cpp Thu May 14 17:22:32 2015 +0000 @@ -23,11 +23,49 @@ int main() { nfc.init(); - bool b = true; - for(int i = 0; i < 10; i++) + + //Start polling + while(true) { - nfc.setLeds(b, !b); - wait_ms(200); - b = !b; + printf("Poll\r\n"); + nfc.startPolling(false, false, true); + + while( nfc.polling() ); + + if( nfc.p2p() ) + { + printf("Connected in P2P mode\r\n"); + } + else + { + continue; + } + + bool ndefMessageWritten = false; + bool ndefWritingStarted = false; + while( nfc.connected() ) + { + if( !ndefMessageWritten && nfc.ndefWriteable() ) + { + printf("SNEP Push\r\n"); + nfc.writeNdefUri("http://www.micronfcboard.com"); + nfc.ndefWrite(); + ndefWritingStarted = true; + } + if( ndefWritingStarted && !ndefMessageWritten && !nfc.ndefBusy() ) + { + ndefMessageWritten = true; + if( nfc.ndefSuccess() ) + { + printf("Push successful\r\n"); + } + else + { + printf("Push failed\r\n"); + } + } + } + + printf("Disconnected\r\n"); } }