Не работает digitalWrite(13, HIGH); совместно с Ethernet.begin(mac,ip)
- Войдите на сайт для отправки комментариев
Пт, 20/02/2015 - 23:33
Есть скетч, он соединяется с сервером, получает инфу и в зависимости от полученной инфы включает либо выключает свет, либо включает по датчику движения. Но почему-то не работает digitalWrite(13, HIGH); причём в мониторе выводит, что включилось/выключилось. Методом частичной проверки кода выяснилось что помеха этому Ethernet.begin(mac,ip), так как если убрать его, то всё работает, реле щёлкает. Вот тут например реле не будет работать:
#include <SPI.h> #include <Ethernet.h> #include <string.h> byte mac[] = { 0x90, 0xA2, 0xDA, 0x0F, 0x91, 0x08 }; byte ip[] = { 192,168,1,56 }; void setup() { Serial.begin(9600); EthernetClient client; Ethernet.begin(mac, ip); pinMode(13, OUTPUT); } void loop() { digitalWrite(13, HIGH); Serial.println("1"); delay(1000); digitalWrite(13, LOW); Serial.println("2"); delay(1000); }
Но если мы закомментируем часть кода, то будет:
#include <SPI.h>
#include <Ethernet.h>
#include <string.h>
byte mac[] = { 0x90, 0xA2, 0xDA, 0x0F, 0x91, 0x08 };
byte ip[] = { 192,168,1,56 };
void setup() {
Serial.begin(9600);
EthernetClient client;
// Ethernet.begin(mac, ip);
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH);
Serial.println("1");
delay(1000);
digitalWrite(13, LOW);
Serial.println("2");
delay(1000);
}
Помогите пожалуйста.
Ну наверное потому что 13 это SCK... используйте другой вывод для своих нужд.
Здравствуйте!
Похожая проблема. Также не работает digitalWrite(12, HIGH/LOW);
скетч смс-ки получает, читает, находит нужное слово, заходит в условие - но реле не щелкает!
Если я пытаюсь пощелкать релющкой вне этого условия - все работает, а внутри никак
Предвижу следующих два вопроса:
Третий: Похожая проблема. Также не работает digitalWrite(11, HIGH/LOW);
Четвёртый: Похожая проблема. Также не работает digitalWrite(10, HIGH/LOW);
Совет:
Отдайте SPI-ю его "родные" пины 10, 11, 12, 13 и не трожьте их ( если вы не на Меге 128-256)
http://arduino.ru/Reference/Library/SPI
Спасибо!
И не забудьте, что есть еще чипселекты по одному на эзернет и sd. , указанные программно. SD живет по умолчанию на 4-м пине, зернет не помню навскидку. Их тоже не следует беспокоить.