Integrating the ublox LISA C200 modem
Fork of SprintUSBModemHTTPClientTest by
main.cpp@3:2880a41bb480, 2013-09-25 (annotated)
- Committer:
- mpulice
- Date:
- Wed Sep 25 21:25:11 2013 +0000
- Revision:
- 3:2880a41bb480
- Parent:
- 0:43ee25ebfe6b
- Child:
- 7:655438fd019f
Fixed some C200 specific enumeration issues. ; ; Next: ; Select the AT port for connecting PPP
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
donatien | 0:43ee25ebfe6b | 1 | #include "mbed.h" |
donatien | 0:43ee25ebfe6b | 2 | #include "SprintUSBModem.h" |
donatien | 0:43ee25ebfe6b | 3 | #include "HTTPClient.h" |
donatien | 0:43ee25ebfe6b | 4 | |
donatien | 0:43ee25ebfe6b | 5 | void test(void const*) |
donatien | 0:43ee25ebfe6b | 6 | { |
donatien | 0:43ee25ebfe6b | 7 | SprintUSBModem modem(p18); |
donatien | 0:43ee25ebfe6b | 8 | HTTPClient http; |
donatien | 0:43ee25ebfe6b | 9 | char str[512]; |
donatien | 0:43ee25ebfe6b | 10 | |
donatien | 0:43ee25ebfe6b | 11 | Thread::wait(5000); |
donatien | 0:43ee25ebfe6b | 12 | printf("Switching power on\r\n"); |
donatien | 0:43ee25ebfe6b | 13 | |
donatien | 0:43ee25ebfe6b | 14 | modem.power(true); |
donatien | 0:43ee25ebfe6b | 15 | |
donatien | 0:43ee25ebfe6b | 16 | int ret = modem.connect(); |
donatien | 0:43ee25ebfe6b | 17 | if(ret) |
donatien | 0:43ee25ebfe6b | 18 | { |
donatien | 0:43ee25ebfe6b | 19 | printf("Could not connect\r\n"); |
donatien | 0:43ee25ebfe6b | 20 | return; |
donatien | 0:43ee25ebfe6b | 21 | } |
donatien | 0:43ee25ebfe6b | 22 | |
donatien | 0:43ee25ebfe6b | 23 | //GET data |
donatien | 0:43ee25ebfe6b | 24 | printf("Trying to fetch page...\r\n"); |
donatien | 0:43ee25ebfe6b | 25 | ret = http.get("http://mbed.org/media/uploads/donatien/hello.txt", str, 128); |
donatien | 0:43ee25ebfe6b | 26 | if (!ret) |
donatien | 0:43ee25ebfe6b | 27 | { |
donatien | 0:43ee25ebfe6b | 28 | printf("Page fetched successfully - read %d characters\r\n", strlen(str)); |
donatien | 0:43ee25ebfe6b | 29 | printf("Result: %s\r\n", str); |
donatien | 0:43ee25ebfe6b | 30 | } |
donatien | 0:43ee25ebfe6b | 31 | else |
donatien | 0:43ee25ebfe6b | 32 | { |
donatien | 0:43ee25ebfe6b | 33 | printf("Error - ret = %d - HTTP return code = %d\r\n", ret, http.getHTTPResponseCode()); |
donatien | 0:43ee25ebfe6b | 34 | } |
donatien | 0:43ee25ebfe6b | 35 | |
donatien | 0:43ee25ebfe6b | 36 | //POST data |
donatien | 0:43ee25ebfe6b | 37 | HTTPMap map; |
donatien | 0:43ee25ebfe6b | 38 | HTTPText text(str, 512); |
donatien | 0:43ee25ebfe6b | 39 | map.put("Hello", "World"); |
donatien | 0:43ee25ebfe6b | 40 | map.put("test", "1234"); |
donatien | 0:43ee25ebfe6b | 41 | printf("Trying to post data...\r\n"); |
donatien | 0:43ee25ebfe6b | 42 | ret = http.post("http://httpbin.org/post", map, &text); |
donatien | 0:43ee25ebfe6b | 43 | if (!ret) |
donatien | 0:43ee25ebfe6b | 44 | { |
donatien | 0:43ee25ebfe6b | 45 | printf("Executed POST successfully - read %d characters\r\n", strlen(str)); |
donatien | 0:43ee25ebfe6b | 46 | printf("Result: %s\r\n", str); |
donatien | 0:43ee25ebfe6b | 47 | } |
donatien | 0:43ee25ebfe6b | 48 | else |
donatien | 0:43ee25ebfe6b | 49 | { |
donatien | 0:43ee25ebfe6b | 50 | printf("Error - ret = %d - HTTP return code = %d\r\n", ret, http.getHTTPResponseCode()); |
donatien | 0:43ee25ebfe6b | 51 | } |
donatien | 0:43ee25ebfe6b | 52 | |
donatien | 0:43ee25ebfe6b | 53 | printf("Disconnecting\r\n"); |
donatien | 0:43ee25ebfe6b | 54 | |
donatien | 0:43ee25ebfe6b | 55 | modem.disconnect(); |
donatien | 0:43ee25ebfe6b | 56 | |
donatien | 0:43ee25ebfe6b | 57 | printf("Disconnected\r\n"); |
donatien | 0:43ee25ebfe6b | 58 | |
donatien | 0:43ee25ebfe6b | 59 | modem.power(false); |
donatien | 0:43ee25ebfe6b | 60 | |
donatien | 0:43ee25ebfe6b | 61 | printf("Powered off\r\n"); |
donatien | 0:43ee25ebfe6b | 62 | |
donatien | 0:43ee25ebfe6b | 63 | while(1) { |
donatien | 0:43ee25ebfe6b | 64 | } |
donatien | 0:43ee25ebfe6b | 65 | } |
donatien | 0:43ee25ebfe6b | 66 | |
donatien | 0:43ee25ebfe6b | 67 | |
donatien | 0:43ee25ebfe6b | 68 | int main() |
donatien | 0:43ee25ebfe6b | 69 | { |
donatien | 0:43ee25ebfe6b | 70 | DBG_INIT(); |
donatien | 0:43ee25ebfe6b | 71 | DBG_SET_SPEED(115200); |
donatien | 0:43ee25ebfe6b | 72 | DBG_SET_NEWLINE("\r\n"); |
donatien | 0:43ee25ebfe6b | 73 | Thread testTask(test, NULL, osPriorityNormal, 1024 * 5); |
donatien | 0:43ee25ebfe6b | 74 | DigitalOut led(LED1); |
donatien | 0:43ee25ebfe6b | 75 | while(1) |
donatien | 0:43ee25ebfe6b | 76 | { |
donatien | 0:43ee25ebfe6b | 77 | led=!led; |
donatien | 0:43ee25ebfe6b | 78 | Thread::wait(1000); |
donatien | 0:43ee25ebfe6b | 79 | } |
donatien | 0:43ee25ebfe6b | 80 | |
donatien | 0:43ee25ebfe6b | 81 | return 0; |
donatien | 0:43ee25ebfe6b | 82 | } |