Связь наладил, диод rs моргает. FirstAddr:=51, Quantity:=1, вроде бы ничего не напутал (связь-то есть).
Но чтение не идет![]()
В буфере одни нули, хотя на третий вход единичка подана. На приборе диод горит.Код:IF cmpl AND err=0 THEN (*потрошим байты*) in1:=Buffer[1].0; in2:= Buffer[1].1; ... in8:=Buffer[1].7; in9:=Buffer[0].0; in10:=Buffer[0].1; ... in16:=Buffer[0].7; END_IF
Попробовал еще так:
и махнул MB_RD_INP_REGS на MB_RD_HOLD_REGS, теперь читает, но сильно эпизодически. Диод rs моргает как-то "порциями", очень редко по сравнению и МУ110-16Р в той же сети (стоят парой, для теста 16Р повторяет выходами входы 16ДН).Код:inp_word:=BYTE_TO_WORD(rd_buffer[1]) OR SHL(BYTE_TO_WORD(rd_buffer[0]),8); in1:=(inp_word AND 1)=1; in2:=(inp_word AND 2)=2; in3:=(inp_word AND 4)=4; ...


Ответить с цитированием