Давненько не отписывался, но работа у нас с Денисом идет.
Готов протокол связи устройств в сети и их настройки (прямо в сети).
Попробую накидать небольшой обзор - дабы был виден прогресс.
Раз мы определились с сетью начну с нее, а потом опустимся к самому устройству.
1 Итак, обмен данными в сети реализован посредством UART по топологии кольцо, то есть выход (TxD) первого устройства соединяется со входом (RxD) второго, выход второго со входом третьего и т. д. выход последнего устройства в сети соединяется со входом первого устройства.
2 При настройке устройств (или даже одного) компьютер должен входить в сеть (посредством преобразователя USB-UART)
*Для настройки не обязательно его подключать к компьютеру в программе настройщике будет предусмотрена возможность сохранять в прошивку для EEPROM.
3 Настроенное устройство (или сеть устройств) не нуждается в компьютере (он просто выкидывается из кольца).
4 Устройства работающие в сети не имеют главного управляющего устройства. Все устройства равноправны и свободно могут как передавать, так и опрашивать данные с других устройств. Логика поведения устройств в сети задается в процессе настройки и может гибко меняться со временем.
Теперь давайте рассмотрим само устройство. Я наверное повторюсь, выше уже про это писалось, но для полноты картинки напишу еще.
Условно устройство можно разделить на несколько функциональных частей:
1 Главная часть устройства (так сказать ее изюминка
) - это, как мы их назвали, "точки доступа". Точки доступа являются связующими (опорными) точками, через которые осуществляется связь различных частей устройства между собой, с модулями формирующими выходные сигналы, модулями получающими данные из вне, с сетью, компьютером - короче любое взаимодействие происходит только через точки доступа и никак иначе. В сети устройство "видится" тоже точками тоступа
Каждое устройство может иметь до 126 точек доступа (зависит от конкретного устройства и его назначения). Физически точка доступа - это ячейка памяти (переменная) в которой хранится информация от (или для) какого-то модуля устройства.
Для большей понятности несколько примеров. Если устройство принимает посылки ИК-пульта, то модуль приема ИК-посылок после принятия очередной посылки - просто сохраняет номер нажатой кнопки на пульте в своей точке доступа. Если устройство формирует, например, ШИМ- сигнал на конкретной ножке, внутренние модули оставляют в точке доступа для ШИМ значения нужного уровня, а модуль вывода уже формирует сигнал на ножке.
2 Следующая часть устройства - это модули формирующие данные для точек доступа или формирующие выходные сигналы в соответствии с данными в точках доступа. Это целый набор возможных модулей на все случаи жизни который будет постоянно пополнятся и расширятся. Примеры - ИК приемник, цифровые входные и выходные линии, АЦП, ШИМ, всевозможные датчики, клавиатуры, индикаторы и т.д.
3 И последняя часть - это "микропрограммы". Микропрограммы - это своего рода правила реакции (алгоритмы поведения) устройства на различные воздействия. Микропрограммы в качестве аргументов (входных воздействий) берут одну или несколько точек доступа анализируют их и выдают в качестве результата значение для другой (или других) точек доступа.
Пример. Микропрограмма берет точку доступа клавиатуры и по значению в ней (например нажатие определенной клавиши) изменяет другую точку доступа, например, подключенную к модулю формирования ШИМ. Нажата клавиша - ШИМ увеличивает скважность, нажата другая клавиша - ШИМ уменьшает скважность.
Микропрограмм будет определенный набор, который, опять таки, будет расширятся по конкретным нуждам. Настройка микропрограмм производится Вами под конкретные условия и с использованием любых точек доступа - Вы сами задаете что делать и как.
Вот кратенько
и отписался.
На сладкое выдаю в очередной раз переделанную программку настройки устройств. Она уже умеет находить все устройства в сети и работать с настройщиками.
Так как физической сети сделать не получится - предусмотрел добавление устройств в ручном режиме - смотрите демонстрационный ролик как это сделать.
Это сама программка
Комментарий к файлу: Программа настройщик
LC_Tuner Demo.zip [110.11 КБ]
Скачиваний: 603
а это демонстрашка
Комментарий к файлу: демонстрация
demo.zip [1.35 МБ]
Скачиваний: 679