|
передача данных по одному байту по блютус, нужен ли протокол? |
|
|
|
 |
Ответов
(1 - 10)
|
Feb 25 2014, 13:40
|

Местный
  
Группа: Свой
Сообщений: 202
Регистрация: 30-10-10
Пользователь №: 60 535

|
Цитата(uriy @ Feb 25 2014, 13:05)  В блютуз в SPP протоколе данные не будут повреждены. Они либо придут либо нет. Работая с модулями HC-05, заметил такую вещь: при разрыве соединения с платкой, данные на UART в блютуз модуль HC все равно слались в цикле. потом при восстановлении подключения эти данные все равно доходили в правильном порядке! Т.е. достоверность приема так же есть в протоколе BlueTooth? или так просто реализован стэк в этом модуле?
|
|
|
|
|
Feb 25 2014, 18:04
|
Профессионал
    
Группа: Свой
Сообщений: 1 351
Регистрация: 21-05-10
Пользователь №: 57 439

|
Цитата(adnega @ Feb 24 2014, 23:50)  Вот хорошие 14 команд с контролем целостности: 0x11, 0x22, 0x33... 0xEE. Надо брать команды с максимальным расстоянием Хемминга. http://ru.wikipedia.org/wiki/%D0%A0%D0%B0%...%BD%D0%B3%D0%B0Цитата(MK2 @ Feb 25 2014, 17:40)  Работая с модулями HC-05, заметил такую вещь: при разрыве соединения с платкой, данные на UART в блютуз модуль HC все равно слались в цикле. потом при восстановлении подключения эти данные все равно доходили в правильном порядке! Т.е. достоверность приема так же есть в протоколе BlueTooth? или так просто реализован стэк в этом модуле? Блутуз имеет два вида соединения один надежный SCO (connection oriented) и используется для передачи данных, а другой ACL (connection less) используется для потоковых соединений как например аудио или видео. Точно как TCP и UDP. Имея возможность программировать апликацию внутру чипа CSR вы можете выбрать любой из них для соединения.
|
|
|
|
|
Feb 26 2014, 07:28
|
Гуру
     
Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702

|
Цитата(Tarbal @ Feb 25 2014, 22:04)  Надо брать команды с максимальным расстоянием Хемминга. Согласен, это первое что мне пришло в голову когда сказали "обоснуй". Потом подумал, решил что в последовательном канале нужно скорее защищать от сдвига байна на один бит из-за рассинхронизации. В итоге решил, что в BT все давным-давно сделано и лучше если команды будут наглядными для пользователя: буквы 'w' - записать, 'r' - считать, 'f' - выключить, 'o' - включить и т.п. - в терминалке отлаживать проще будет. И не стал писать)
|
|
|
|
|
Feb 27 2014, 07:59
|

Гуру
     
Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515

|
При передаче одного байта через BT по SSP получить ошибку нереально. Если отойти от теории, то совсем недавно проверял конструкцию, в которой данные гонялись в обоих направлениях со скоростью UART (скорость в эфире всегда одинакова) чуть менее мегабита.
Данные либо приходят верные, либо не приходят вообще. Так как гонял по SSP кодированный звук, то контролировал еще и на слух.
Т.е. забота о целостности - это забота BT. А вот забота о самом соединении - вовремя делать реконнект, или НЕ делать реконнект, когда этого делать не надо - это забота внешняя.
И если речь идет ровно об одно байте, который не зависит от предыдущих, то надо и передавать 1 байт и не думать. Но если передавать что-то длинное, то тут чуть сложнее.
--------------------
On the road again (Canned Heat)
|
|
|
|
|
Feb 28 2014, 13:24
|
Профессионал
    
Группа: Свой
Сообщений: 1 351
Регистрация: 21-05-10
Пользователь №: 57 439

|
Цитата(adnega @ Feb 26 2014, 10:28)  Согласен, это первое что мне пришло в голову когда сказали "обоснуй". Потом подумал, решил что в последовательном канале нужно скорее защищать от сдвига байна на один бит из-за рассинхронизации. В итоге решил, что в BT все давным-давно сделано и лучше если команды будут наглядными для пользователя: буквы 'w' - записать, 'r' - считать, 'f' - выключить, 'o' - включить и т.п. - в терминалке отлаживать проще будет. И не стал писать) Если вы используете SCO, а вы его будете использовать поскольку UART профайл использует его, то вы получите все свои байты в целости и сохранности. В таком случае забейте на расстояния хемминга. Никаких ошибок связи у вас не будет.
Сообщение отредактировал Tarbal - Feb 28 2014, 13:25
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|