Hallo,
Ich habe bei meinem Arduino Mega ein ETHERNET schield angeschlossen und an das einen Router
Wenn ich aber dann mit meinem Handy die IP aufrufen möchte findet es den Arduino (IP) nicht.
Kann mir jemand helfen??
Muss ich bei der IP/Mac Adresse noch etwas ändern??
#include <Ethernet.h>
#include <SPI.h>
boolean reading = false;
//Konfiguration
byte ip[] = { 192, 168, 0, 21 }; //Manual setup only
byte gateway[] = { 192, 168, 0, 1 }; //Manual setup only
byte subnet[] = { 255, 255, 255, 0 }; //Manual setup only
// if need to change the MAC address (Very Rare)
// if need to change the MAC address
byte mac[] = { 0x90, 0xA2, 0xDA, 0x0D, 0xB4, 0x6F };
EthernetServer server = EthernetServer(80); //port 80
void setup(){
//Pins 10,11,12 & 13 werden vom ethernet shield verwendet, 1 zur Programmübertragung
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
Ethernet.begin(mac); //Ethernet.begin(mac, ip, gateway, subnet); //for manual setup
server.begin();
}
void loop(){
// warten auf Anfragen von Clients
checkForClient();
}
void checkForClient(){
EthernetClient client = server.available();
if (client) {
boolean currentLineIsBlank = true;
boolean sentHeader = false;
while (client.connected()) {
if (client.available()) {
if(!sentHeader){
// HTML senden
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println();
client.println("<HTML>");
client.println("<HEAD>");
client.println("<TITLE>Arduino</TITLE>");
client.println("</HEAD>");
client.println("<BODY>");
client.println("Arduino IO control
");
client.println("
");
client.println("</a>");
client.println("Out 02");
client.println("<a href=\"/?a\" target=\"inlineframe\">ON</a>");
client.println("<a href=\"/?b\" target=\"inlineframe\">OFF</a>
");
client.println("Out 03");
client.println("<a href=\"/?c\" target=\"inlineframe\">ON</a>");
client.println("<a href=\"/?d\" target=\"inlineframe\">OFF</a>
");
client.println("Out 04");
client.println("<a href=\"/?e\" target=\"inlineframe\">ON</a>");
client.println("<a href=\"/?f\" target=\"inlineframe\">OFF</a>
");
client.println("Out 05");
client.println("<a href=\"/?g\" target=\"inlineframe\">ON</a>");
client.println("<a href=\"/?h\" target=\"inlineframe\">OFF</a>
");
client.println("Out 06");
client.println("<a href=\"/?i\" target=\"inlineframe\">ON</a>");
client.println("<a href=\"/?j\" target=\"inlineframe\">OFF</a>
");
client.println("Out 07");
client.println("<a href=\"/?k\" target=\"inlineframe\">ON</a>");
client.println("<a href=\"/?l\" target=\"inlineframe\">OFF</a>
");
client.println("Out 08");
client.println("<a href=\"/?m\" target=\"inlineframe\">ON</a>");
client.println("<a href=\"/?n\" target=\"inlineframe\">OFF</a>
");
client.println("Out 09");
client.println("<a href=\"/?o\" target=\"inlineframe\">ON</a>");
client.println("<a href=\"/?p\" target=\"inlineframe\">OFF</a>
");
client.println("
");
client.println("</a>");
client.println("<a href=\"/?acegikmo\" target=\"inlineframe\">all ON</a>");
client.println("<a href=\"/?bdfhjlnp\" target=\"inlineframe\">all OFF</a>
");
client.println("<IFRAME name=inlineframe style=\"display:none\" >");
client.println("</IFRAME>");
client.println("</BODY>");
client.println("</HTML>");
sentHeader = true;
}
//auslesen der Eingabe
char c = client.read();
if(reading && c == ' ') reading = false;
if(c == '?') reading = true; //found the ?, begin reading the info
if(reading){
//schalten der Ausgänge
switch (c) {
case 'a':
//add code here to trigger on 2
digitalWrite(2, HIGH);
break;
case 'b':
//add code here to trigger on 3
digitalWrite(2, LOW);
break;
case 'c':
//add code here to trigger on 4
digitalWrite(3, HIGH);
break;
case 'd':
//add code here to trigger on 5
digitalWrite(3, LOW);
break;
case 'e':
//add code here to trigger on 6
digitalWrite(4, HIGH);
break;
case 'f':
//add code here to trigger on 7
digitalWrite(4, LOW);
break;
case 'g':
//add code here to trigger on 8
digitalWrite(5, HIGH);
break;
case 'h':
//add code here to trigger on 9
digitalWrite(5, LOW);
break;
case 'i':
//add code here to trigger on 2
digitalWrite(6, HIGH);
break;
case 'j':
//add code here to trigger on 3
digitalWrite(6, LOW);
break;
case 'k':
//add code here to trigger on 4
digitalWrite(7, HIGH);
break;
case 'l':
//add code here to trigger on 5
digitalWrite(7, LOW);
break;
case 'm':
//add code here to trigger on 6
digitalWrite(8, HIGH);
break;
case 'n':
//add code here to trigger on 7
digitalWrite(8, LOW);
break;
case 'o':
//add code here to trigger on 8
digitalWrite(9, HIGH);
break;
case 'p':
//add code here to trigger on 9
digitalWrite(9, LOW);
break;
}
}
if (c == '\n' && currentLineIsBlank) break;
if (c == '\n') {
currentLineIsBlank = true;
}else if (c != '\r') {
currentLineIsBlank = false;
}
}
}
delay(1); // pause für den Browser
client.stop(); // Verbindung trennen
}
}
void triggerPin(int pin, EthernetClient client){
client.print("Turning on pin ");
client.println(pin);
client.print("
");
digitalWrite(pin, HIGH);
delay(25);
digitalWrite(pin, LOW);
delay(25);
}