1 (07-03-2023 00:28:55 отредактировано Trek)

Тема: как откинуть лишний байт?

При работе с CAN-шиной  используется 2-х байтная система, но мне второй байт не нужен, как его красиво откинуть?
На вскидку конечно приходит такая конструкция на картинке ниже, но может проще можно?

Вложений в сообщении

2-1-2.png, 22.05 кб, 667 x 415
2-1-2.png 22.05 кб, скачивался 71 раз, последний раз 2023-03-07 

2

Re: как откинуть лишний байт?

Вот так значительно красивее будет.

Вложений в сообщении

Снимовывк.JPG, 14.51 кб, 340 x 71
Снимовывк.JPG 14.51 кб, скачивался 71 раз, последний раз 2023-03-07 

3 (07-03-2023 21:22:20 отредактировано Trek)

Re: как откинуть лишний байт?

Здравствуйте.Правильно я понял вашу мысль ( вы предлагаете младший байт побитово умножить с числом 255), но разве 1 на 1 не даст в итоге 1, а не требуемый 0? можно конечно воспользоваться сдвигом влево вправо чтоб гарантировано нули получить.... в нужном байте

4

Re: как откинуть лишний байт?

Пример объединения и разделения старшего и младшего байтов:

Вложений в сообщении

compose.png, 11.57 кб, 411 x 205
compose.png 11.57 кб, скачивался 20 раз, последний раз 2024-04-19 

hi_lo.png, 20.6 кб, 699 x 292
hi_lo.png 20.6 кб, скачивался 69 раз, последний раз 2023-03-07 

5 (07-03-2023 23:14:30 отредактировано Trek)

Re: как откинуть лишний байт?

так я и пытаюсь понять, но видимо чего то не догоняю, так как картинка ниже четко говорит что результат будет не всегда 0 (FF=255=11111111)


PS все вьехал, мы же первый байт умножаем побитово, а там 00, поэтому там все в 0, всем спасибо

Вложений в сообщении

and_1.jpg, 16.69 кб, 246 x 350
and_1.jpg 16.69 кб, скачивался 71 раз, последний раз 2023-03-07