Главная » Участники » rip87 » Контроллер DALI(digital addressable lighting interface) » Теперь могу присваивать короткие адреса устройствам на шине и затем обращаться к ним по этому адресу
Теперь могу присваивать короткие адреса устройствам на шине и затем обращаться к ним по этому адресу

Теперь могу присваивать короткие адреса устройствам на шине и затем обращаться к ним по этому адресу
оригинальное фото
  • Просмотров: 283
  • Рейтинг: голосов еще нет
  • Отзывов: 7

  • Получить код для блога
  • Послать ссылку другу

Комментарии к фотографии
1. Dominique (09.11.2020 11:19)
Сделали чтение?
2. rip87 (09.11.2020 11:23)
Сделал. Сейчас написано четыре функции: запись, чтение, проверка получения ответа для режима поиска длинного адреса и функция автоматического назначения коротких адресов. Ардуино позволяет творить чудеса...))
3. rip87 (09.11.2020 11:25)
К тому же оказалось что для назначения коротких адресов функция чтения не обязательна, достаточно лишь определять что балласты на шине DALI начинают коротить шину. Т.е. только улавливать момент перехода из 1 в 0. Но это уже потом догадался когда функция чтения была написана. Но зато облегчил себе работу дальнейшую. Сейчас все праметры с балластов могу считывать.
4. Dominique (09.11.2020 14:50)
Ну да, для адресации важен сам факт ответа, а не его содержание. Но полноценное чтение по любому нужно.
Пробовали опрашивать режим "дефектная лампа"?
5. rip87 (09.11.2020 15:03)
4. Всё верно но одна поправочка. Дело в том что в таком случае и не получится раскодировать сообщение, т.к. произойдет нарушение кода. Балласты могут не одновременно коротить шину, т.е. ответы могут приходить немного с задержкой относительно друг друга. Если полностью читать ответные сообщения в режиме поиска то чтение может закончиться ошибкой, если более 1-го устройства на шине. Поэтому при поиске длинных адресов необходимо и достаточно только отслеживать закорачивание шины.
Пробовал но с исправной лампой. Надо будет ещё попробовать отсоединить один конец лампы и проверить что прочитает...
6. Dominique (09.11.2020 17:06)
Чтение не может закончиться ошибкой, если всегда считывать ровно 8 бит. Пока балласты оставались на шине, у меня всегда получался ответ "255", если правильно помню. Хотя сам ответ в любом случае не анализировался, было достаточно только факта его получения.
А вот когда на шине оказываются 2 балласта с одинаковыми короткими адресами (если вдруг), то вот этот момент отслеживается как раз по ошибочности ответа на индивидуальные команды.

Режим "неисправная лампа" по идее должен быть сразу при её вынимании.
7. rip87 (09.11.2020 17:41)
Думаю это частный случай когда балласты одного произоводителя. У меня тоже осрамы одновременно отвечают. Но все-же думаю полностью прогонять через декодер не нужно при назначении адресов.
А чтение вот наоборот нужно полностью анализировать от начала и до конца, причем со стоповыми битами, и по любому чиху выходить из выполнения функции с ошибкой. Тогда не будет никаких неоднозначностей...
Ваш комментарий:
Вам необходимо зарегистрироваться и войти на фотогалерею, чтобы иметь возможность оставлять свои комментарии.
Участник: rip87
Альбомы участника
Тематики галереи

О проектеОбсуждение фотогалереиОбсуждение цифровой фотографии
Политика использования cookieПолитика защиты и обработки персональных данных
Copyright © iXBT.com, 2006-2024 • Разработка: MN
Rambler's Top100 Рейтинг.ru