posilani dat

Dependencies:   FatFileSystemCpp mbed PowerControl USBHostLite

Committer:
PavelKumpan
Date:
Tue May 23 18:42:14 2017 +0000
Revision:
26:5674b8978551
Parent:
7:805c16a071d0
Recreated communication protocol.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jkaderka 7:805c16a071d0 1 #include "WiflyInterface.h"
jkaderka 7:805c16a071d0 2
jkaderka 7:805c16a071d0 3 WiflyInterface::WiflyInterface( PinName tx, PinName rx, PinName reset, PinName tcp_status,
jkaderka 7:805c16a071d0 4 const char * ssid, const char * phrase, Security sec) :
jkaderka 7:805c16a071d0 5 Wifly(tx, rx, reset, tcp_status, ssid, phrase, sec)
jkaderka 7:805c16a071d0 6 {
jkaderka 7:805c16a071d0 7 ip_set = false;
jkaderka 7:805c16a071d0 8 }
jkaderka 7:805c16a071d0 9
jkaderka 7:805c16a071d0 10 int WiflyInterface::init()
jkaderka 7:805c16a071d0 11 {
jkaderka 7:805c16a071d0 12 state.dhcp = true;
jkaderka 7:805c16a071d0 13 reset();
jkaderka 7:805c16a071d0 14 return 0;
jkaderka 7:805c16a071d0 15 }
jkaderka 7:805c16a071d0 16
jkaderka 7:805c16a071d0 17 int WiflyInterface::init(const char* ip, const char* mask, const char* gateway)
jkaderka 7:805c16a071d0 18 {
jkaderka 7:805c16a071d0 19 state.dhcp = false;
jkaderka 7:805c16a071d0 20 this->ip = ip;
jkaderka 7:805c16a071d0 21 strcpy(ip_string, ip);
jkaderka 7:805c16a071d0 22 ip_set = true;
jkaderka 7:805c16a071d0 23 this->netmask = mask;
jkaderka 7:805c16a071d0 24 this->gateway = gateway;
jkaderka 7:805c16a071d0 25 reset();
jkaderka 7:805c16a071d0 26
jkaderka 7:805c16a071d0 27 return 0;
jkaderka 7:805c16a071d0 28 }
jkaderka 7:805c16a071d0 29
jkaderka 7:805c16a071d0 30 int WiflyInterface::connect()
jkaderka 7:805c16a071d0 31 {
jkaderka 7:805c16a071d0 32 return join();
jkaderka 7:805c16a071d0 33 }
jkaderka 7:805c16a071d0 34
jkaderka 7:805c16a071d0 35 int WiflyInterface::disconnect()
jkaderka 7:805c16a071d0 36 {
jkaderka 7:805c16a071d0 37 return Wifly::disconnect();
jkaderka 7:805c16a071d0 38 }
jkaderka 7:805c16a071d0 39
jkaderka 7:805c16a071d0 40 char * WiflyInterface::getIPAddress()
jkaderka 7:805c16a071d0 41 {
jkaderka 7:805c16a071d0 42 char * match = 0;
jkaderka 7:805c16a071d0 43 if (!ip_set) {
jkaderka 7:805c16a071d0 44 if (!sendCommand("get ip a\r", NULL, ip_string))
jkaderka 7:805c16a071d0 45 return NULL;
jkaderka 7:805c16a071d0 46 exit();
jkaderka 7:805c16a071d0 47 flush();
jkaderka 7:805c16a071d0 48 match = strstr(ip_string, "<");
jkaderka 7:805c16a071d0 49 if (match != NULL) {
jkaderka 7:805c16a071d0 50 *match = '\0';
jkaderka 7:805c16a071d0 51 }
jkaderka 7:805c16a071d0 52 if (strlen(ip_string) < 6) {
jkaderka 7:805c16a071d0 53 match = strstr(ip_string, ">");
jkaderka 7:805c16a071d0 54 if (match != NULL) {
jkaderka 7:805c16a071d0 55 int len = strlen(match + 1);
jkaderka 7:805c16a071d0 56 memcpy(ip_string, match + 1, len);
jkaderka 7:805c16a071d0 57 }
jkaderka 7:805c16a071d0 58 }
jkaderka 7:805c16a071d0 59 ip_set = true;
jkaderka 7:805c16a071d0 60 }
jkaderka 7:805c16a071d0 61 return ip_string;
jkaderka 7:805c16a071d0 62 }