EnglishУкраїнськаmRussian
Login/New
Topic with no new replies

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


Author Message
Written on: 25. 06. 2014 [12:29]
fido_max
Maxim Kochetkov
Contributor
Topic creator
registered since: 28.10.2010
Posts: 129
В модуле протокола ModBus реализовал функции:
0x2 Read discrete inputs
0x4 Read input registers

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

modbus_prt.cpp (File type: text/x-c++src, Size: 61.07 kilobytes) — 2017 downloads
modbus_prt.h (File type: text/x-chdr, Size: 6.44 kilobytes) — 1963 downloads
Written on: 25. 06. 2014 [22:31]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"fido_max" wrote:

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

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

Learn, learn and learn better than work, work and work.
Written on: 25. 06. 2014 [22:51]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"roman" wrote:

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

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

Learn, learn and learn better than work, work and work.
Written on: 27. 06. 2014 [12:24]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"roman" wrote:

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

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

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

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

Learn, learn and learn better than work, work and work.
Written on: 06. 07. 2014 [21:58]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"roman" wrote:

"roman" wrote:

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

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

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

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



5114