Vaša email adresa neće biti objavljena. obavezna polja su označena *
koristim arduino-uno, ali ne mogu pristupiti svojoj web stranici.i već sam dodijelio IP adresu arduino. kad pokrenem arduino (ctrl + shift + m), prikazuje izlaz. Ali kada pristupim svojoj web stranici, prikazat će se "ne možete" doći do ove web stranice.
Moj web poslužitelj odlično radi s lokalnom IP i lokalnom mrežom s ethernetnim kabelom.
rad s prosljeđivanjem porta / javnim IP-om pri korištenju druge mrežne veze na mobilnu kako je spomenuto u članku.
ne radi na mom mobilnom ili prijenosnom računalu kada koristim Wifi / Wireless router u istoj mreži s lokalnim IP.Please me obavijestite gdje idem krivo.
Trebam pomoć u ovom kodu jer kad se hitno dogodi 4 (visoka) ne mogu se vratiti u prijašnje stanje... kako mogu to učiniti ???
// SAMO ARDUINO 1.0+
// SAMO ARDUINO 1.0+
#include
#include
logičko čitanje = lažno;
////////////////////////////////////////////////////////////////////////
//CONFIGURE
////////////////////////////////////////////////////////////////////////
byte ip [] = {192, 168, 16, 71}; // Samo ručno postavljanje
// byte gateway [] = {192, 168, 1, 1}; // Samo ručno postavljanje
// bajt podmreža [] = {255, 255, 255, 0}; // Samo ručno postavljanje
// ako treba promijeniti MAC adresu (vrlo rijetko)
byte mac [] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED};
EthernetServer server = EthernetServer (80); // port 80
////////////////////////////////////////////////////////////////////////
poništavanje postave () {
Serijski počet (9600);
// Igle 10,11,12 i 13 koriste se eternetnim štitom
pinMode (2, ULAZ); // SWICH
pinMode (3, IZLAZ); //LAMP
pinMode (4, ULAZ); // HITNO
pinMode (6, ULAZ);
Ethernet.begin (mac);
//Ethernet.begin (mac, ip, gateway, podmreža); // za ručno podešavanje
server.begin ();
Serijski.println (Ethernet.localIP ());
}
void petlja () {
digitalWrite (6, NISKO);
if ((digitalno čitanje (4) == NISKO) || (digitalno čitanje (6) == HIGH))
{
if (digitalno čitanje (2) == HIGH)
{
digitalWrite (3, HIGH);
kašnjenje (5000);
digitalWrite (3, NISKO);
}
}
checkForClient (); // slušati dolazne klijente i obrađivati upitnike.
}
nevažeća provjeraForClient () {
EthernetClient klijent = server.available ();
ako (klijent) {
// http zahtjev završava praznim retkom
logička strujaLineIsBlank = istina;
boolean sentHeader = netočno;
dok (client.connected ()) {
ako (client.available ()) {
if (! sentHeader) {
// poslati standardno zaglavlje http odgovora
client.println ("HTTP / 1.1 200 OK");
client.println ("Vrsta sadržaja: tekst / html");
client.println ();
sentHeader = istina;
}
char c = client.read ();
ako (čitanje && c == '') čitanje = lažno;
ako je (c == '?') čitanje = istina; // pronašli?, počnite čitati informacije
ako (čitanje) {
Serijski otisak (c);
prekidač (c) {
slučaj '4':
// dodajte ovdje kod da biste ga pokrenuli 2
okidač (4, klijent);
pauza;
slučaj '6':
// dodati kôd ovdje za pokretanje na 3
okidač (6, klijent);
pauza;
}
}
ako (c == '\ n' && currentLineIsBlank) prekid;
ako je (c == '\ n') {
currentLineIsBlank = istina;
} else if (c! = '\ r') {
currentLineIsBlank = netočno;
}
}
}
kašnjenje (1); // dati vremenu web pregledniku da primi podatke
client.stop (); // zatvori vezu:
}
}
nevažeći pinPin (int pin, klijent EthernetClient) {
// treptaj pribadaču - Klijent potreban samo za HTML izlazne potrebe.
client.print ("Uključivanje pin");
client.println (pin);
client.print ( "");
if (pin, HIGH)
{
digitalWrite (4, VISOKO);
digitalWrite (6, HIGH);}
}
Ne bi li bilo lakše i jeftinije učiniti to s Raspberry Pi? Nisam baš siguran jer nikad nisam koristio Arduino, ali imam Pi.