a

Dependencies:   stm32l475e_iot01_gps BSP_B-L475E-IOT01

Committer:
ctlee
Date:
Thu Jan 14 23:36:14 2021 +0000
Revision:
100:84aa1516022b
Parent:
91:dab9882e2b49
Child:
101:8d2cd7e4f3c1
good

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 0:857719181846 1 /* WiFi Example
ctlee 100:84aa1516022b 2 * Copyright (c) 2018 ARM Limited
mbed_official 0:857719181846 3 *
mbed_official 0:857719181846 4 * Licensed under the Apache License, Version 2.0 (the "License");
mbed_official 0:857719181846 5 * you may not use this file except in compliance with the License.
mbed_official 0:857719181846 6 * You may obtain a copy of the License at
mbed_official 0:857719181846 7 *
mbed_official 0:857719181846 8 * http://www.apache.org/licenses/LICENSE-2.0
mbed_official 0:857719181846 9 *
mbed_official 0:857719181846 10 * Unless required by applicable law or agreed to in writing, software
mbed_official 0:857719181846 11 * distributed under the License is distributed on an "AS IS" BASIS,
mbed_official 0:857719181846 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
mbed_official 0:857719181846 13 * See the License for the specific language governing permissions and
mbed_official 0:857719181846 14 * limitations under the License.
mbed_official 0:857719181846 15 */
mbed_official 0:857719181846 16
ctlee 100:84aa1516022b 17
ctlee 100:84aa1516022b 18
ctlee 100:84aa1516022b 19 #include "ThisThread.h"
mbed_official 0:857719181846 20 #include "mbed.h"
ctlee 100:84aa1516022b 21 #include "TCPSocket.h"
ctlee 100:84aa1516022b 22 //#include "TCPServer.h"
ctlee 100:84aa1516022b 23 #include "stm32l475e_iot01_accelero.h"
ctlee 100:84aa1516022b 24
ctlee 100:84aa1516022b 25 #define WIFI_IDW0XX1 2
mbed_official 0:857719181846 26
ctlee 100:84aa1516022b 27 #if (defined(TARGET_DISCO_L475VG_IOT01A) || defined(TARGET_DISCO_F413ZH))
ctlee 100:84aa1516022b 28 #include "ISM43362Interface.h"
ctlee 100:84aa1516022b 29 ISM43362Interface wifi( false);
ctlee 100:84aa1516022b 30
ctlee 100:84aa1516022b 31 #else // External WiFi modules
ctlee 100:84aa1516022b 32
ctlee 100:84aa1516022b 33 #if MBED_CONF_APP_WIFI_SHIELD == WIFI_IDW0XX1
ctlee 100:84aa1516022b 34 #include "SpwfSAInterface.h"
ctlee 100:84aa1516022b 35 SpwfSAInterface wifi(MBED_CONF_APP_WIFI_TX, MBED_CONF_APP_WIFI_RX);
ctlee 100:84aa1516022b 36 #endif // MBED_CONF_APP_WIFI_SHIELD == WIFI_IDW0XX1
ctlee 100:84aa1516022b 37
ctlee 100:84aa1516022b 38 #endif
ctlee 100:84aa1516022b 39
ctlee 100:84aa1516022b 40 #define SCALE_MULTIPLIER 0.004
ctlee 100:84aa1516022b 41
mbed_official 21:b2f2f6a840b4 42
mbed_official 0:857719181846 43 const char *sec2str(nsapi_security_t sec)
mbed_official 0:857719181846 44 {
mbed_official 0:857719181846 45 switch (sec) {
mbed_official 0:857719181846 46 case NSAPI_SECURITY_NONE:
mbed_official 0:857719181846 47 return "None";
mbed_official 0:857719181846 48 case NSAPI_SECURITY_WEP:
mbed_official 0:857719181846 49 return "WEP";
mbed_official 0:857719181846 50 case NSAPI_SECURITY_WPA:
mbed_official 0:857719181846 51 return "WPA";
mbed_official 0:857719181846 52 case NSAPI_SECURITY_WPA2:
mbed_official 0:857719181846 53 return "WPA2";
mbed_official 0:857719181846 54 case NSAPI_SECURITY_WPA_WPA2:
mbed_official 0:857719181846 55 return "WPA/WPA2";
mbed_official 0:857719181846 56 case NSAPI_SECURITY_UNKNOWN:
mbed_official 0:857719181846 57 default:
mbed_official 0:857719181846 58 return "Unknown";
mbed_official 0:857719181846 59 }
mbed_official 0:857719181846 60 }
mbed_official 0:857719181846 61
mbed_official 37:3a31525e2971 62 int scan_demo(WiFiInterface *wifi)
mbed_official 0:857719181846 63 {
mbed_official 0:857719181846 64 WiFiAccessPoint *ap;
mbed_official 0:857719181846 65
mbed_official 35:052c1ba06ce7 66 printf("Scan:\n");
mbed_official 0:857719181846 67
mbed_official 0:857719181846 68 int count = wifi->scan(NULL,0);
ctlee 100:84aa1516022b 69 printf("%d networks available.\n", count);
mbed_official 66:2cf02c7d430c 70
mbed_official 0:857719181846 71 /* Limit number of network arbitrary to 15 */
mbed_official 0:857719181846 72 count = count < 15 ? count : 15;
mbed_official 0:857719181846 73
mbed_official 0:857719181846 74 ap = new WiFiAccessPoint[count];
mbed_official 0:857719181846 75 count = wifi->scan(ap, count);
ctlee 100:84aa1516022b 76 for (int i = 0; i < count; i++)
ctlee 100:84aa1516022b 77 {
mbed_official 35:052c1ba06ce7 78 printf("Network: %s secured: %s BSSID: %hhX:%hhX:%hhX:%hhx:%hhx:%hhx RSSI: %hhd Ch: %hhd\n", ap[i].get_ssid(),
mbed_official 0:857719181846 79 sec2str(ap[i].get_security()), ap[i].get_bssid()[0], ap[i].get_bssid()[1], ap[i].get_bssid()[2],
mbed_official 0:857719181846 80 ap[i].get_bssid()[3], ap[i].get_bssid()[4], ap[i].get_bssid()[5], ap[i].get_rssi(), ap[i].get_channel());
mbed_official 0:857719181846 81 }
mbed_official 0:857719181846 82
mbed_official 0:857719181846 83 delete[] ap;
mbed_official 37:3a31525e2971 84 return count;
mbed_official 0:857719181846 85 }
mbed_official 0:857719181846 86
ctlee 100:84aa1516022b 87 void acc_server(NetworkInterface *net)
ctlee 100:84aa1516022b 88 {
ctlee 100:84aa1516022b 89 /*
ctlee 100:84aa1516022b 90 TCPServer socket;
ctlee 100:84aa1516022b 91 TCPSocket* client;*/
ctlee 100:84aa1516022b 92 TCPSocket socket;
ctlee 100:84aa1516022b 93 SocketAddress addr("192.168.43.199",65431);
ctlee 100:84aa1516022b 94 nsapi_error_t response;
ctlee 100:84aa1516022b 95
ctlee 100:84aa1516022b 96 int16_t pDataXYZ[3] = {0};
ctlee 100:84aa1516022b 97 char recv_buffer[9];
ctlee 100:84aa1516022b 98 char acc_json[64];
ctlee 100:84aa1516022b 99 int sample_num = 0;
ctlee 100:84aa1516022b 100
ctlee 100:84aa1516022b 101 //analyze
ctlee 100:84aa1516022b 102 float bufX[80], bufY[80], bufZ[80];
ctlee 100:84aa1516022b 103 int saX[80]={0}, saY[80]={0}, saZ[80]={0};
ctlee 100:84aa1516022b 104 int fuzX[3]={80,0,0}, fuzY[3]={80,0,0}, fuzZ[3]={80,0,0};
ctlee 100:84aa1516022b 105 int stX=0, stY=0, stZ=0;
ctlee 100:84aa1516022b 106 int ptr=0;
ctlee 100:84aa1516022b 107 int i=0;
ctlee 100:84aa1516022b 108 /*
ctlee 100:84aa1516022b 109 for(i=0;i<80;i++){
ctlee 100:84aa1516022b 110 saX[i]=0;
ctlee 100:84aa1516022b 111 saY[i]=0;
ctlee 100:84aa1516022b 112 saZ[i]=0;
ctlee 100:84aa1516022b 113 }
ctlee 100:84aa1516022b 114 */
ctlee 100:84aa1516022b 115
ctlee 100:84aa1516022b 116 // Open a socket on the network interface, and create a TCP connection to addr
ctlee 100:84aa1516022b 117 response = socket.open(net);
ctlee 100:84aa1516022b 118 if (0 != response){
ctlee 100:84aa1516022b 119 printf("Error opening: %d\n", response);
ctlee 100:84aa1516022b 120 }
ctlee 100:84aa1516022b 121 response = socket.connect(addr);
ctlee 100:84aa1516022b 122
ctlee 100:84aa1516022b 123 if (0 != response){
ctlee 100:84aa1516022b 124 printf("Error connecting: %d\n", response);
ctlee 100:84aa1516022b 125 }
ctlee 100:84aa1516022b 126
ctlee 100:84aa1516022b 127
ctlee 100:84aa1516022b 128 socket.set_blocking(1);
ctlee 100:84aa1516022b 129 while (1){
ctlee 100:84aa1516022b 130 ptr=sample_num%80;
ctlee 100:84aa1516022b 131 ++sample_num;
ctlee 100:84aa1516022b 132 BSP_ACCELERO_AccGetXYZ(pDataXYZ);
ctlee 100:84aa1516022b 133 float x = pDataXYZ[0]*SCALE_MULTIPLIER, y = pDataXYZ[1]*SCALE_MULTIPLIER, z = pDataXYZ[2]*SCALE_MULTIPLIER;
ctlee 100:84aa1516022b 134 int len;
ctlee 100:84aa1516022b 135
ctlee 100:84aa1516022b 136 bufX[ptr]=x;
ctlee 100:84aa1516022b 137 bufY[ptr]=y;
ctlee 100:84aa1516022b 138 bufZ[ptr]=z;
ctlee 100:84aa1516022b 139
ctlee 100:84aa1516022b 140 fuzX[saX[ptr]]-=1;
ctlee 100:84aa1516022b 141 if(x>1.5){
ctlee 100:84aa1516022b 142 saX[ptr]=2;
ctlee 100:84aa1516022b 143 fuzX[2]+=1;
ctlee 100:84aa1516022b 144 }else if(x>-1.5){
ctlee 100:84aa1516022b 145 saX[ptr]=1;
ctlee 100:84aa1516022b 146 fuzX[1]+=1;
ctlee 100:84aa1516022b 147 }else{
ctlee 100:84aa1516022b 148 saX[ptr]=0;
ctlee 100:84aa1516022b 149 fuzX[0]+=1;
ctlee 100:84aa1516022b 150 }
ctlee 100:84aa1516022b 151 fuzY[saX[ptr]]-=1;
ctlee 100:84aa1516022b 152 if(y>1.5){
ctlee 100:84aa1516022b 153 saY[ptr]=2;
ctlee 100:84aa1516022b 154 fuzY[2]+=1;
ctlee 100:84aa1516022b 155 }else if(y>-1.5){
ctlee 100:84aa1516022b 156 saY[ptr]=1;
ctlee 100:84aa1516022b 157 fuzY[1]+=1;
ctlee 100:84aa1516022b 158 }else{
ctlee 100:84aa1516022b 159 saY[ptr]=0;
ctlee 100:84aa1516022b 160 fuzY[0]+=1;
ctlee 100:84aa1516022b 161 }
ctlee 100:84aa1516022b 162 fuzZ[saX[ptr]]-=1;
ctlee 100:84aa1516022b 163 if(z>5.5){
ctlee 100:84aa1516022b 164 saZ[ptr]=2;
ctlee 100:84aa1516022b 165 fuzZ[2]+=1;
ctlee 100:84aa1516022b 166 }else if(z>2.5){
ctlee 100:84aa1516022b 167 saZ[ptr]=1;
ctlee 100:84aa1516022b 168 fuzZ[1]+=1;
ctlee 100:84aa1516022b 169 }else{
ctlee 100:84aa1516022b 170 saZ[ptr]=0;
ctlee 100:84aa1516022b 171 fuzZ[0]+=1;
ctlee 100:84aa1516022b 172 }
ctlee 100:84aa1516022b 173
ctlee 100:84aa1516022b 174 //fuzzy
ctlee 100:84aa1516022b 175 //X
ctlee 100:84aa1516022b 176 if(fuzX[2]>64 || fuzX[0]>64){
ctlee 100:84aa1516022b 177 if(stX!=3){
ctlee 100:84aa1516022b 178 len = sprintf(acc_json,"x3\n");
ctlee 100:84aa1516022b 179 socket.send(acc_json,len);
ctlee 100:84aa1516022b 180 for(i=1;i<81;i++){
ctlee 100:84aa1516022b 181 len=sprintf(acc_json,"%f,%f,%f\n",(float)((int)(bufX[(ptr+i)%80]*10000))/10000,
ctlee 100:84aa1516022b 182 (float)((int)(bufY[(ptr+i)%80]*10000))/10000, (float)((int)(bufZ[(ptr+i)%80]*10000))/10000);
ctlee 100:84aa1516022b 183 socket.send(acc_json,len);
ctlee 100:84aa1516022b 184 }
ctlee 100:84aa1516022b 185 stX=3;
ctlee 100:84aa1516022b 186 }
ctlee 100:84aa1516022b 187 }else if((fuzX[2]>32 || fuzX[0]>32) && fuzX[1]>32){
ctlee 100:84aa1516022b 188 if(stX!=2){
ctlee 100:84aa1516022b 189 len = sprintf(acc_json,"x2\n");
ctlee 100:84aa1516022b 190 response = socket.send(acc_json,len);
ctlee 100:84aa1516022b 191 for(i=1;i<81;i++){
ctlee 100:84aa1516022b 192 len=sprintf(acc_json,"%f,%f,%f\n",(float)((int)(bufX[(ptr+i)%80]*10000))/10000,
ctlee 100:84aa1516022b 193 (float)((int)(bufY[(ptr+i)%80]*10000))/10000, (float)((int)(bufZ[(ptr+i)%80]*10000))/10000);
ctlee 100:84aa1516022b 194 socket.send(acc_json,len);
ctlee 100:84aa1516022b 195 }
ctlee 100:84aa1516022b 196 stX=2;
ctlee 100:84aa1516022b 197 }
ctlee 100:84aa1516022b 198 }else if(fuzX[2]>32 && fuzX[0]>32){
ctlee 100:84aa1516022b 199 if(stX!=1){
ctlee 100:84aa1516022b 200 len = sprintf(acc_json,"x1\n");
ctlee 100:84aa1516022b 201 response = socket.send(acc_json,len);
ctlee 100:84aa1516022b 202 for(i=1;i<81;i++){
ctlee 100:84aa1516022b 203 len=sprintf(acc_json,"%f,%f,%f\n",(float)((int)(bufX[(ptr+i)%80]*10000))/10000,
ctlee 100:84aa1516022b 204 (float)((int)(bufY[(ptr+i)%80]*10000))/10000, (float)((int)(bufZ[(ptr+i)%80]*10000))/10000);
ctlee 100:84aa1516022b 205 socket.send(acc_json,len);
ctlee 100:84aa1516022b 206 }
ctlee 100:84aa1516022b 207 stX=1;
ctlee 100:84aa1516022b 208 }
ctlee 100:84aa1516022b 209 }else if(fuzX[1]>64){
ctlee 100:84aa1516022b 210 stX=0;
ctlee 100:84aa1516022b 211 }
ctlee 100:84aa1516022b 212 //Y
ctlee 100:84aa1516022b 213 if(fuzY[2]>64 || fuzY[0]>64){
ctlee 100:84aa1516022b 214 if(stY!=3){
ctlee 100:84aa1516022b 215 len = sprintf(acc_json,"y3\n");
ctlee 100:84aa1516022b 216 response = socket.send(acc_json,len);
ctlee 100:84aa1516022b 217 for(i=1;i<81;i++){
ctlee 100:84aa1516022b 218 len=sprintf(acc_json,"%f,%f,%f\n",(float)((int)(bufX[(ptr+i)%80]*10000))/10000,
ctlee 100:84aa1516022b 219 (float)((int)(bufY[(ptr+i)%80]*10000))/10000, (float)((int)(bufZ[(ptr+i)%80]*10000))/10000);
ctlee 100:84aa1516022b 220 socket.send(acc_json,len);
ctlee 100:84aa1516022b 221 }
ctlee 100:84aa1516022b 222 stY=3;
ctlee 100:84aa1516022b 223 }
ctlee 100:84aa1516022b 224 }else if((fuzY[2]>32 || fuzY[0]>32) && fuzY[1]>32){
ctlee 100:84aa1516022b 225 if(stY!=2){
ctlee 100:84aa1516022b 226 len = sprintf(acc_json,"y2\n");
ctlee 100:84aa1516022b 227 response = socket.send(acc_json,len);
ctlee 100:84aa1516022b 228 for(i=1;i<81;i++){
ctlee 100:84aa1516022b 229 len=sprintf(acc_json,"%f,%f,%f\n",(float)((int)(bufX[(ptr+i)%80]*10000))/10000,
ctlee 100:84aa1516022b 230 (float)((int)(bufY[(ptr+i)%80]*10000))/10000, (float)((int)(bufZ[(ptr+i)%80]*10000))/10000);
ctlee 100:84aa1516022b 231 socket.send(acc_json,len);
ctlee 100:84aa1516022b 232 }
ctlee 100:84aa1516022b 233 stY=2;
ctlee 100:84aa1516022b 234 }
ctlee 100:84aa1516022b 235 }else if(fuzY[2]>32 && fuzY[0]>32){
ctlee 100:84aa1516022b 236 if(stY!=1){
ctlee 100:84aa1516022b 237 len = sprintf(acc_json,"y1\n");
ctlee 100:84aa1516022b 238 response = socket.send(acc_json,len);
ctlee 100:84aa1516022b 239 for(i=1;i<81;i++){
ctlee 100:84aa1516022b 240 len=sprintf(acc_json,"%f,%f,%f\n",(float)((int)(bufX[(ptr+i)%80]*10000))/10000,
ctlee 100:84aa1516022b 241 (float)((int)(bufY[(ptr+i)%80]*10000))/10000, (float)((int)(bufZ[(ptr+i)%80]*10000))/10000);
ctlee 100:84aa1516022b 242 socket.send(acc_json,len);
ctlee 100:84aa1516022b 243 }
ctlee 100:84aa1516022b 244 stY=1;
ctlee 100:84aa1516022b 245 }
ctlee 100:84aa1516022b 246 }else if(fuzY[1]>64){
ctlee 100:84aa1516022b 247 stY=0;
ctlee 100:84aa1516022b 248 }
ctlee 100:84aa1516022b 249 //Z
ctlee 100:84aa1516022b 250 if(fuzZ[2]>64 || fuzZ[0]>64){
ctlee 100:84aa1516022b 251 if(stZ!=3){
ctlee 100:84aa1516022b 252 len = sprintf(acc_json,"z3\n");
ctlee 100:84aa1516022b 253 response = socket.send(acc_json,len);
ctlee 100:84aa1516022b 254 for(i=1;i<81;i++){
ctlee 100:84aa1516022b 255 len=sprintf(acc_json,"%f,%f,%f\n",(float)((int)(bufX[(ptr+i)%80]*10000))/10000,
ctlee 100:84aa1516022b 256 (float)((int)(bufY[(ptr+i)%80]*10000))/10000, (float)((int)(bufZ[(ptr+i)%80]*10000))/10000);
ctlee 100:84aa1516022b 257 socket.send(acc_json,len);
ctlee 100:84aa1516022b 258 }
ctlee 100:84aa1516022b 259 stZ=3;
ctlee 100:84aa1516022b 260 }
ctlee 100:84aa1516022b 261 }else if((fuzZ[2]>32 || fuzZ[0]>32) && fuzZ[1]>32){
ctlee 100:84aa1516022b 262 if(stZ!=2){
ctlee 100:84aa1516022b 263 len = sprintf(acc_json,"z2\n");
ctlee 100:84aa1516022b 264 response = socket.send(acc_json,len);
ctlee 100:84aa1516022b 265 for(i=1;i<81;i++){
ctlee 100:84aa1516022b 266 len=sprintf(acc_json,"%f,%f,%f\n",(float)((int)(bufX[(ptr+i)%80]*10000))/10000,
ctlee 100:84aa1516022b 267 (float)((int)(bufY[(ptr+i)%80]*10000))/10000, (float)((int)(bufZ[(ptr+i)%80]*10000))/10000);
ctlee 100:84aa1516022b 268 socket.send(acc_json,len);
ctlee 100:84aa1516022b 269 }
ctlee 100:84aa1516022b 270 stZ=2;
ctlee 100:84aa1516022b 271 }
ctlee 100:84aa1516022b 272 }else if(fuzZ[2]>32 && fuzZ[0]>32){
ctlee 100:84aa1516022b 273 if(stZ!=1){
ctlee 100:84aa1516022b 274 len = sprintf(acc_json,"z1\n");
ctlee 100:84aa1516022b 275 response = socket.send(acc_json,len);
ctlee 100:84aa1516022b 276 for(i=1;i<81;i++){
ctlee 100:84aa1516022b 277 len=sprintf(acc_json,"%f,%f,%f\n",(float)((int)(bufX[(ptr+i)%80]*10000))/10000,
ctlee 100:84aa1516022b 278 (float)((int)(bufY[(ptr+i)%80]*10000))/10000, (float)((int)(bufZ[(ptr+i)%80]*10000))/10000);
ctlee 100:84aa1516022b 279 socket.send(acc_json,len);
ctlee 100:84aa1516022b 280 }
ctlee 100:84aa1516022b 281 stZ=1;
ctlee 100:84aa1516022b 282 }
ctlee 100:84aa1516022b 283 }else if(fuzZ[1]>64){
ctlee 100:84aa1516022b 284 stZ=0;
ctlee 100:84aa1516022b 285 }
ctlee 100:84aa1516022b 286
ctlee 100:84aa1516022b 287 //int len = sprintf(acc_json,"%f,%f,%f,%d,%d\n",(float)((int)(x*10000))/10000,
ctlee 100:84aa1516022b 288 // (float)((int)(y*10000))/10000, (float)((int)(z*10000))/10000, sample_num, ptr);
ctlee 100:84aa1516022b 289
ctlee 100:84aa1516022b 290
ctlee 100:84aa1516022b 291 //response = socket.send(acc_json,len);
ctlee 100:84aa1516022b 292 if (0 >= response){
ctlee 100:84aa1516022b 293 printf("Error seding: %d\n", response);
ctlee 100:84aa1516022b 294 }
ctlee 100:84aa1516022b 295 ThisThread::sleep_for(0.1);
ctlee 100:84aa1516022b 296
ctlee 100:84aa1516022b 297
ctlee 100:84aa1516022b 298 }
ctlee 100:84aa1516022b 299
ctlee 100:84aa1516022b 300
ctlee 100:84aa1516022b 301 socket.close();
ctlee 100:84aa1516022b 302 }
ctlee 100:84aa1516022b 303
mbed_official 0:857719181846 304 int main()
mbed_official 0:857719181846 305 {
mbed_official 0:857719181846 306
mbed_official 37:3a31525e2971 307 printf("\nConnecting to %s...\n", MBED_CONF_APP_WIFI_SSID);
ctlee 100:84aa1516022b 308 //wifi.set_network("192.168.130.105","255.255.255.0","192.168.130.254");
ctlee 100:84aa1516022b 309 int ret = wifi.connect(MBED_CONF_APP_WIFI_SSID, MBED_CONF_APP_WIFI_PASSWORD, NSAPI_SECURITY_WPA_WPA2);
mbed_official 0:857719181846 310 if (ret != 0) {
ctlee 100:84aa1516022b 311 printf("\nConnection error\n");
mbed_official 0:857719181846 312 return -1;
mbed_official 0:857719181846 313 }
mbed_official 0:857719181846 314
mbed_official 35:052c1ba06ce7 315 printf("Success\n\n");
ctlee 100:84aa1516022b 316 printf("MAC: %s\n", wifi.get_mac_address());
ctlee 100:84aa1516022b 317 printf("IP: %s\n", wifi.get_ip_address());
ctlee 100:84aa1516022b 318 printf("Netmask: %s\n", wifi.get_netmask());
ctlee 100:84aa1516022b 319 printf("Gateway: %s\n", wifi.get_gateway());
ctlee 100:84aa1516022b 320 printf("RSSI: %d\n\n", wifi.get_rssi());
ctlee 100:84aa1516022b 321
ctlee 100:84aa1516022b 322
mbed_official 0:857719181846 323
ctlee 100:84aa1516022b 324 BSP_ACCELERO_Init();
ctlee 100:84aa1516022b 325
mbed_official 0:857719181846 326
ctlee 100:84aa1516022b 327 acc_server(&wifi);
ctlee 100:84aa1516022b 328
ctlee 100:84aa1516022b 329
ctlee 100:84aa1516022b 330
ctlee 100:84aa1516022b 331 }