Страница 14 из 53
Re: MegaLight - контроллер освещения на Arduino Mega 2560+W5
Добавлено: Вс ноя 29, 2015 1:39 am
Geban
в Enc28j60Network.h есть блок
Код: Выделить всё
#define ENC28J60_CONTROL_CS SS
#define SPI_MOSI MOSI
#define SPI_MISO MISO
#define SPI_SCK SCK
#define SPI_SS SS
Но где определения сигналов MOSI, MISO, SCK ,SS я не нашел...ни в ардуиновских либах ни в файлах UIP ... gcc тоже вроди не оперирует такими обозначениями... это даже не регистры SPI. Это именно пины.. ибо есть место где написано
Код: Выделить всё
pinMode(ENC28J60_CONTROL_CS, OUTPUT);
CSPASSIVE; // ss=0
//
pinMode(SPI_MOSI, OUTPUT);
pinMode(SPI_SCK, OUTPUT);
pinMode(SPI_MISO, INPUT);
pinMode(SPI_SS, OUTPUT);
digitalWrite(SPI_MOSI, LOW);
digitalWrite(SPI_SCK, LOW);
Значит где-то надо или определить их или она уже где то прописаны...
Re: MegaLight - контроллер освещения на Arduino Mega 2560+W5
Добавлено: Вс ноя 29, 2015 2:08 am
Geban
Заработало!
Сделал в Enc28j60Network.h вот так
Код: Выделить всё
#include "mempool.h"
#if defined(__AVR_ATmega2560__) || defined(__AVR_ATmega1280__)
#define ENC28J60_CONTROL_CS 53
#define SPI_MOSI 51
#define SPI_MISO 50
#define SPI_SCK 52
#define SPI_SS 53
#else;
#define ENC28J60_CONTROL_CS 10
#define SPI_MOSI 11
#define SPI_MISO 12
#define SPI_SCK 13
#define SPI_SS 10
#endif;
/*
#define ENC28J60_CONTROL_CS SS
#define SPI_MOSI MOSI
#define SPI_MISO MISO
#define SPI_SCK SCK
#define SPI_SS SS
*/
#define UIP_RECEIVEBUFFERHANDLE 0xff
подключил как написано выше и о чудо! Пинг! )
Re: MegaLight - контроллер освещения на Arduino Mega 2560+W5
Добавлено: Вс ноя 29, 2015 2:19 am
Geban
Заработал MegaLight на ENC !!! Тормознуто немного... все таки ENC тупее и проще чем W5100! Но для конфига хватит.
Во вложении рабочий вариант. Универсальность не делал, эта версия будет работать только с ENC
Re: MegaLight - контроллер освещения на Arduino Mega 2560+W5
Добавлено: Вс ноя 29, 2015 2:35 am
olehs
Валяется где-то ENC, но ни разу его так и не использовал. Зато начитался про его проблемы: начиная кривой реализацией стека и заканчивая зависаниями.
Если будут результаты более-менее продолжительного использования - отпишитесь, пожалуйста.
Re: MegaLight - контроллер освещения на Arduino Mega 2560+W5
Добавлено: Пн ноя 30, 2015 12:18 am
Geban
Разобрался с глюками ENC, работает ни чуть не медленее W5100! Тупило из за того что был включен отладочный вывод в консоль, убрал и все залетало. Вот вопрос к автору. Есть такая беда, назначаю 11 кнопок, все ок. Начинаю назначать реле.. ID 1 PIN 22 - Ok! ID2 PIN24 -.... виснет намертво, если сбросить ардуину кнпкой то исчезают все настройки из епром. Т.е ни назначеных кнопок ни реле. С оригинальным скетчем и W5100 тоже самое.
И вот я думаю..это баг платы или софта?
В консоли написано что сохранено 104 байта. На этом моменте все виснет
ЗЫ
Оказывается что если минут 10 подождать то все сохраняется.
ЗЗЫ
Причем такая фигня только с реле.. все остальное добавляется без проблем.
И самая главная беда - не сохраняются настройки в ЕЕПРОМ! После нажатия reset все исчезает
Re: MegaLight - контроллер освещения на Arduino Mega 2560+W5
Добавлено: Пн ноя 30, 2015 12:04 pm
ToteMeiSter
Вопрос к автору.
А почему это не сделать на базе AMS?
Re: MegaLight - контроллер освещения на Arduino Mega 2560+W5
Добавлено: Пн ноя 30, 2015 12:15 pm
olehs
Geban писал(а):Разобрался с глюками ENC, работает ни чуть не медленее W5100! Тупило из за того что был включен отладочный вывод в консоль, убрал и все залетало. Вот вопрос к автору. Есть такая беда, назначаю 11 кнопок, все ок. Начинаю назначать реле.. ID 1 PIN 22 - Ok! ID2 PIN24 -.... виснет намертво, если сбросить ардуину кнпкой то исчезают все настройки из епром. Т.е ни назначеных кнопок ни реле. С оригинальным скетчем и W5100 тоже самое.
И вот я думаю..это баг платы или софта?
В консоли написано что сохранено 104 байта. На этом моменте все виснет
ЗЫ
Оказывается что если минут 10 подождать то все сохраняется.
ЗЗЫ
Причем такая фигня только с реле.. все остальное добавляется без проблем.
И самая главная беда - не сохраняются настройки в ЕЕПРОМ! После нажатия reset все исчезает
Очень странно, у меня конфигурация с 11 кнопками занимает 243 байта.
Сейчас, пока проверял, тоже напоролся на зависания, но только если удаляется много объектов сразу. Похоже на нехватку оперативки вследствие фрагментации. Надо подумать, как проверить эту версию...
Re: MegaLight - контроллер освещения на Arduino Mega 2560+W5
Добавлено: Пн ноя 30, 2015 12:50 pm
olehs
ToteMeiSter писал(а):Вопрос к автору.
А почему это не сделать на базе AMS?
Я так понимаю, вопрос к автору AMS
Я не против - исходники на гитхабе. Старался писать так, чтоб код можно было использовать повторно. Здесь же я по просьбе сообщества поделился тем, что работает у меня в качестве контроллера освещения. Сервером УД при этом у меня является МЖД, который в этом качестве просто вне конкуренции (спасибо Сергею!).
Как по мне, AMS и MegaLight - проекты, преследующие разные цели. Цель MegaLight - автономное управление с настраиваемой, а не программируемой логикой. А вот AMS - более универсальное решение и вполне мог что-то использовать из ML.
Изначально же проект возник из-за отсутствия готовых решений по "продвинутой" работе с кнопками (двойное нажатие, удерживание, автоповтор). Для этого был создан отдельный класс, который можно использовать в своих проектах, было бы желание. Остальное - конструктор из сторонних библиотек.
Веб-конфигуратор вообще был прикручен из спортивного интереса (тот контроллер, который управляет освещением у меня, законфигурирован жестко в коде, т.к. изменения происходят очень редко).
Кстати, у AMS, есть конфигуратор?
Re: MegaLight - контроллер освещения на Arduino Mega 2560+W5
Добавлено: Пн ноя 30, 2015 3:37 pm
Geban
olehs писал(а):
Очень странно, у меня конфигурация с 11 кнопками занимает 243 байта.
Сейчас, пока проверял, тоже напоролся на зависания, но только если удаляется много объектов сразу. Похоже на нехватку оперативки вследствие фрагментации. Надо подумать, как проверить эту версию...
Так и не смог разобраться как хранятся настройки в еепром.. мудренно у вас там )
Еще эффект с тупняком слега становится легче если есть сервер МДМ.. т.е по адресу который указан в прошивке отвечает вэб сервер. В этом случаем тупняки где то по несколько секунд
Нет у AMS никакого конфигуратора. Вэб морда это по больше части показометр. Нет я не спорю,проект хороший,но уровень вхождения в него крайне высок. простой смертный не справится никогда.
А ML ближе к ПЛК что ли... В принципе идею так же можно развить как и AMS... добавить скриптовый язык описания логики, различные интерфейсы и протоколы..
Re: MegaLight - контроллер освещения на Arduino Mega 2560+W5
Добавлено: Пн ноя 30, 2015 9:00 pm
man8007
olehs писал(а):собирайте на 1.6.5 от arduino.cc
Большое спасибо все заработало.