Подключение контроллера MegaD-328

Подключение исполнительных устройств, датчиков, контроллеров.

Модератор: immortal

Аватара пользователя
Bagir
Сообщения: 1613
Зарегистрирован: Вт сен 17, 2013 6:46 pm
Откуда: Ярославская область город Углич
Благодарил (а): 212 раз
Поблагодарили: 375 раз

Re: Подключение контроллера MegaD-328

Сообщение Bagir » Пн мар 23, 2015 3:27 pm

Bagir писал(а):можно ли заставить таймер вызывать себя 20, 30, 100 раз?
Легко!
В конце скрипта с именем например "HardwareMonitor" пишем его вызов с задержкой

Код: Выделить всё

setTimeOut('HardwareMonitorTimer',"runScript('HardwareMonitor');",10); 
Теперь скрипт будет вызывать сам себя каждые 10 секунд. Попутно можно передавать значение переменной в параметре, и по условию закончить эту рекурсию.
У меня пока нет на чем поиграться с ШИМ. Так что тему еще не изучал.
Еще почитайте тут http://smartliving.ru/forum/viewtopic.p ... 832#p20032
Windows 10, HTTP, MegaD, Z-Wave, 1-Wire, CONNECT
Аватара пользователя
AHgpeu
Сообщения: 117
Зарегистрирован: Чт мар 12, 2015 11:46 am
Благодарил (а): 26 раз
Поблагодарили: 16 раз

Re: Подключение контроллера MegaD-328

Сообщение AHgpeu » Вт мар 24, 2015 12:11 am

Bagir писал(а):
AHgpeu писал(а):можно ли заставить таймер вызывать себя 20, 30, 100 раз?
Легко!
В конце скрипта с именем например "HardwareMonitor" пишем его вызов с задержкой

Код: Выделить всё

setTimeOut('HardwareMonitorTimer',"runScript('HardwareMonitor');",10); 
да вот я тоже думал, что легко... только вот 2й раз у меня таймер не срабатывал. обманул систему, сделал вызов

Код: Выделить всё

setTimeOut('HardwareMonitorTimer'.rand(),"runScript('HardwareMonitor');",10); 
так работало, вызывало сколько нужно.
Аватара пользователя
Bagir
Сообщения: 1613
Зарегистрирован: Вт сен 17, 2013 6:46 pm
Откуда: Ярославская область город Углич
Благодарил (а): 212 раз
Поблагодарили: 375 раз

Re: Подключение контроллера MegaD-328

Сообщение Bagir » Вт мар 24, 2015 1:26 am

Тут причина в том, что нельзя создать два разных таймера с одним именем HardwareMonitorTimer. Но это очень даже удобно. Например, если нужно запускать скрипт каждые 10 секунд, то этот код у меня отлично работает. Причем первоначальный запуск я делаю из onNewMinute, но не просто

Код: Выделить всё

runScript('HardwareMonitor');
а так же

Код: Выделить всё

setTimeOut('HardwareMonitorTimer',"runScript('HardwareMonitor');",10);
При этом, когда скрипт запустит свой таймер в шестой раз, его сразу перезапишет запуск из onNewMinute, и два раза подряд скрипт не будет выполнен.

Очень странно, почему не работает вызов с одним именем. У меня так 3 разные скрипта и один метод крутятся.
Windows 10, HTTP, MegaD, Z-Wave, 1-Wire, CONNECT
Аватара пользователя
AHgpeu
Сообщения: 117
Зарегистрирован: Чт мар 12, 2015 11:46 am
Благодарил (а): 26 раз
Поблагодарили: 16 раз

Re: Подключение контроллера MegaD-328

Сообщение AHgpeu » Вт мар 24, 2015 10:37 am

возможно потому, что у меня вызов через секунду (для диммирования же)...
Аватара пользователя
Bagir
Сообщения: 1613
Зарегистрирован: Вт сен 17, 2013 6:46 pm
Откуда: Ярославская область город Углич
Благодарил (а): 212 раз
Поблагодарили: 375 раз

