Информация
- В рейтинге
- 151-й
- Откуда
- Москва, Москва и Московская обл., Россия
- Зарегистрирован
- Активность
Специализация
Инженер встраиваемых систем, DevOps-инженер
Старший
Git
Bash
CI/CD
C
Встраиваемая система
Программирование микроконтроллеров
Разработка программного обеспечения
Алгоритмы и структуры данных
Системное программирование
Разработка драйверов
Сколько бит в DTC (Diagnostic Trouble Code) коде UDS протокола?
Наличие NVRAM - это требование протокола UDS.
Да. Так и сделал.
Пуск LittleFS (NVRAM с запретом до-записи flash)
https://habr.com/ru/articles/925372/
Наличие NVRAM - это требование протокола UDS.
Наличие встроенных модульных тестов - это требование автомобильного протокола UDS. См. сервис DTC.
как в CAN
До какой температуры нагревался участок, который подсвечивали эти 500 лучей?
Пообщался с нейросетью. Вот что в сухом остатке.
Более редкий бит-стаффинг, как в USB увеличивает пропускную способность.
Более частый бит-стаффинг, как в CAN увеличивает надежность.
бесево обскурантизма
Вот еще случай, когда мне в программировании МК была нужна математика.
Пришлось вычислять интеграл в работе
https://habr.com/ru/articles/821951/
PID регулятора для ЦАПика.
Ок, а теперь вызовите запрос на вольфрам математику из си функции в ините прошивки.
Каждый программный компонент в инициализации должен пересчитывать свои предделители в зависимости от того какая в данный момент оказалась частота ядра.
Прохардкоженные предделители (например в CAN ) это плохой дизайн.
В сигнале GPS есть bit staffing ?
Следящий PLL нужен в GNSS приемниках. Так как там из-за эффекта Доплера несущая частота уползает.
А USB почему частота тактирования не стабильная?
На STM32 (как и на любом ARM Cortex-M MCU) CAN-трансивер тоже тактируется от PLL, а PLL тактируется тоже кварцевым резонатором.
При этом битовую скорость CAN, при желании, можно менять на лету. Посмотрите на PCAN-Pro-X
Забавно вот что.
В CAN бит-стаффинг делают после пяти бит.
В USB Low Speed (USB 1.0 ) бит-стаффинг делают после шести бит.
5 != 6
При этом, и там и там скорость около 1 MBit/s.
Почему в CAN и USB разные настройки бит-стаффинга?
Существует ли какая-нибудь готовая клиентская Windows утилита (c GUI или консольный вариант), которая опрашивает ECU по CAN через UDS протокол?
Утилита UDS-client, которая работает на прикладном уровне модели OSI и умеет посылать и синтаксически разбирать (парсить) ответные UDS пакеты.
Чтобы, условно, прочитать стандартные в UDS DID параметры.
Такие как VIN номер, серийный номер ECU, дату производства ECU, дату программирования ECU, название производителя ECU и прочее.
Существуют ли в продаже отладочные платы для изучения GNSS RTK?
По-хорошему надо электронную плату (PCB) с микроконтроллером (желательно STM32), GNSS Zed-F9P и каким-нибудь надежным радио трансивером способным передавать на желаемое расстояние со скоростью 1…2 kByte/с (например SX1262).
Почему спека UDS оперирует какими-то волшебными 8ми байтовыми адресами, если в ID CAN пакета всего максимум 3,625 байт (29 бит)?
Откуда UDS серверу (ECU) брать оставшиеся 35 бит адреса (8*8 - 29 = 35)?
Ради Бога. Вот исходные коды с реализацией CLI:
Ядро CLI
https://github.com/aabzel/trunk/tree/main/source/connectivity/protocols/cli_drv
Однострочный текстовый редактор
https://github.com/aabzel/trunk/tree/main/source/connectivity/protocols/string_reader
логирование
https://github.com/aabzel/trunk/tree/main/source/connectivity/log
CLI нужна реализация протокола CSV.
https://github.com/aabzel/trunk/tree/main/source/connectivity/protocols/csv
описание как работает код разбора CSV строчек.
https://habr.com/ru/articles/765066/
Распространение приветствуется!