potrebujem pomoc s programovaním arduina, išiel som podľa tohto návodu (nemám veľa skúsenosti v tejto oblasti):
https://arduino.cz/programovani-webovyc ... o-arduino/
Výstup z php stránky je ako v návode "led:1: resp. led:0:" ale arduino nereaguje. Napadlo mi, či to nie je spôsobené free hostingom, ktorý na stránku pridáva reklamu a tým pádom to arduino neprečíta..
Tu je použitý kód:
Kód: Vybrať všetko
#include <SPI.h>
#include <Ethernet.h>
#define BUFF_DELKA 255
byte mac[] = {0x90, 0xA2, 0xDA, 0x00, 0x9C, 0xB7}; //MAC adresa
IPAddress ip(10,0,0,3); //IP adresa
char server[] = "server.sk"; //URL adresa serveru
char buffer[BUFF_DELKA]; //zásobník na příchozí řetězec
EthernetClient client;
void setup() {
pinMode(3, OUTPUT);
Serial.begin(9600);
if (Ethernet.begin(mac) == 0) {
Ethernet.begin(mac, ip);
}
delay(1000);
}
void loop() {
if(client.connect(server, 80)){
delay(1000);
client.println("GET https://server.sk/ovladac.php");
client.println("Host: server.sk");
client.println("Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8");
client.println("Connection: close");
client.println();
delay(1000);
int inBuffer = 0;
for(int i = 0; i < BUFF_DELKA; i++){ //vyprázdní buffer
buffer[i] = '\0'; //nastaví všechny prvky buffer na znak konce řetězce
}
while(client.available()){
buffer[inBuffer] = client.read();
inBuffer++;
}
if(inBuffer == 6){
if(buffer[0] == 'l' && buffer[1] == 'e' && buffer[2] == 'd'){
if(buffer[4] == '1'){
digitalWrite(3, HIGH);
}
else{
digitalWrite(3, LOW);
}
Serial.println(buffer[4]);
}
}
client.stop();
}
delay(1000);
}
Kde hľadať chybu, resp. ak mi niekto vie poradiť iný spôsob, budem rád...
! Na toto máme špeciálne vytvorenú sekciu. presunul: 11.4.2018 mirosne !