УкраїнськаEnglishmRussian
Вход/Новый
В теме нет новых постов

Функции 0x2 и 0x4


Автор Сообщение
Сообщение создано: 25. 06. 2014 [12:29]
fido_max
Maxim Kochetkov
Contributor
Создатель темы
Зарегистрирован(а) с: 28.10.2010
Сообщения: 129
В модуле протокола ModBus реализовал функции:
0x2 Read discrete inputs
0x4 Read input registers

Конфигурируются как
CI:0 - дискретный вход 0
RI_f:512 float в input регистре начиная с адреса 512
Вложенный файл

modbus_prt.cpp (Тип файла: text/x-c++src, Размер: 61.07 килобайт) — 1884 загрузок
modbus_prt.h (Тип файла: text/x-chdr, Размер: 6.44 килобайт) — 1836 загрузок
Сообщение создано: 25. 06. 2014 [22:31]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3742
"fido_max" wrote:

В модуле протокола ModBus реализовал функции:
0x2 Read discrete inputs
0x4 Read input registers

Лучше-бы это патчем и к рабочей версии, а не LTS!

Learn, learn and learn better than work, work and work.
Сообщение создано: 25. 06. 2014 [22:51]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3742
"roman" wrote:

Лучше-бы это патчем и к рабочей версии, а не LTS!

Хотя годится для рабочей версии, но код местами избыточен, не в исходном стиле и в целом нуждается в чистке.

Learn, learn and learn better than work, work and work.
Сообщение создано: 27. 06. 2014 [12:24]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3742
"roman" wrote:

Хотя годится для рабочей версии, но код местами избыточен, не в исходном стиле и в целом нуждается в чистке.

Если замечания будут учтены и изменения оформлены в виде патча, то я включу их в репозиторий от Вашего имени.

Иначе я это просто сам напишу как правильно, что будет быстрее, чем ожидать должного оформления, поскольку эти расширения простые, а функции Inputs ModBus не более чем имитация для соответствующих устройств, почему их там и нет.

Вообще распространённая политика приёмки патчей следующая:
- Если изменения затрагивают оригинальный исходник, то они пишутся в его стиле.
- Даже если это новый модуль или расширение, следует придерживаться сложившегося стиля, если конечно Вы не серьёзно настроены их делать много, а затем сопровождать, чем принимая участие в жизни "монастыря", от "Со своим уставом в чужой монастырь не ходи".
- И конечно исключать дублирования и избыточности кода, как в вашем случае с самой обработкой запросов по функциям 2 и 4, которые просто добавляются, как частный случай подстановкой нужного контейнера регистров для 1 и 3.

Learn, learn and learn better than work, work and work.
Сообщение создано: 06. 07. 2014 [21:58]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3742
"roman" wrote:

"roman" wrote:

Хотя годится для рабочей версии, но код местами избыточен, не в исходном стиле и в целом нуждается в чистке.

Если замечания будут учтены и изменения оформлены в виде патча, то я включу их в репозиторий от Вашего имени.

Включил в дерево исходных текстов, а затем переписал полностью!

Learn, learn and learn better than work, work and work.



3776