Определить ошибку.
- Войдите на сайт для отправки комментариев
Чт, 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);
}