Re: Подключение контроллера MegaD-328

Сообщение Bagir » Вт мар 24, 2015 10:39 am

Да, очень моет быть. Попробуйте проверить, увеличив немного время. Просто для интереса.
Windows 10, HTTP, MegaD, Z-Wave, 1-Wire, CONNECT
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1753 раза
Контактная информация:

Re: Подключение контроллера MegaD-328

Сообщение skysilver » Вт мар 24, 2015 10:47 am

AHgpeu, видел Ваше сообщение о самодельном МегаД на базе ардуино про мини. Если не трудно, то подскажите пару моментов.
Какое тактирование atmega328p использовали - от штатного кварца ардуины (16МГц) или от кварца сетевого модуля enc28j60? Работает ли у Вас обновление прошивки по сети?
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Аватара пользователя
AHgpeu
Сообщения: 117
Зарегистрирован: Чт мар 12, 2015 11:46 am
Благодарил (а): 26 раз
Поблагодарили: 16 раз

Re: Подключение контроллера MegaD-328

Сообщение AHgpeu » Вт мар 24, 2015 5:26 pm

skysilver писал(а):AHgpeu, видел Ваше сообщение о самодельном МегаД на базе ардуино про мини. Если не трудно, то подскажите пару моментов.
Какое тактирование atmega328p использовали - от штатного кварца ардуины (16МГц) или от кварца сетевого модуля enc28j60? Работает ли у Вас обновление прошивки по сети?
по началу тактовался на 16 МГц. Прошивку каждый раз нужно было пересобирать с заменой частоты. Быстро надоело, потому в итоге на всех своих мегах с ардуинок выпаял кварц и подпаялся 1м проводочком к 12.5 МГц (1я нога, если не ошибаюсь, модуля enc28j60).
теперь прошиваюсь по сети и горя не знаю)
Bagir писал(а):Да, очень моет быть. Попробуйте проверить, увеличив немного время. Просто для интереса.
поздно, поскольку Андрей выпустил новую прошивку, нужда в циклах отпала. скрипт теперь совершенно на другой логике вкалывает.
запускает режим "плавного изменения яркости", по отпусканию кнопки просто читает значение из меги и тут же его обратно записывает
Аватара пользователя
Bagir
Сообщения: 1613
Зарегистрирован: Вт сен 17, 2013 6:46 pm
Откуда: Ярославская область город Углич
Благодарил (а): 212 раз
Поблагодарили: 375 раз

Re: Подключение контроллера MegaD-328

Сообщение Bagir » Вт мар 24, 2015 5:30 pm

skysilver писал(а):поздно, поскольку Андрей выпустил новую прошивку, нужда в циклах отпала.
Угу, читал, но просто интересно.
Windows 10, HTTP, MegaD, Z-Wave, 1-Wire, CONNECT
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1753 раза
Контактная информация:

Re: Подключение контроллера MegaD-328

Сообщение skysilver » Ср мар 25, 2015 12:07 pm

AHgpeu писал(а):теперь прошиваюсь по сети и горя не знаю)
А каким способом сам загрузчик прошивали? Я правильно понял, что при тактировании от кварца ардуины (16МГц) и при прошитом загрузчике прошивка по сети не работала?
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
jonyzs
Сообщения: 86
Зарегистрирован: Чт фев 21, 2013 11:35 pm
Благодарил (а): 4 раза
Поблагодарили: 2 раза

Re: Подключение контроллера MegaD-328

Сообщение jonyzs » Ср мар 25, 2015 8:57 pm

Можно и от кварца на схеме прошиваться по сети стандартным образом как в настоящей меге,чтоб всё работало надо проста другие фюзы прощить а не те что в оригинальной меге,у меня их сделано 3 штуки(правда не на такой красивой печатке как тут выше было показано) и только у одной я сделал тактирование с енц,обе остальные прекрастно обновляютсья скриптом через сеть и ничего переделивать в прошивках не понадобылось.
Ответить