Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Производственное оборудование Медицинская техника, а также другое промышленное оборудования. Обсуждение и ремонт.

Ответ
Опции темы
Старый 06.06.2021, 17:52   #21
vladh
Почётный гражданин KAZUS.RU
 
Регистрация: 03.12.2004
Сообщений: 1,306
Сказал спасибо: 337
Сказали Спасибо 76 раз(а) в 33 сообщении(ях)
vladh на пути к лучшему
По умолчанию Re: Какая CRC правильная

Могу еще выложить рабочую модель в Протеусе. Там один контроллер передает периодически обсуждаемый код, а другой принимает и выводит эти данные на экра ЖКИ. Здесь все нормально.
Вложения:
Тип файла: rar RX_TX.rar (69.4 Кб, 0 просмотров)
Реклама:
vladh вне форума   Ответить с цитированием
Старый 06.06.2021, 19:07   #22
DmitriyVDN
Гражданин KAZUS.RU
 
Регистрация: 10.06.2010
Сообщений: 598
Сказал спасибо: 222
Сказали Спасибо 234 раз(а) в 154 сообщении(ях)
DmitriyVDN на пути к лучшему
По умолчанию Re: Какая CRC правильная

Сообщение от vladh Посмотреть сообщение
01,03,01,01,00,03,55,F7 ????
Нет, так тоже не получилось
Сообщение от vladh Посмотреть сообщение
Да вот пожалуйста. Если вы в этом языке хорошо разбираетесь.
не знаю что у вас не получается, вот выдрал из кода функцию подсчета CRC
вместе с массивом отправляемым по модбасу
Миниатюры:
Нажмите на изображение для увеличения
Название: CRC16.jpg
Просмотров: 0
Размер:	130.2 Кб
ID:	163341  
DmitriyVDN вне форума   Ответить с цитированием
Старый 06.06.2021, 19:30   #23
vladh
Почётный гражданин KAZUS.RU
 
Регистрация: 03.12.2004
Сообщений: 1,306
Сказал спасибо: 337
Сказали Спасибо 76 раз(а) в 33 сообщении(ях)
vladh на пути к лучшему
По умолчанию Re: Какая CRC правильная

Сообщение от DmitriyVDN Посмотреть сообщение
не знаю что у вас не получается, вот выдрал из кода функцию подсчета CRC
вместе с массивом отправляемым по модбасу
Я имел в виду, что CRC подсчитана верно, только не всегда понятно какой байт переедается первым старший или младший. Так во я пробовал пересылать и так и так, ПЧ не отвечает! Реально я контролирую ответные посылки на выводе 1 микросхемы U3. Роль ПЧ в модели играет U1. На основании модели я вижу, что данные пересылаются верно.
Миниатюры:
Нажмите на изображение для увеличения
Название: RX_TX.png
Просмотров: 0
Размер:	55.6 Кб
ID:	163343  

Последний раз редактировалось vladh; 06.06.2021 в 19:39.
vladh вне форума   Ответить с цитированием
Старый 06.06.2021, 19:55   #24
DmitriyVDN
Гражданин KAZUS.RU
 
Регистрация: 10.06.2010
Сообщений: 598
Сказал спасибо: 222
Сказали Спасибо 234 раз(а) в 154 сообщении(ях)
DmitriyVDN на пути к лучшему
По умолчанию Re: Какая CRC правильная

Сообщение от vladh Посмотреть сообщение
На основании модели я вижу, что данные пересылаются верно.
В где верно? если CRC для вашей посылки должен быть F755 а у вас на сриншоте F555
DmitriyVDN вне форума   Ответить с цитированием
Старый 06.06.2021, 20:07   #25
vladh
Почётный гражданин KAZUS.RU
 
Регистрация: 03.12.2004
Сообщений: 1,306
Сказал спасибо: 337
Сказали Спасибо 76 раз(а) в 33 сообщении(ях)
vladh на пути к лучшему
По умолчанию Re: Какая CRC правильная

Сообщение от DmitriyVDN Посмотреть сообщение
В где верно? если CRC для вашей посылки должен быть F755 а у вас на сриншоте F555
Здесь я просто в коде Для U1 сделал раньше выводить младший байт, а затем старший. Простите я не заметил, что вводится F5, а надо F7. Сейчас поправлю
Миниатюры:
Нажмите на изображение для увеличения
Название: RX_TX_1.png
Просмотров: 0
Размер:	51.4 Кб
ID:	163345  

Последний раз редактировалось vladh; 06.06.2021 в 20:15.
vladh вне форума   Ответить с цитированием
Старый 07.06.2021, 08:59   #26
vladh
Почётный гражданин KAZUS.RU
 
Регистрация: 03.12.2004
Сообщений: 1,306
Сказал спасибо: 337
Сказали Спасибо 76 раз(а) в 33 сообщении(ях)
vladh на пути к лучшему
По умолчанию Re: Какая CRC правильная

