Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 17.06.2014, 20:16   #1
paulerr
Senior Member
 
Регистрация: 04.01.2013
Адрес: Москва
Сообщений: 461
Вес репутации: 1152
paulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond repute
По умолчанию Re: несколько шлейфов DS18b20 на одной ардуине?

возвращаясь к роутеру:
одна ds2482-800. 8 линий 1W через i2c.
paulerr вне форума   Ответить с цитированием
Старый 17.06.2014, 22:55   #2
HuanCarlos
Junior Member
 
Регистрация: 19.03.2014
Сообщений: 11
Вес репутации: 0
HuanCarlos is an unknown quantity at this point
По умолчанию Re: несколько шлейфов DS18b20 на одной ардуине?

получилось, попробовал 3 ноги дуины и этот код -
нормально работает, на дисплее отображает ок,
заметны стали задержки по отрисовке по мере получения,
но вот с сетью (у меня в скетче оно еще и в вебморду отдает)
уже все плохо - пинги проходят %10,
вебморда практически перестала работать.


Цитата:
Сообщение от paulerr Посмотреть сообщение
возвращаясь к роутеру:
одна ds2482-800. 8 линий 1W через i2c.
спасибо, почитаю в применении к ардуине
думаю, попроизводительнее может получиться.
Цена однако кусается, чип как роутер целый...

еще одно направление - переписать скетч на использование прерывания при активности в сети, но что-то непонятно, какое событие ловить и где.
Если по датчикам понятно - на ноге что-то появилось\пропало, а сеть?
Как я понимаю, на эти 4 ноги уже не подлезть - заняты своими делами

сеть стоит в основном цикле, выполняется каждый проход.
а опрос датчиков и отрисовка экрана - в нем же, но с делителем 10.
Делал и больше, 50 к примеру.
Вроде бы не должно так уж влиять.
Опрос датчиков итп процесс не быстрый, но редкий,
а сеть постоянно в цикле крутится, не понимаю,
почему так вяло стало реагировать? До того было тоже не очень,
опрашивал 4 шт DHT22, 1 BMP085, 1 ds18d20
HuanCarlos вне форума   Ответить с цитированием
Старый 18.06.2014, 00:03   #3
paulerr
Senior Member
 
Регистрация: 04.01.2013
Адрес: Москва
Сообщений: 461
Вес репутации: 1152
paulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond reputepaulerr has a reputation beyond repute
По умолчанию Re: несколько шлейфов DS18b20 на одной ардуине?

Цитата:
Сообщение от HuanCarlos Посмотреть сообщение
Цена однако кусается, чип как роутер целый...
В МСК - 365р.или так .. , где Вы такие роутеры дешевые видели?
На тему сети, почитайте у соседей, там много чего разбирали...

Последний раз редактировалось paulerr; 18.06.2014 в 00:28.
paulerr вне форума   Ответить с цитированием
Старый 26.06.2014, 10:18   #4
UlyanovVV
Junior Member
 
Регистрация: 26.06.2014
Адрес: Чернышевск
Сообщений: 1
Вес репутации: 0
UlyanovVV is an unknown quantity at this point
По умолчанию Re: несколько шлейфов DS18b20 на одной ардуине?

Цитата:
Сообщение от HuanCarlos Посмотреть сообщение
уже все плохо - пинги проходят %10,
вебморда практически перестала работать.
Попробуй использовать библиотеку leOS2.
Использует WDT таймер
Пример
Код HTML:
#include "leOS2.h" //include the scheduler
leOS2 myOS; //create a new istance

//variables to manage the LED
const byte LED13 = 13;
byte LEDstatus = 0;


//setup routine
void setup() {
    myOS.begin(); //initialize the scheduler
    //pins as output
    pinMode(LED13, OUTPUT);
    //add the tasks
    myOS.addTask(flashLed, myOS.convertMs(1000));
}


//main loop - it's empty
void loop() {}


//this task will flash the LED on pin D13
void flashLed() {
    LEDstatus ^= 1;
    digitalWrite(LED13, LEDstatus);
}
Основной цикл здесь можно вообще не использовать.
UlyanovVV вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 06:31. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика