Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: LM75B SprintUSBModem WebSocketClient mbed-rtos mbed
Fork of SprintUSBModemWebsocketTest by
main.cpp@0:162f8f714dcc, 2012-10-30 (annotated)
- Committer:
- donatien
- Date:
- Tue Oct 30 10:01:33 2012 +0000
- Revision:
- 0:162f8f714dcc
- Child:
- 1:380f5db5d004
Initial commit
Who changed what in which revision?
| User | Revision | Line number | New contents of line | 
|---|---|---|---|
| donatien | 0:162f8f714dcc | 1 | #include "mbed.h" | 
| donatien | 0:162f8f714dcc | 2 | #include "SprintUSBModem.h" | 
| donatien | 0:162f8f714dcc | 3 | #include "Websocket.h" | 
| donatien | 0:162f8f714dcc | 4 | |
| donatien | 0:162f8f714dcc | 5 | void test(void const*) | 
| donatien | 0:162f8f714dcc | 6 | { | 
| donatien | 0:162f8f714dcc | 7 | SprintUSBModem modem(p18); | 
| donatien | 0:162f8f714dcc | 8 | Websocket ws("ws://sockets.mbed.org:443/ws/demo/rw"); | 
| donatien | 0:162f8f714dcc | 9 | char recv[128]; | 
| donatien | 0:162f8f714dcc | 10 | |
| donatien | 0:162f8f714dcc | 11 | Thread::wait(5000); | 
| donatien | 0:162f8f714dcc | 12 | printf("Switching power on\r\n"); | 
| donatien | 0:162f8f714dcc | 13 | |
| donatien | 0:162f8f714dcc | 14 | modem.power(true); | 
| donatien | 0:162f8f714dcc | 15 | |
| donatien | 0:162f8f714dcc | 16 | int ret = modem.connect(); | 
| donatien | 0:162f8f714dcc | 17 | if(ret) | 
| donatien | 0:162f8f714dcc | 18 | { | 
| donatien | 0:162f8f714dcc | 19 | printf("Could not connect\r\n"); | 
| donatien | 0:162f8f714dcc | 20 | return; | 
| donatien | 0:162f8f714dcc | 21 | } | 
| donatien | 0:162f8f714dcc | 22 | |
| donatien | 0:162f8f714dcc | 23 | bool c = ws.connect(); | 
| donatien | 0:162f8f714dcc | 24 | printf("Connect result: %s\r\n", c?"OK":"Failed"); | 
| donatien | 0:162f8f714dcc | 25 | |
| donatien | 0:162f8f714dcc | 26 | for(int i = 0; i < 10000; i++) | 
| donatien | 0:162f8f714dcc | 27 | { | 
| donatien | 0:162f8f714dcc | 28 | if(!(i%100)) | 
| donatien | 0:162f8f714dcc | 29 | { | 
| donatien | 0:162f8f714dcc | 30 | int ret = ws.send("WebSocket Hello World!"); | 
| donatien | 0:162f8f714dcc | 31 | if(ret<0) | 
| donatien | 0:162f8f714dcc | 32 | { | 
| donatien | 0:162f8f714dcc | 33 | printf("Timeout\r\n"); | 
| donatien | 0:162f8f714dcc | 34 | ws.close(); | 
| donatien | 0:162f8f714dcc | 35 | c = ws.connect(); | 
| donatien | 0:162f8f714dcc | 36 | printf("Connect result: %s\r\n", c?"OK":"Failed"); | 
| donatien | 0:162f8f714dcc | 37 | } | 
| donatien | 0:162f8f714dcc | 38 | } | 
| donatien | 0:162f8f714dcc | 39 | |
| donatien | 0:162f8f714dcc | 40 | if (ws.read(recv)) { | 
| donatien | 0:162f8f714dcc | 41 | printf("rcv: %s\r\n", recv); | 
| donatien | 0:162f8f714dcc | 42 | } | 
| donatien | 0:162f8f714dcc | 43 | |
| donatien | 0:162f8f714dcc | 44 | } | 
| donatien | 0:162f8f714dcc | 45 | |
| donatien | 0:162f8f714dcc | 46 | modem.disconnect(); | 
| donatien | 0:162f8f714dcc | 47 | |
| donatien | 0:162f8f714dcc | 48 | printf("Disconnected\r\n"); | 
| donatien | 0:162f8f714dcc | 49 | |
| donatien | 0:162f8f714dcc | 50 | modem.power(false); | 
| donatien | 0:162f8f714dcc | 51 | |
| donatien | 0:162f8f714dcc | 52 | printf("Powered off\r\n"); | 
| donatien | 0:162f8f714dcc | 53 | |
| donatien | 0:162f8f714dcc | 54 | while(1) { | 
| donatien | 0:162f8f714dcc | 55 | } | 
| donatien | 0:162f8f714dcc | 56 | } | 
| donatien | 0:162f8f714dcc | 57 | |
| donatien | 0:162f8f714dcc | 58 | |
| donatien | 0:162f8f714dcc | 59 | int main() | 
| donatien | 0:162f8f714dcc | 60 | { | 
| donatien | 0:162f8f714dcc | 61 | DBG_INIT(); | 
| donatien | 0:162f8f714dcc | 62 | DBG_SET_SPEED(115200); | 
| donatien | 0:162f8f714dcc | 63 | DBG_SET_NEWLINE("\r\n"); | 
| donatien | 0:162f8f714dcc | 64 | Thread testTask(test, NULL, osPriorityNormal, 1024 * 5); | 
| donatien | 0:162f8f714dcc | 65 | DigitalOut led(LED1); | 
| donatien | 0:162f8f714dcc | 66 | while(1) | 
| donatien | 0:162f8f714dcc | 67 | { | 
| donatien | 0:162f8f714dcc | 68 | led=!led; | 
| donatien | 0:162f8f714dcc | 69 | Thread::wait(1000); | 
| donatien | 0:162f8f714dcc | 70 | } | 
| donatien | 0:162f8f714dcc | 71 | |
| donatien | 0:162f8f714dcc | 72 | return 0; | 
| donatien | 0:162f8f714dcc | 73 | } | 
