|
Порядок передачи бинарного числа по USART, 0x1234 --> (0x12 0x34) или (0x34 0x12 ) |
|
|
|
 |
Ответов
|
Jul 29 2016, 10:49
|
Профессионал
    
Группа: Свой
Сообщений: 1 123
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848

|
Цитата(gerber @ Jul 29 2016, 11:53)  Разницы никакой нет, главное, чтобы принимающая сторона таким же образом собрать правильное 32-битное число. То есть всё будет определяться протоколом, который вы придумаете. А вот над чем действительно надо думать - что будет с потоком байт, если какой-то из байтов будет искажен или потерян. В этом случае принимающая сторона не сможет собрать 32-битное число, а также все последующие (если не предпринять соотв. мер), и т. д. Если "все свое", то да. Главное, чтобы было однозначное преобразование при передаче в канл и при приеме. Но может есть какая-то стандартизация, например как MODBUS-RTU укладывает. (надо там посмотреть будет) Мне удобнее было бы передавать данные так, как они уложены в памяти. И принимать в том же порядке. Но если одно и тоже ПО, передача с PC, а прием на MAC - будет фонарь. С "потоком байт" проблем нет, если изначально отказаться от потока, а работать с фреймами/кадрам. Отсечка пакета производится по межпакетной паузе (во многих контроллерах сделано аппаратно) Вообще, "потоковое" программирование при передаче по каналу связи - не феншуй. Только в особых случаях имеет смысл. (тотже Ethernet и прочея работают не на байтовом потоке, а на фреймах)
|
|
|
|
|
Jul 29 2016, 15:35
|
Знающий
   
Группа: Участник
Сообщений: 750
Регистрация: 1-11-11
Пользователь №: 68 088

|
Цитата(iosifk @ Jul 29 2016, 14:00)  Вот только Винды о хитрости с паузами не знают. и при передаче из РС они могут сделать какую угодно паузу...И в каком угодно месте... При наличии нормального FIFO в контроллере UART эти "виндовые паузы" не должны вылезать наружу. Особенно, если пакеты небольшие и целиком за одну запись помещаются в FIFO.
--------------------
"... часами я мог наблюдать, как люди работают." (М. Горький)
|
|
|
|
Сообщений в этой теме
k155la3 Порядок передачи бинарного числа по USART Jul 29 2016, 08:37 iosifk Цитата(gerber @ Jul 29 2016, 11:53) Разни... Jul 29 2016, 08:58   k155la3 Цитата(iosifk @ Jul 29 2016, 14:00) Вот т... Jul 29 2016, 12:35     gerber Цитата(zltigo @ Aug 1 2016, 13:56) Да... Aug 1 2016, 11:32      zltigo QUOTE (gerber @ Aug 1 2016, 14:32) Есть с... Sep 7 2016, 07:04 andrew_b Цитата(k155la3 @ Jul 29 2016, 11:37) (?) ... Jul 29 2016, 11:13 k155la3 Я собственно, в смысле настройки драйвера.
Значени... Aug 1 2016, 14:21 aiwa Цитата(k155la3 @ Jul 29 2016, 15:35) Дума... Sep 20 2016, 13:48 smalcom ЦитатаCRC совершенно не зависит от порядка байт.
н... Sep 20 2016, 18:38 aiwa Цитата(smalcom @ Sep 20 2016, 21:38) не с... Sep 20 2016, 22:35 k155la3 Цитата(aiwa @ Sep 21 2016, 01:35) ..... ... Sep 21 2016, 07:42 zltigo QUOTE (aiwa @ Sep 21 2016, 01:35) то я бы... Sep 21 2016, 08:59  k155la3 Цитата(zltigo @ Sep 21 2016, 11:59) . . .... Sep 21 2016, 09:40 aiwa Цитата(k155la3 @ Sep 21 2016, 10:42) - дл... Sep 21 2016, 08:14 k155la3 Цитата(aiwa @ Sep 21 2016, 11:14) . . .
[... Sep 21 2016, 08:33 Kabdim >> естественному порядку
Он естественный тол... Sep 21 2016, 09:47 zltigo QUOTE (Kabdim @ Sep 21 2016, 12:47) >... Sep 21 2016, 13:15  Kabdim Цитата(zltigo @ Sep 21 2016, 16:15) Мой ю... Sep 21 2016, 14:09   k155la3 Цитата(Kabdim @ Sep 21 2016, 17:09) . . .... Sep 21 2016, 14:31   zltigo QUOTE (Kabdim @ Sep 21 2016, 17:09) Ну, и... Sep 21 2016, 15:23    Kabdim Цитата(zltigo @ Sep 21 2016, 18:23) Мнени... Sep 21 2016, 15:41     zltigo QUOTE (Kabdim @ Sep 21 2016, 18:41) Прави... Sep 21 2016, 15:59 aiwa Цитата(k155la3 @ Sep 21 2016, 11:33) Тут ... Sep 21 2016, 12:03 k155la3 Цитата(aiwa @ Sep 21 2016, 15:03) . . . .... Sep 21 2016, 12:12 Kabdim Очень жаль что аргументов только два и они открове... Sep 22 2016, 08:07
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|