CRC для UART и его расчет

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
vrodo
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 109
Зарегистрирован: 09.10.2003 (Чт) 18:45
Откуда: Дубна МО, Москва

CRC для UART и его расчет

Сообщение vrodo » 22.01.2004 (Чт) 12:39

Доброе время суток
Рискуя нарваться на посыл
прошу вас объяснить как считать CRC для UART
и где можно найти описание протокола UART?
Интересует ВСЕ

2 недели сидел в инете но ничего толкового для VB не нашел

Заранее Благодарю
Чтобы понять свои ошибки их достаточно написать (c)
Интернет большой, ему видней
С наилучшими Пожеланиями и Всех Благ :D

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 22.01.2004 (Чт) 12:53

UART не есть протокол. Это есть Universal Asynchronous Receiver Transmitter. Железка такая, контроллер СОМ порта по простому.

CRС считает не она, а CRC определяется именно протколом передаи данных (ZModem, YModem итп) так что по моему ты просто не там ищешь.

vrodo
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 109
Зарегистрирован: 09.10.2003 (Чт) 18:45
Откуда: Дубна МО, Москва

Сообщение vrodo » 22.01.2004 (Чт) 13:00

А как тогда понимать такую строчку
"Программный загрузчик обеспечивает UART-протокол с фиксированной скоростью обмена 9600 бод"

привожу пример строки которая отсылается через компорт
"41 30 30 30 30 30 30 DF 8A 7E" где "DF 8A" есть checksum
как ее расчитать?
Чтобы понять свои ошибки их достаточно написать (c)
Интернет большой, ему видней
С наилучшими Пожеланиями и Всех Благ :D

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 22.01.2004 (Чт) 13:23

Это откуда цитать такая? если честно, то для меня она читается как полная бессмыслица. Я, конечно, допускаю, что чтото подзабыл со времен ДОСа и ассемблера :) Но все таки...

vrodo
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 109
Зарегистрирован: 09.10.2003 (Чт) 18:45
Откуда: Дубна МО, Москва

Сообщение vrodo » 22.01.2004 (Чт) 13:40

Дык а на вопрос ответ будет или как ?
Чтобы понять свои ошибки их достаточно написать (c)
Интернет большой, ему видней
С наилучшими Пожеланиями и Всех Благ :D

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 22.01.2004 (Чт) 13:43

Я повторяю - смысл вопроса неясен и крив. Протоколов УАРТ нет. По крайней мере, мне они неизвестны (это тождественные условия на самом деле).

vrodo
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 109
Зарегистрирован: 09.10.2003 (Чт) 18:45
Откуда: Дубна МО, Москва

Сообщение vrodo » 22.01.2004 (Чт) 17:03

vrodo писал(а):привожу пример строки которая отсылается через компорт
"41 30 30 30 30 30 30 DF 8A 7E" где "DF 8A" есть CRC
как ее расчитать?

"7E" есть символ окончания строки и на работу не влияет (как ни странно)

Как расчитать этот CRC
Чтобы понять свои ошибки их достаточно написать (c)
Интернет большой, ему видней
С наилучшими Пожеланиями и Всех Благ :D

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 22.01.2004 (Чт) 17:14

Елки палки!

Лезешь в тот же тривиальный Яндекс(!) и там ищешь "алгоритм расчета CRC".



Если ты ломаешь протокол, то я скажу следующее - там вообще может быть свой алгоритм контрольной суммы, а нe CRC.

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

А 0х7E это корректнее сказать "признак конца передачи" потому что конец строки всегда был есть и будет 0х0D

vrodo
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 109
Зарегистрирован: 09.10.2003 (Чт) 18:45
Откуда: Дубна МО, Москва

Сообщение vrodo » 22.01.2004 (Чт) 19:53

Сообчение собсно в тексте выглядит так
А000000 а далее идет контрольная сумма и конец передачи
какие еще могут быть варианты по расчету?
"А" это команда, "000000" - данные
Я просто знаю что я передавал
Чтобы понять свои ошибки их достаточно написать (c)
Интернет большой, ему видней
С наилучшими Пожеланиями и Всех Благ :D


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot, Google-бот, Yandex-бот и гости: 1

    TopList