реклама на сайте
подробности

 
 
> Какова максимальная пауза между 2-мя пакетами?
Yaumen
сообщение Jul 7 2010, 14:00
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 187
Регистрация: 22-06-05
Из: Минск, Беларусь
Пользователь №: 6 213



При приеме данных длиной более 8-ми байт, передающая сторона разбивает их на несколько пакетов, в каждом из которых передается по 8-м байт. Передача ведется последовательно пакет за пакетом. Однако каждый CAN пакет имеет целый набор дополнительных полей, который практически удваивает объем передаваемой информации:
1) 8 байт данных + 4 байта ID + 1 байт DLC + 2 байта CRC + 1 байт EOF = 16 байт
2) Каждый байт передается с помощью 10-ти бит (8 бит данных + Старт бит + Стоп бит)
3) Итого передача одного пакета занимает 16*10 = 160 бит.
4) Для скорости 1 Мбит это означает 160 мкс на одну посылку.

Можно ли утверждать, что полученное время и есть минимальное время следования CAN пакетов при свободной шине или есть есть еще накладные расходы, которые я забыл учесть?
Это время планирую использовать в приемнике как таймаут ожидания следующего пакета.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
cant
сообщение Jul 8 2010, 07:17
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 216
Регистрация: 28-10-08
Из: Брест
Пользователь №: 41 243



если есть возможность, лучше не таймаут использовать, а фильтры. с учетом протокола вы по таймауту не будете попадать в 70% передач. а так в адрес забили свой протокол (типа это первый, это второй а это последний пакет) и ответ на все с программной проверкой адреса.

ошибка не ответ а прием всех пакетов.

Сообщение отредактировал cant - Jul 8 2010, 07:20
Go to the top of the page
 
+Quote Post
Yaumen
сообщение Jul 8 2010, 09:43
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 187
Регистрация: 22-06-05
Из: Минск, Беларусь
Пользователь №: 6 213



Цитата(cant @ Jul 8 2010, 10:17) *
если есть возможность, лучше не таймаут использовать, а фильтры. с учетом протокола вы по таймауту не будете попадать в 70% передач. а так в адрес забили свой протокол (типа это первый, это второй а это последний пакет) и ответ на все с программной проверкой адреса.

ошибка не ответ а прием всех пакетов.


Именно так и делал, номер пакета забит в ID, но устройств много и приходится использовать один большой буфер для сбора пакета, чтобы не лежал хлам из не до конца принятых пакетов использую таймаут, по истечении указанного времени, не принятое до конца сообщение выбрасывается из буфера.

Но вопрос был в другом. Меня смущает большие цифры получившегося рабочего таймаута. Одно успокаивает, что передатчик писал не я и вообще не наша контора, поэтому возможно там выполняется какая-то логика перед отправкой очередного CAN пакета, отсюда и задержки. Если в своих расчетах я учел все аспекты, то пора браться за осцилограф smile.gif
Go to the top of the page
 
+Quote Post
cant
сообщение Jul 15 2010, 07:05
Сообщение #4


Местный
***

Группа: Участник
Сообщений: 216
Регистрация: 28-10-08
Из: Брест
Пользователь №: 41 243



Цитата(Yaumen @ Jul 8 2010, 13:43) *
Именно так и делал, номер пакета забит в ID, но устройств много и приходится использовать один большой буфер для сбора пакета, чтобы не лежал хлам из не до конца принятых пакетов использую таймаут, по истечении указанного времени, не принятое до конца сообщение выбрасывается из буфера.

Но вопрос был в другом. Меня смущает большие цифры получившегося рабочего таймаута. Одно успокаивает, что передатчик писал не я и вообще не наша контора, поэтому возможно там выполняется какая-то логика перед отправкой очередного CAN пакета, отсюда и задержки. Если в своих расчетах я учел все аспекты, то пора браться за осцилограф smile.gif


максимальный таймаут не ограничен. раз не Вы писали передатчик, то темболее нельзя читать по таймауту.... может там отскок на прерывание какое и таймаут у них гуляет от времени
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Yaumen   Какова максимальная пауза между 2-мя пакетами?   Jul 7 2010, 14:00
- - Andrew2000   Цитата(Yaumen @ Jul 7 2010, 18:00) 2) Каж...   Jul 7 2010, 17:21
|- - Yaumen   Цитата(Andrew2000 @ Jul 7 2010, 20:21) + ...   Jul 7 2010, 17:39
- - редактор   Если в сети несколько устройств, то время доставки...   Jul 8 2010, 16:24
|- - Yaumen   Цитата(редактор @ Jul 8 2010, 19:24) Если...   Jul 8 2010, 20:15
|- - Andrew2000   тогда только осциллограф - передатчик-то не свой   Jul 9 2010, 09:47
- - bookevg   Цитата(Yaumen @ Jul 7 2010, 18:00) При пр...   Jul 9 2010, 11:32
|- - Yaumen   Цитата(bookevg @ Jul 9 2010, 14:32) А зач...   Jul 9 2010, 14:41
|- - Andrew2000   Цитата(bookevg @ Jul 9 2010, 15:32) А зач...   Jul 9 2010, 21:20
|- - bookevg   Цитата(Andrew2000 @ Jul 10 2010, 01:20) а...   Jul 12 2010, 04:35
|- - Andrew2000   Цитата(bookevg @ Jul 12 2010, 16:35) Как ...   Jul 13 2010, 08:38
|- - bookevg   Цитата(Andrew2000 @ Jul 13 2010, 20:38) Я...   Jul 13 2010, 22:11
|- - Andrew2000   Цитата(bookevg @ Jul 14 2010, 02:11) пре...   Jul 14 2010, 19:00
|- - bookevg   Цитата(Andrew2000 @ Jul 14 2010, 23:00) п...   Jul 15 2010, 05:54
- - galjoen   Цитата(Yaumen @ Jul 7 2010, 18:00) 2) Каж...   Jul 13 2010, 02:47


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 18:32
Рейтинг@Mail.ru


Страница сгенерированна за 0.0141 секунд с 7
ELECTRONIX ©2004-2016