#include <string.h>
#include <SoftwareSerial.h>
#define SSID "와이파이아이디" //
#define PASS "와이파이 비밀번호" //
#define DST_IP "127.0.0.1" //
#define MAGNET 3
SoftwareSerial dbgSerial(6, 7); // RX, TX
void setup()
{
// Setup Serial connection
Serial.begin(9600);
pinMode(MAGNET,INPUT);
//ESP8266
/////////////////////////////////////////////////////////////////////////
Serial.setTimeout(5000);
dbgSerial.begin(9600);
Serial.println("ESP8266 connect");
boolean connected=false;
for(int i=0;i<10;i++)
{
if(connectWiFi())
{
connected = true;
break;
}
}
dbgSerial.println("AT+CIPMUX=0");
///////////////////////////////////////////////////////////////////////////
delay(5000);
//////////////////////////////////////////////////////////////////////////////////////////////
}
void loop()
{
String onoff="off";
Serial.print("Requesting magentics...");
if (digitalRead(MAGNET) == LOW) {
onoff = "on";
Serial.println("on");
}
else
{
onoff = "off";
Serial.println("off");
}
Serial.print("magnetic:");
Serial.println(onoff);
String cmd = "AT+CIPSTART=\"TCP\",\"";
cmd += DST_IP;
cmd += "\",80";
Serial.println(cmd);
dbgSerial.println(cmd);
if(dbgSerial.find("Error"))
{
Serial.println( "TCP connect error" );
return;
}
//////php코드 호출
cmd = "GET /Onoff.php?num="+onoff+"\r\n";
dbgSerial.print("AT+CIPSEND=");
dbgSerial.println(cmd.length());
Serial.println(cmd);
////php호출에대한 응답
if(dbgSerial.find(">"))
{
Serial.print(">");
}else
{
dbgSerial.println("AT+CIPCLOSE"); //TCP 연결종료 커맨드
Serial.println("connect timeout");
delay(1000);
return;
}
dbgSerial.print(cmd);
delay(2000);
//Serial.find("+IPD");
while (Serial.available())
{
char c = Serial.read();
dbgSerial.write(c);
if(c=='\r') dbgSerial.print('\n');
}
Serial.println("====");
// Wait one second before repeating :)
delay (2000);
}
boolean connectWiFi()
{
//dbgSerial.println("AT+CWMODE=1");
String cmd="AT+CWJAP=\"";
cmd+=SSID;
cmd+="\",\"";
cmd+=PASS;
cmd+="\"";
dbgSerial.println(cmd);
Serial.println(cmd);
delay(3000);
if(dbgSerial.find("OK"))
{
Serial.println("OK, Connected to WiFi.");
return true;
}
else
{
Serial.println("Can not connect to the WiFi.");
return false;
}
}
코드는 이렇고 php에서 onoff 값을 $onoff=$GET_["onoff"] 이런식으로 값을받아서 보여주려고하는데요
해당 php에서 값을 받지를 못합니다. 디비 넣는 것 까지는 필요없고 php에만 띄워주고싶은데 안되네요.
cafe 24에서 호스팅 받고있는데 서버ip 가 잘못된건지 ip확인은 어디서 하는지 아시는분 있으시면 답글부탁드릴게요 ㅠ
|