Определить ошибку.
- Войдите на сайт для отправки комментариев
Чт, 18/07/2013 - 18:44
Имеется Nano v.3+ENC28j60
Следующий скетч
#include "etherShield.h" //Библиотека для ENC28J60 Ethernet Shield #include "ETHER_28J60.h" //Библиотека для ENC28J60 Ethernet Shield #include <OneWire.h> //Библиотека для DS18B20 #include <DallasTemperature.h> //Библиотека для DS18B20 #include "DHT.h" //Библиотека для DHT22 static uint8_t mac[6] = {0x54, 0x55, 0x58, 0x10, 0x00, 0x24}; // Объявляем MAC адрес устройства static uint8_t ip[4] = {192, 168, 1, 10}; // Объявляем IP адрес к которому подключено устройство static uint16_t portH = 80; // Объявляем port для подключения по HTTP //static uint16_t portP = 82; // Объявляем port для подключения для Processing #define DHTPIN 2 #define DHTTYPE DHT22 DHT dht(DHTPIN, DHTTYPE); #define TEMPERATURE_PRECISION 9 #define ONE_WIRE_BUS 3 OneWire oneWire(ONE_WIRE_BUS); DallasTemperature sensors(&oneWire); ETHER_28J60 serverH; // Создали обьект e класса ETHER_28J60 для HTTP //ETHER_28J60 serverP; // Создали обьект e класса ETHER_28J60 для Processing float t[3]; //Объявляем переменные для температуры float h; //и влажности void setup() { Serial.begin(9600); //Запускаем Serial порт Serial.setTimeout(100); dht.begin(); //Запускаем DHT sensors.begin(); //Запускаем DS18B20 serverH.setup(mac, ip, portH); // Запустили сервер HTTP // serverP.setup(mac, ip, portP); // Запустили сервер Processing for (int i=0; i<4; i++) { //Выводим Serial.print (ip[i]); //знаение if (i<3) { //IP Serial.print ("."); //в } //Serial } //порт } void loop() { t[1] = dht.readTemperature(); //Считываем данные температуры с DHT22 h = dht.readHumidity(); //Считываем данные влажности с DHT22 sensors.requestTemperatures(); t[2] = sensors.getTempCByIndex(0); t[3] = sensors.getTempCByIndex(1); for (int i=1; i<4; i++) { //Выводим данные по температуре Serial.print ("T"); //в Serial Serial.print (i); //используя Serial.print (": "); //цикл Serial.print (t[i]); // Serial.println (""); // } Serial.print ("H: "); //Выводим данные Serial.print (h); //влажности Serial.println (""); //в Serial //serverH.setup(mac, ip, portH); if (serverH.serviceRequest()) // Если есть запрос клиента { serverH.print ("<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN'<html><head><meta http-equiv= refresh content=60;><meta http-equiv='Content-Type' content='text/html; charset=utf-8' /></head><body><b><font size='+3'>Микроклимат серверной </font></b><br><b>Датчик №1</b><br>Температура: "); serverH.print (t[1]); serverH.print (" *C<br>Влажность: "); serverH.print (h); serverH.print (" %<br><b>Датчик №2</b><br>Температура: "); serverH.print (t[2]); serverH.print (" *C<br> <b>Датчик №3</b><br>Температура: "); serverH.print (t[3]); serverH.print (" *C<br><hr><br><b>Заданные нормы температур и влажности:</b><br>Верхняя температурная граница регулирования: "); // serverH.print (t[4]); serverH.print (" *C<br>Нижняя температурная граница регулирования: "); // serverH.print (t[5]); serverH.print (" *C<br>Максимум нормальной влажности воздуха: "); // serverH.print (h[2]); serverH.print (" %<br><hr><br><b>Уставки сигналов аварии:</b><br>Верхняя температурная граница сигнала аварии: "); // serverH.print (t[6]); serverH.print (" *C<br>Нижняя температурная граница сигнала аварии: "); // serverH.print (t[7]); serverH.print (" *C<br>Аварийный максимум влажности воздуха: "); // serverH.print (h[3]); serverH.print (" %<br><hr><br><b>Состояние климата</b><br>"); // // // // serverH.print ("<br><hr>"); serverH.print ("</body></html>"); serverH.respond(); // отправляем созданную страницу клиенту } }
компелируется нормально, но в сериал пишет 1111111111111, а WEB не доступен.
Что не так?
Чт, 24/10/2013 - 15:17
#1
void setup()
{
e.setup(mac, ip, port);
}