EMWConfig for AT command mode

Dependencies:   ATParser

Fork of mbed-os-example-mbed5-blinky by mbed-os-examples

Files at this revision

API Documentation at this revision

Comitter:
Maggie17
Date:
Wed Nov 02 05:29:46 2016 +0000
Parent:
16:71f51c703eee
Commit message:
debug on

Changed in this revision

ATParser.lib Show annotated file Show diff for this revision Revisions of this file
README.md Show diff for this revision Revisions of this file
img/uvision.png Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
diff -r 71f51c703eee -r f5ed022d02c9 ATParser.lib
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ATParser.lib	Wed Nov 02 05:29:46 2016 +0000
@@ -0,0 +1,1 @@
+https://developer.mbed.org/users/Maggie17/code/ATParser/#47dd607c7707
diff -r 71f51c703eee -r f5ed022d02c9 README.md
--- a/README.md	Fri Oct 28 13:15:03 2016 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,89 +0,0 @@
-# Getting started with Blinky on mbed OS
-
-This is a very simple guide, reviewing the steps required to get Blinky working on an mbed OS platform.
-
-Please install [mbed CLI](https://github.com/ARMmbed/mbed-cli#installing-mbed-cli).
-
-## Get the example application!
-
-From the command line, import the example:
-
-```
-mbed import mbed-os-example-blinky
-cd mbed-os-example-blinky
-```
-
-### Now compile
-
-Invoke `mbed compile` specifying the name of your platform and your favorite toolchain (`GCC_ARM`, `ARM`, `IAR`). For example, for the ARM Compiler 5:
-
-```
-mbed compile -m K64F -t ARM
-```
-
-Your PC may take a few minutes to compile your code. At the end you should get the following result:
-
-```
-[snip]
-+----------------------------+-------+-------+------+
-| Module                     | .text | .data | .bss |
-+----------------------------+-------+-------+------+
-| Misc                       | 13939 |    24 | 1372 |
-| core/hal                   | 16993 |    96 |  296 |
-| core/rtos                  |  7384 |    92 | 4204 |
-| features/FEATURE_IPV4      |    80 |     0 |  176 |
-| frameworks/greentea-client |  1830 |    60 |   44 |
-| frameworks/utest           |  2392 |   512 |  292 |
-| Subtotals                  | 42618 |   784 | 6384 |
-+----------------------------+-------+-------+------+
-Allocated Heap: unknown
-Allocated Stack: unknown
-Total Static RAM memory (data + bss): 7168 bytes
-Total RAM memory (data + bss + heap + stack): 7168 bytes
-Total Flash memory (text + data + misc): 43402 bytes
-Image: .\.build\K64F\ARM\mbed-os-example-blinky.bin
-```
-
-### Program your board
-
-1. Connect your mbed device to the computer over USB.
-1. Copy the binary file to the mbed device .
-1. Press the reset button to start the program.
-
-You should see the LED of your platform turning on and off.
-
-Congratulations if you managed to complete this test!
-
-## Export the project to Keil MDK and debug your application
-
-From the command line, run the following command:
-
-```
-mbed export -m K64F -i uvision
-```
-
-To debug the application:
-
-1. Start uVision.
-1. Import the uVision project generated earlier.
-1. Compile your application and generate an `.axf` file.
-1. Make sure uVision is configured to debug over CMSIS-DAP (From the Project menu > Options for Target '...' > Debug tab > Use CMSIS-DAP Debugger).
-1. Set breakpoints and start a debug session.
-
-![Image of uVision](img/uvision.png)
-
-## Troubleshooting
-
-1. Make sure `mbed-cli` is working correctly and its version is greater than `0.8.9`
-
- ```
- mbed --version
- ```
-
- If not, you can update it easily:
-
- ```
- pip install mbed-cli --upgrade
- ```
-
-2. If using Keil MDK, make sure you have a license installed. [MDK-Lite](http://www.keil.com/arm/mdk.asp) has a 32KB restriction on code size.
diff -r 71f51c703eee -r f5ed022d02c9 img/uvision.png
Binary file img/uvision.png has changed
diff -r 71f51c703eee -r f5ed022d02c9 main.cpp
--- a/main.cpp	Fri Oct 28 13:15:03 2016 +0100
+++ b/main.cpp	Wed Nov 02 05:29:46 2016 +0000
@@ -1,13 +1,36 @@
 #include "mbed.h"
+#include "ATParser.h"
 
-DigitalOut led1(LED1);
+DigitalOut boot(D2);
+DigitalOut status(D4);
+BufferedSerial _serial(D1, D0, 1024);
+ATParser _parser(_serial);
 
-// main() runs in its own thread in the OS
-// (note the calls to Thread::wait below for delays)
 int main() {
-    while (true) {
-        led1 = !led1;
-        Thread::wait(500);
-    }
+    // Enter into data transmission / AT command mode
+    boot = 1;
+    status = 1;
+    
+    // Set the default factory parameters
+    int res = _parser.send("AT+FAT=ON")      // Enter into AT command mode
+        && _parser.recv("+OK")
+        && _parser.send("AT+FMODE=AT_NONE")  // Enter into AT command mode with WLAN, TCP and UDP closed
+        && _parser.recv("+OK")
+        && _parser.send("AT+FEVENT=OFF")     // Event notification off
+        && _parser.recv("+OK")
+        && _parser.send("AT+FBONJOUR=OFF")   // Bonjour off
+        && _parser.recv("+OK")
+        && _parser.send("AT+FWMODE=STA")     // Enter into STA mode
+        && _parser.recv("+OK")
+        && _parser.send("AT+SAVE")           // Save all the setting
+        && _parser.recv("+OK")
+        && _parser.send("AT+FACTORY")        // Reboot
+        && _parser.recv("+OK");
+    
+    if (!res)
+        printf("EMW3162 config failed!\n");
+    else  
+        printf("EMW3162 config success!\n");
+    return 0;
 }