Benjamin Ramić / Mbed 2 deprecated TwitterProjekat

Dependencies:   ESP8266 mbed

Fork of TwitterProjekat by Ahmed Popović

Committer:
2016US_BenjaminRamic
Date:
Fri May 20 16:07:30 2016 +0000
Revision:
1:51391e2303d7
Parent:
0:510ec65bf38b
Child:
2:907b2a247aaa
Ahmed Popovi?; Benjamin Rami? ; Tviter Projekat

Who changed what in which revision?

UserRevisionLine numberNew contents of line
2016US_AhmedPopovic 0:510ec65bf38b 1 #include "ESP8266.h"
2016US_AhmedPopovic 0:510ec65bf38b 2 #include <string>
2016US_AhmedPopovic 0:510ec65bf38b 3
2016US_AhmedPopovic 0:510ec65bf38b 4 using namespace std;
2016US_AhmedPopovic 0:510ec65bf38b 5
2016US_AhmedPopovic 0:510ec65bf38b 6 class WiFi
2016US_AhmedPopovic 0:510ec65bf38b 7 {
2016US_AhmedPopovic 0:510ec65bf38b 8 private:
2016US_AhmedPopovic 0:510ec65bf38b 9 char rcv[2048];
2016US_AhmedPopovic 0:510ec65bf38b 10 char snd[255];
2016US_AhmedPopovic 0:510ec65bf38b 11 ESP8266 * esp;
2016US_AhmedPopovic 0:510ec65bf38b 12 Serial * pc;
2016US_AhmedPopovic 0:510ec65bf38b 13
2016US_AhmedPopovic 0:510ec65bf38b 14 public:
2016US_AhmedPopovic 0:510ec65bf38b 15 WiFi(char * ssid, char * pw, Serial * pc)
2016US_AhmedPopovic 0:510ec65bf38b 16 {
2016US_AhmedPopovic 0:510ec65bf38b 17 this->pc = pc;
2016US_AhmedPopovic 0:510ec65bf38b 18 this->pc->baud(115200);
2016US_AhmedPopovic 0:510ec65bf38b 19 esp = new ESP8266(PTE0, PTE1, 115200);
2016US_AhmedPopovic 0:510ec65bf38b 20
2016US_AhmedPopovic 0:510ec65bf38b 21 SetupModule();
2016US_AhmedPopovic 0:510ec65bf38b 22 ConnectToWifi(ssid, pw);
2016US_AhmedPopovic 0:510ec65bf38b 23 }
2016US_AhmedPopovic 0:510ec65bf38b 24
2016US_BenjaminRamic 1:51391e2303d7 25 string GetPage(string kveri)
2016US_AhmedPopovic 0:510ec65bf38b 26 {
2016US_AhmedPopovic 0:510ec65bf38b 27 strcpy(snd, "AT+CIPSTART=0,\"TCP\",\"173.236.171.131\",80");
2016US_AhmedPopovic 0:510ec65bf38b 28 esp->SendCMD(snd);
2016US_AhmedPopovic 0:510ec65bf38b 29 esp->RcvReply(rcv, 400);
2016US_AhmedPopovic 0:510ec65bf38b 30 pc->printf("%s", rcv);
2016US_AhmedPopovic 0:510ec65bf38b 31
2016US_AhmedPopovic 0:510ec65bf38b 32 wait(2);
2016US_AhmedPopovic 0:510ec65bf38b 33 strcpy(snd, "AT+CIPSEND=0,39");
2016US_AhmedPopovic 0:510ec65bf38b 34 esp->SendCMD(snd);
2016US_AhmedPopovic 0:510ec65bf38b 35 esp->RcvReply(rcv, 2048);
2016US_AhmedPopovic 0:510ec65bf38b 36 pc->printf("%s", rcv);
2016US_AhmedPopovic 0:510ec65bf38b 37 wait(2);
2016US_AhmedPopovic 0:510ec65bf38b 38
2016US_BenjaminRamic 1:51391e2303d7 39
2016US_BenjaminRamic 1:51391e2303d7 40 strcpy(snd, "GET ");
2016US_BenjaminRamic 1:51391e2303d7 41 strcpy(snd + 4, kveri.c_str());
2016US_BenjaminRamic 1:51391e2303d7 42 strcpy(snd + 4 + kveri.length(), " HTTP/1.1\r\nHost: liliumdev.com\r\n\r\n");
2016US_AhmedPopovic 0:510ec65bf38b 43 esp->SendCMD(snd);
2016US_AhmedPopovic 0:510ec65bf38b 44 while(true)
2016US_AhmedPopovic 0:510ec65bf38b 45 {
2016US_AhmedPopovic 0:510ec65bf38b 46 esp->RcvReply(rcv, 2048);
2016US_AhmedPopovic 0:510ec65bf38b 47 pc->printf("%s", rcv);
2016US_AhmedPopovic 0:510ec65bf38b 48 }
2016US_AhmedPopovic 0:510ec65bf38b 49 }
2016US_AhmedPopovic 0:510ec65bf38b 50
2016US_AhmedPopovic 0:510ec65bf38b 51 bool SetupModule()
2016US_AhmedPopovic 0:510ec65bf38b 52 {
2016US_AhmedPopovic 0:510ec65bf38b 53 wait(3);
2016US_AhmedPopovic 0:510ec65bf38b 54 pc->printf("Sending AT\r\n");
2016US_AhmedPopovic 0:510ec65bf38b 55 strcpy(snd, "AT");
2016US_AhmedPopovic 0:510ec65bf38b 56 esp->SendCMD(snd);
2016US_AhmedPopovic 0:510ec65bf38b 57 esp->RcvReply(rcv, 400);
2016US_AhmedPopovic 0:510ec65bf38b 58 pc->printf("%s", rcv);
2016US_AhmedPopovic 0:510ec65bf38b 59 wait(2);
2016US_AhmedPopovic 0:510ec65bf38b 60 pc->printf("Set mode to STA\r\n");
2016US_AhmedPopovic 0:510ec65bf38b 61 esp->SetMode(1);
2016US_AhmedPopovic 0:510ec65bf38b 62 esp->RcvReply(rcv, 1000);
2016US_AhmedPopovic 0:510ec65bf38b 63 pc->printf("%s", rcv);
2016US_AhmedPopovic 0:510ec65bf38b 64
2016US_AhmedPopovic 0:510ec65bf38b 65 strcpy(snd, "AT+CIPMUX=1");
2016US_AhmedPopovic 0:510ec65bf38b 66 esp->SendCMD(snd);
2016US_AhmedPopovic 0:510ec65bf38b 67 esp->RcvReply(rcv, 400);
2016US_AhmedPopovic 0:510ec65bf38b 68
2016US_AhmedPopovic 0:510ec65bf38b 69 return true;
2016US_AhmedPopovic 0:510ec65bf38b 70 }
2016US_AhmedPopovic 0:510ec65bf38b 71
2016US_AhmedPopovic 0:510ec65bf38b 72 bool ConnectToWifi(char * ssid, char * pw)
2016US_AhmedPopovic 0:510ec65bf38b 73 {
2016US_AhmedPopovic 0:510ec65bf38b 74 pc->printf("Receiving Wifi List\r\n");
2016US_AhmedPopovic 0:510ec65bf38b 75 esp->GetList(rcv);
2016US_AhmedPopovic 0:510ec65bf38b 76 pc->printf("%s", rcv);
2016US_AhmedPopovic 0:510ec65bf38b 77
2016US_AhmedPopovic 0:510ec65bf38b 78 pc->printf("Connecting to AP\r\n");
2016US_AhmedPopovic 0:510ec65bf38b 79 esp->Join(ssid, pw);
2016US_AhmedPopovic 0:510ec65bf38b 80 esp->RcvReply(rcv, 1000);
2016US_AhmedPopovic 0:510ec65bf38b 81 pc->printf("%s", rcv);
2016US_AhmedPopovic 0:510ec65bf38b 82 wait(8);
2016US_AhmedPopovic 0:510ec65bf38b 83 pc->printf("Getting IP\r\n");
2016US_AhmedPopovic 0:510ec65bf38b 84 esp->GetIP(rcv);
2016US_AhmedPopovic 0:510ec65bf38b 85
2016US_AhmedPopovic 0:510ec65bf38b 86 pc->printf("%s", rcv);
2016US_AhmedPopovic 0:510ec65bf38b 87
2016US_AhmedPopovic 0:510ec65bf38b 88 return true;
2016US_AhmedPopovic 0:510ec65bf38b 89 }
2016US_BenjaminRamic 1:51391e2303d7 90
2016US_BenjaminRamic 1:51391e2303d7 91 void posaljiPoruku(char *poruka, int duzina, char *linkServera)
2016US_BenjaminRamic 1:51391e2303d7 92 {
2016US_BenjaminRamic 1:51391e2303d7 93 //to implement
2016US_BenjaminRamic 1:51391e2303d7 94 }
2016US_AhmedPopovic 0:510ec65bf38b 95 };