[W5100] WebServer и переменная типа char[]
- Войдите на сайт для отправки комментариев
Ср, 22/01/2014 - 17:05
#include <SPI.h> #include "RF24.h" #include <Ethernet.h> RF24 radio(7, 8); byte mac[] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xFE }; IPAddress ip(192,168,1,10); EthernetServer server(80); const uint64_t pipes[2] = {0xF0F0F0F000LL, 0xF0F0F0F0FFLL}; // адреса каналов приема и передачи char data[16] = ""; void setup(){ Serial.begin(9600); Ethernet.begin(mac, ip); radio.begin(); radio.setDataRate(RF24_250KBPS); // Скорость передачи radio.setChannel(100); // Номер канала от 0 до 127 radio.setRetries(15,15); // Кол-во попыток и время между попытками radio.openWritingPipe(pipes[1]); // Открываем канал передачи radio.openReadingPipe(1, pipes[0]); // Открываем один из 6-ти каналов приема radio.startListening(); // Начинаем слушать эфир } void loop(){ EthernetClient client = server.available(); if (client.connected()) { client.println ("<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN'"); client.println ("<html>"); client.println ("<head> "); client.println ("<meta http-equiv= refresh content=60;>"); client.println ("<meta http-equiv='Content-Type' content='text/html; charset=utf-8' /> "); client.println ("</head> "); client.println ("<body>"); client.println(data); client.println ("</body>"); client.println("</html>"); client.stop(); } if(Serial.available()){ char data[5] = ""; for (int i=0; i<5; i++) { data [i] = Serial.read (); delay (50); // Serial.print (data[i]); } // Serial.println (); radio.stopListening(); radio.write(&data, 5); radio.startListening(); } if(radio.available()){ radio.read(&data, 16); Serial.print(data); } }
Данные с удаленного датчика получает, в чериал переменную char data[] выводит нормально, но эту же самую строку вида DHT21H35T23.4>, выводит только >
Уже и в цикл вида
for (int i=0; i<16; i++) { client.print (data[i]); }
выводил, но все равно одно и то же ">" и больше ничего...
char не выводит Ethernet?
пробовал, выводит
Что пробовали? Это не проба, а указание на ошибку. Наводящий вопрос: Чем отличается 5 от 16 ?
Что пробовали? Это не проба, а указание на ошибку. Наводящий вопрос: Чем отличается 5 от 16 ?
Хм, а если предполагается, что размер данных может быть с разных датчиков разный, а где то не показания а задача, т.е. рамер должен быть динамичным.
Вам, как новичку, лучше использовать статические массивы. Обьявляйте размер с запасом.
Попробую прислушаться.