Следующий вопрос будет, почему нет отрицательных чисел 254 отображается как 254, а не -2. Даже если поставить DEC.
Следующий вопрос будет, почему нет отрицательных чисел 254 отображается как 254, а не -2. Даже если поставить DEC.
Последний раз редактировалось petera; 22.01.2023 в 13:02.
Мой канал на ютубе
https://www.youtube.com/c/ПетрАртюков
Мой канал на РУТУБЕ
https://rutube.ru/channel/23641433/
Библиотека ГМ для СП300
https://disk.yandex.com/d/gHLMhLi8x1_HBg
Как я понимаю, в макросе нужно смотреть 7й бит и если он тру, выставлять старшие 8 бит в тру. Работает, но нет ли подводных камней, знаток?
WORD Value=0;
BYTE B0=0;
BYTE B1=0;
BYTE const255=255;
Read(PLC, 1, MODBUS_RTU_REG_3X, 525, 0, TYPE_WORD, &Value);
B0=LOBYTE(Value);
B1=HIBYTE(Value);
if (B0>127) {
Value=MAKEWORD(B0,const255);
}else
{
Value=B0;
}
PSW[301]=Value;