Сегодня посмотрел на свою плату и обратил внимание, что на ней не стоят резисторы, которые рекомендуют для этого интерфейса. Т.е. нет подтягивающих резисторов к цепи питания и цепи земли и нет терминаторного резистора, хотя на плате для них место предусмотрено. Но с другой стороны смущает то, что с кодом написанном на СИ все работает. Правда, надо сказать, что в моем случае линия связи короткая всего 20 см. Да, и еще меня смущает то, что нет связи программы Modbus Poll С ЧП. МОХА была до этого исправна.
vladh вне форума   Ответить с цитированием
Старый 07.06.2021, 14:42   #27
tsb
Прописка
 
Аватар для tsb
 
Регистрация: 25.11.2006
Адрес: Харьков
Сообщений: 295
Сказал спасибо: 25
Сказали Спасибо 71 раз(а) в 60 сообщении(ях)
tsb на пути к лучшему
По умолчанию Re: Какая CRC правильная

Сообщение от vladh Посмотреть сообщение
Простите я не заметил, что вводится F5, а надо F7. Сейчас поправлю
А что ж это за формат индикации посылки на LCD такой "смешанный": "тело посылки" в десятичном коде, а CRC в HEX?
tsb вне форума   Ответить с цитированием
Сказали "Спасибо" tsb
DmitriyVDN (07.06.2021)
Старый 07.06.2021, 16:53   #28
tsb
Прописка
 
Аватар для tsb
 
Регистрация: 25.11.2006
Адрес: Харьков
Сообщений: 295
Сказал спасибо: 25
Сказали Спасибо 71 раз(а) в 60 сообщении(ях)
tsb на пути к лучшему
По умолчанию Re: Какая CRC правильная

Все таки, пока вы не пошлете правильный пакет запроса, включая CRC, частотник вам не ответит. Тут уже писали, что в конце данной посылки должно быть 55 F7 (в HEX). Кроме того, у вас после передачи посылки вставлена задержка перед переключением на прием:
Код:
CRC.HighByte = 0xF5
CRC.LowByte =  0x55
HRSOut Ab, Kod_func, Registr.HighByte, Registr.LowByte, Kol_reg.HighByte, Kol_reg.LowByte 
HRSOut CRC.HighByte, CRC.LowByte 
DelayMS 12
PORTC.5 = 0       ' Разрешение на прием данных
12 мс - это слишком много. Частотник, теоретически, может начать передавать ответ через 4 мс после получения запроса. Длина ответа на данный запрос - 11 байт, что на скорости 9600 займет примерно 11 мс. Поэтому задержка переключения на прием в 12 мс запросто может "обрезать" начало ответа от частотника. Я думаю, в этом месте задержка вообще не нужна (ну, в крайнем случае, не более 1 мс).
Сообщение от vladh Посмотреть сообщение
Но с другой стороны смущает то, что с кодом написанном на СИ все работает.
Так почему бы не использовать тот, работающий код?
tsb вне форума   Ответить с цитированием
Старый 07.06.2021, 17:34   #29
DmitriyVDN
Гражданин KAZUS.RU
 
Регистрация: 10.06.2010
Сообщений: 598
Сказал спасибо: 222
Сказали Спасибо 234 раз(а) в 154 сообщении(ях)
DmitriyVDN на пути к лучшему
По умолчанию Re: Какая CRC правильная

Сообщение от tsb Посмотреть сообщение
Частотник, теоретически, может начать передавать ответ через 4 мс после получения запроса. Я думаю, в этом месте задержка вообще не нужна (ну, в крайнем случае, не более 1 мс).
а практически мастер должен сразу переключится на прием и слушать в линии "тишину" в течении 4мс и в случаи ее нарушения поднять флаг колизии на линии, дождаться "тишины" и по флагу повторить запрос.
DmitriyVDN вне форума   Ответить с цитированием
Старый 07.06.2021, 23:57   #30
jump
Почётный гражданин KAZUS.RU
 
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 8,016
Сказал спасибо: 0
Сказали Спасибо 4,954 раз(а) в 2,378 сообщении(ях)
jump на пути к лучшему
По умолчанию Re: Какая CRC правильная

насчет коллизий, таймаутов и т.д. - смотрим руководство по модбас и на ППЧ - часто оговаривается минимальный таймаут между запросами, он намного больше, чем стандартный на 3,5 символа. кстати. однажды налетел на риф - вместо заводской уставки поставил минимальную по ДШ ППЧ и... инвертор замолк... совсем. только через пару часов техподдержка прояснила ситуацию после отсылки ей файла конфигурации
еще раз: в случае с ТС - оптимальным было б прослушать шину Uport 1150 и терминалом от чужой прошивки
jump вне форума   Ответить с цитированием
Ответ

Закладки


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Простой копировщик домофонных ключей RECTO Микроконтроллеры, АЦП, память и т.д 7973 04.09.2016 02:46
Книги dosikus Делимся опытом 11242 29.12.2015 23:45
SPI с аппаратным CRC ilya_sh STM8 6 11.06.2015 13:06
Функция для расчета CRC maxNTF Микроконтроллеры, АЦП, память и т.д 3 30.12.2009 10:16
DS1990 и crc sergio-nsk Микроконтроллеры, АЦП, память и т.д 13 12.02.2009 11:09


Часовой пояс GMT +4, время: 06:22.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot