PDA

Просмотр полной версии : Проблема с отображением целочисленных значений панели Weintek 8051IP



Сергей Фенев
20.01.2026, 13:21
Имеется не большой проект - динамические весы , программа написана на ПР205 , визуализация на панели Weintek 8051IP , проблема заключается в том , что панель отображает значения до 65536 и затем сбрасывается в 0 , хотя в при онлайн отладке OwenLogic тоже самое значение отображается в нужном диапазоне. В проекте панели проблемное значение имеет формат данных 32bit-Unsigned. Подскажите как решить данную проблему.

1exan
20.01.2026, 17:13
Имеется не большой проект - динамические весы , программа написана на ПР205 , визуализация на панели Weintek 8051IP , проблема заключается в том , что панель отображает значения до 65536 и затем сбрасывается в 0 , хотя в при онлайн отладке OwenLogic тоже самое значение отображается в нужном диапазоне. В проекте панели проблемное значение имеет формат данных 32bit-Unsigned. Подскажите как решить данную проблему.

Вам нужно в OL разбить 32 битное значение на два по 16 (потому что в Slave OL тип UDINT пока не завезли) и присвоить их двум последовательно стоящим регистрам. В панели читать 32 битное значение по меньшему адресу.
Типа такого
87603

Королев Кирилл
21.01.2026, 10:45
Вам нужно в OL разбить 32 битное значение на два по 16 (потому что в Slave OL тип UDINT пока не завезли) и присвоить их двум последовательно стоящим регистрам. В панели читать 32 битное значение по меньшему адресу.
Типа такого
87603

Специально для такого сценария добавили макрос недавно в менеджер компонентов - UDINT_TO_2UINT_. На вход подается локальная 32-битная переменная, на выходе две 16-битных, куда уже можно привязать сетевые Slave переменные.