Код:SHL(BYTE_TO_WORD(otvet[3]) AND 15, 12) + SHL(BYTE_TO_WORD(otvet[2]) AND 15, 8) + SHL(BYTE_TO_WORD(otvet[1]) AND 15, 4) + SHL(BYTE_TO_WORD(otvet[0]) AND 15, 0);А там написано вроде. Читайте внимательно.Почему если датчик неподвижен по линии связи приходят разные байты я не знаю.
P.S. Можно чуть короче написать:Можно без поразрядных операций:Код:(otvet[3] AND 15) * 16#1000 + (otvet[2] AND 15) * 16#100 + (otvet[1] AND 15) * 16#10 + (otvet[0] AND 15) * 16#1;0961.pngКод:otvet[3] * 16#1000 + otvet[2] * 16#100 + otvet[1] * 16#10 + otvet[0] - 16#11110 * (otvet[0] / 16#10);




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