Ваша емаил адреса неће бити објављена. Обавезна поља су означена *
Користим ардуино-уно, али не могу приступити својој веб страници.и сам већ доделио ИП адресу ардуино. кад покренем ардуино (цтрл + схифт + м), приказује излаз. Али када приступим својој веб страници, приказаће се "не можете" да дођете до ове веб странице.
Мој веб сервер добро функционише са локалном ИП и локалном мрежом помоћу етхернет кабла.
рад са просљеђивањем портова / јавним ИП-ом при кориштењу друге мрежне везе на мобилну, како је споменуто у чланку.
не ради на мом мобилном или лаптопу када користим Вифи / Вирелесс рутер у истој мрежи са локалним ИП-ом. Обавестите ме где грешим.
Требам помоћ у овом коду јер кад се случајно догоди 4 (високо) не могу се вратити у пријашње стање... како могу то учинити ???
// САМО АРДУИНО 1.0+
// САМО АРДУИНО 1.0+
#инцлуде
#инцлуде
логичко читање = лажно;
////////////////////////////////////////////////////////////////////////
//CONFIGURE
////////////////////////////////////////////////////////////////////////
бајт ип [] = {192, 168, 16, 71}; // Само ручно подешавање
// приступ бајту [] = {192, 168, 1, 1}; // Само ручно подешавање
// бајт подмрежа [] = {255, 255, 255, 0}; // Само ручно подешавање
// ако је потребно да промените МАЦ адресу (врло ретко)
бите мац [] = {0кДЕ, 0кАД, 0кБЕ, 0кЕФ, 0кФЕ, 0кЕД};
ЕтхернетСервер сервер = ЕтхернетСервер (80); // порт 80
////////////////////////////////////////////////////////////////////////
воид сетуп () {
Сериал.бегин (9600);
// Игле 10,11,12 и 13 користе се етернетним штитом
пинМоде (2, УЛАЗ); // СВИЦХ
пинМоде (3, ИЗЛАЗ); //LAMP
пинМоде (4, ИНПУТ); // ХИТНО
пинМоде (6, УЛАЗ);
Етхернет.бегин (мац);
//Етхернет.бегин (мац, ип, гатеваи, подмрежа); // за ручно подешавање
сервер.бегин ();
Сериал.принтлн (Етхернет.лоцалИП ());
}
воид лооп () {
дигиталВрите (6, НИЗ);
иф ((дигиталРеад (4) == ЛОВ) || (дигиталРеад (6) == ХИГХ))
{
иф (дигитално читање (2) == ХИГХ)
{
дигиталВрите (3, ХИГХ);
кашњење (5000);
дигиталВрите (3, НИЗ);
}
}
цхецкФорЦлиент (); // слушајте долазне клијенте и обрадујте куекуест.
}
воид цхецкФорЦлиент () {
ЕтхернетЦлиент цлиент = сервер.аваилабле ();
ако (клијент) {
// хттп захтев завршава празном линијом
боолеан цуррентЛинеИсБланк = тачно;
боолеан сентХеадер = лажно;
док (цлиент.цоннецтед ()) {
ако (цлиент.аваилабле ()) {
иф (! посланХеадер) {
// послати стандардно заглавље хттп одговора
цлиент.принтлн ("ХТТП / 1.1 200 ОК");
цлиент.принтлн ("Тип садржаја: текст / хтмл");
цлиент.принтлн ();
сентХеадер = тачно;
}
цхар ц = цлиент.реад ();
ако (читање && ц == '') читање = лажно;
иф (ц == '?') читање = тачно; // пронашли?, почните читати информације
ако (читање) {
Серијски.принт (ц);
прекидач (ц) {
случај '4':
// додајте овде код да бисте га покренули 2
окидач (4, клијент);
пауза;
случај '6':
// додајте овде код да бисте га покренули 3
окидач (6, клијент);
пауза;
}
}
ако (ц == '\ н' && цуррентЛинеИсБланк) прекид;
ако је (ц == '\ н') {
цуррентЛинеИсБланк = тачно;
} елсе иф (ц! = '\ р') {
цуррентЛинеИсБланк = лажно;
}
}
}
кашњење (1); // дати временском претраживачу да прими податке
цлиент.стоп (); // затвори везу:
}
}
неисправни окидач (инт пин, ЕтхернетЦлиент клијент) {
// трепните пин - Клијент потребан само за ХТМЛ излазне сврхе.
цлиент.принт ("Укључивање пин");
цлиент.принтлн (пин);
цлиент.принт ("");
ако (пин, ВИСОК)
{
дигиталВрите (4, ХИГХ);
дигиталВрите (6, ХИГХ);}
}
Не би ли било лакше и јефтиније учинити ово са Распберри Пи? Нисам баш сигуран јер никада нисам користио Ардуино, али имам Пи.