Ragazzi ho un nuovo problema, scusate ancora se vi disturbo.
Mi sono registrato su domotichome ho realizzato un master ed un device copio il codice sull’ide di arduino
ma non me lo fà caricare mi dice errore.
Questo è il messaggio di errore:
sketch_feb03a:8: error: no matching function for call to ‘Server::Server(int)’
As of Arduino 1.0, the Server class in the Ethernet library has been renamed to EthernetServer.
C:\Program Files\Arduino\hardware\arduino\cores\arduino/Server.h:4: note: candidates are: Server::Server()
C:\Program Files\Arduino\hardware\arduino\cores\arduino/Server.h:4: note: Server::Server(const Server&)
sketch_feb03a:8: error: cannot declare variable ‘server’ to be of abstract type ‘Server’
C:\Program Files\Arduino\hardware\arduino\cores\arduino/Server.h:4: note: because the following virtual functions are pure within ‘Server’:
C:\Program Files\Arduino\hardware\arduino\cores\arduino/Print.h:48: note: virtual size_t Print::write(uint8_t)
C:\Program Files\Arduino\hardware\arduino\cores\arduino/Server.h:6: note: virtual void Server::begin()
sketch_feb03a.cpp: In function ‘void loop()’:
sketch_feb03a:22: error: ‘class Server’ has no member named ‘available’
sketch_feb03a:22: error: cannot declare variable ‘client’ to be of abstract type ‘Client’
C:\Program Files\Arduino\hardware\arduino\cores\arduino/Client.h:7: note: because the following virtual functions are pure within ‘Client’:
C:\Program Files\Arduino\hardware\arduino\cores\arduino/Client.h:12: note: virtual size_t Client::write(uint8_t)
C:\Program Files\Arduino\hardware\arduino\cores\arduino/Client.h:13: note: virtual size_t Client::write(const uint8_t*, size_t)
C:\Program Files\Arduino\hardware\arduino\cores\arduino/Client.h:14: note: virtual int Client::available()
C:\Program Files\Arduino\hardware\arduino\cores\arduino/Client.h:15: note: virtual int Client::read()
C:\Program Files\Arduino\hardware\arduino\cores\arduino/Client.h:17: note: virtual int Client::peek()
C:\Program Files\Arduino\hardware\arduino\cores\arduino/Client.h:18: note: virtual void Client::flush()
C:\Program Files\Arduino\hardware\arduino\cores\arduino/Client.h:10: note: virtual int Client::connect(IPAddress, uint16_t)
C:\Program Files\Arduino\hardware\arduino\cores\arduino/Client.h:11: note: virtual int Client::connect(const char*, uint16_t)
C:\Program Files\Arduino\hardware\arduino\cores\arduino/Client.h:16: note: virtual int Client::read(uint8_t*, size_t)
C:\Program Files\Arduino\hardware\arduino\cores\arduino/Client.h:19: note: virtual void Client::stop()
C:\Program Files\Arduino\hardware\arduino\cores\arduino/Client.h:20: note: virtual uint8_t Client::connected()
C:\Program Files\Arduino\hardware\arduino\cores\arduino/Client.h:21: note: virtual Client::operator bool()
questo è il codice che carico
#include <SPI.h>
#include <Ethernet.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xBE };
byte ip[] = { 192 ,168 ,0 ,102 };
byte gateway[] = { 192 ,168 ,0 ,1 };
byte subnet[] = { 255 ,255 ,255 ,0 };
Server server(80);
String readString = String(30);
void setup(){
Ethernet.begin(mac, ip, gateway, subnet);
delay(1000);
pinMode(5, OUTPUT);
digitalWrite(5, LOW);
Serial.begin(9600);
}
void loop(){
Client client = server.available();
if (client) {
while (client.connected()) {
if (client.available()) {
char c = client.read();
if (readString.length() < 30)
{
readString = readString + c;
}
if (c == '\n') {
Serial.print(readString);
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println();
if(readString.startsWith("GET /?out=5&status=1"))
{Serial.print("\n 5 HIGH \n");
digitalWrite(5, HIGH);
client.print("{\"status\" : \"1\" , \"out\" : \"");
client.print(5);
client.print("\"}");
}
if(readString.startsWith("GET /?out=5&status=0"))
{Serial.print("\n 5 LOW \n");
digitalWrite(5, LOW);
client.print("{\"status\" : \"0\" , \"out\" : \"");
client.print(5);
client.print("\"}");
}
if(readString.startsWith("GET /?out=all"))
{
Serial.print("\n OUT ALL\n");
client.print("{\"ip\" : \"192.168.0.102\", ");
client.print("\"devices\" : ");
client.print("[{ \"type\" : \"light\", \"name\" : \"Led\", \"out\" : \"");
client.print("5");
client.print("\"}");
client.print("]}");
}
readString="";
client.stop();
} } } } }
Dov’e l’errore?