

геннадий75
Участник-
Posts
16 -
Joined
-
Last visited
-
Перекличка блоков по CAN
геннадий75 replied to bezobraznic's topic in Controller Area Network (CAN)
Насчёт двух моторов в одной машине тоже не видел . А два ,не зависимых друг от друга блока управления двигателя с 2000 года, притеняются в авто . Причём он может быть как master так и scave и иметь разные ID . -
Перекличка блоков по CAN
геннадий75 replied to bezobraznic's topic in Controller Area Network (CAN)
Почему , считают что в CAN, все устройства должны постоянно стучать в шину . Можно назначить одно устройство мастером , и оно будет периодически отправлять сообщения например с ID 0x01 , и первый байт данных 01 затем 02 потом 03 итак далее в зависимости от количества узлов . Остальные узлы настроены на приём IDx01 , и соответственно принимают все запросы мастера . После приёма сравнивают первый байт данных со своим уникальным номером , и если он совпадает ,один узел отправляет одно сообщение мастеру с другим ID например 02 и любых 8 байт данных о своём состояний . Мастер принимает эти данные , и решает продолжать обмен с этим узлом или перейти к следующему . -
USB CDC: как сэкономить на конечных точках?
геннадий75 replied to Arlleex's topic in В помощь начинающему
В CDC нужны минимум 4 точки .Две нулевых по ним идёт служебная информация . И две рабочие, одна для приёма и одна для передачи данных. -
пару вопросов про CAN
геннадий75 replied to go2winner's topic in Controller Area Network (CAN)
Когда мониторишь CAN видно битые сообщения , без подтверждения , обрывающиеся на пол пути . Но при этом никогда нет шести нулей подряд . Если какой то узел решил что его обидели , или нет подтверждения его посылки , то он может выставить шесть нулей подряд остановив шину и попытаться опять отправить запрос . Но это критическая ситуация приводящая через несколько таких попыток к остановки обмена другими узлами . -
пару вопросов про CAN
геннадий75 replied to go2winner's topic in Controller Area Network (CAN)
Семь и более единиц подряд окончание пакета . Нулевой бит начало пакета ,дальше не забываем после 5 нулей или единиц про врезки потом подсчёт CRC и бит подтверждения приёма другими узлами. -
Проверка CRC
геннадий75 replied to =AK='s topic in В помощь начинающему
Как то у вас всё просто . При добавлений двух байт в подсчёт CRC добавляется не одна операция XOR с полиномом а 16 . И нули никогда не получишь . Проверяется легко в онлайн калькуляторах . https://crccalc.com -
Проверка CRC
геннадий75 replied to =AK='s topic in В помощь начинающему
Последний два байта также участвуют в подсчёте CRC , соответственно 0х0000 не получишь. -
Протокол CAN, его варианты и преобразование
геннадий75 replied to DIMZAY's topic in Controller Area Network (CAN)
1E1 и есть 11 битный идентификатор . 0х не важно. -
USB custom hid, длина пакета
геннадий75 replied to compote's topic in ARM, 32bit
Если отправляешь 65 байт должно дойти именно 65 , но в два захода сначала первый пакет 64 байта, затем второй 1 байт . Нулевой или не полный пакет (менее 64 байт ) говорит об окончаний запроса . Если сделаешь размер точки 8 байт , то уйдёт 8 пакетов по 8 байт и 9 пакет 1 байт. -
Анализатор протокола CAN
геннадий75 replied to Чижик's topic in Controller Area Network (CAN)
Если интересна работа CAN на физическом уровне , видеть как идёт подсчёт CRC , бит подтверждения , битые сообщения . Собираешь адаптер на PIC18f2550 или PIC24FJ64GB002 . CAN.rar -
Error frames на шине
геннадий75 replied to Polaris's topic in Controller Area Network (CAN)
Многие CAN адаптеры не увидев сигнал подтверждения ACK выставляют на шину шесть нулей , типа перезапуск шины . И на многих машинах это приводит к отключению обмена. -
Анализатор ошибок в CAN сети.
геннадий75 replied to galjoen's topic in Controller Area Network (CAN)
Программа считывает весь идущий поток данных, и уже его пытается собрать в CAN сообщения. Даже одиночный ноль на шине я увижу, также видно битые сообщения , видно правильно посчитан CRC если неверно программа покажет правильный, видно подтвердили другие блоки сообщение или нет ,сколько единиц между пакетами, также если приходят одинаковые CAN сообщения в правом окне программы не появляются . В правом окне видны только новые CAN сообщения, именно это помогало выдернуть из потока нужное CAN сообщение. -
Анализатор ошибок в CAN сети.
геннадий75 replied to galjoen's topic in Controller Area Network (CAN)
Также нужно было увидеть весь поток CAN сообщений (в том числе битые сообщения,шесть нулей на шине) написал программу, которая сохраняет весь поток на диске и потом его можно проанализировать. CAN.rar -
Чем принять через COM скорость 1Мбит?
геннадий75 replied to Alexey_N's topic in RS232/LPT/USB/PCMCIA/FireWire
Перегонял данные в ПК на скоростях 1 мбод ,2 мбод ,4 мбод с помощью переходника USB-COM собраном на PL2303HX.Для этого в своё время, писалась терминальная программа, для обработки больших объёмов данных. -
адресация USB контроллера AT90USB162
геннадий75 replied to vgo1's topic in В помощь начинающему
В дескрипторе задан размер нулевой точки 64 байта.Поэтому на запрос setup GET_DESCRIPTOR( 80 06 00 01 00 00 12 00 )data0 отправляй сразу 18 байт дескриптора data1 и жди следующий запрос.