Карма: 8
Рейтинг сообщений: 54
Зарегистрирован: Вс мар 03, 2019 08:18:34 Сообщений: 350 Откуда: Волгоград
Рейтинг сообщения:1 Медали: 1
Купил я себе новую гранту и решил как обычно поковыряться в прошивке и активировать круиз контроль! Но вот не задача для его активации требуется USB-CAN адаптер, адаптер по k-line у меня есть разные с гальванической развязкой и без таковой самодельные и заводские. Но вот адаптера по кан у меня не было, и дел я с ним раньше не имел, ну было решено изучить этот вопрос как говорится по полной, собрать самому данный адаптер. Этот адаптер необходим также для диагностики автомобиля и прослушивания кан шины при помощи всем известной программы CANHacker. CANHacker для своего обмены с адаптером и шиной использует протокол «lawicel», при помощи данного протокола программа посылает служебные команды адаптеру, который в свою очередь своеобразным образом должен на них ответить, иначе определения адаптера в программе не произойдет. Также программа посылает различные команды адаптеру такие как скорость обмена разрядность и так далее, по этому протоколу работают не только эта программа, но и другие в том числе платные. В своей прошивке необходимо было учесть все для работы с программы. Изучив не мало статей, испробовав немало кода пришлось создавать свой использую какие то наработки. Начала я использовал программный комплекс Keil uVision5, ну в принципе как всегда, но обнаружил небольшие тормоза при компиляции проектов. С чем связана такая особенность Keil-ла я не разобрался пока. Но скаченный бесплатный программный комплекс от производителя процессоров компании ST STM32CubeIDE 1.6.0 решил все мои проблемы. Вот и так бывает когда бесплатный софт может все решить, в общем он компилировал проект за секунды в отличии от Keil uVision5, который это делал около 3-4мин. Теперь о аппаратной части. Изначально было запланировано использовать микроконтроллер STM32F105 ну или вообще f0 серию, но в ходе освоения выяснилось, что у данных микроконтроллеров шины кан и юсб используют одни область памяти и поэтому не могут одновременно работать. Ну как, достаточно быстро не могут, но можно было применив кое какие так называемые программные «костыли» заставить их работать, но это все же «костыли». Всем вам известно о нынешних проблемах с микроконтроллерами вот и тут пришлось выбирать контроллер исходя из имеющихся в наличии по более-менее адекватной цене. Был приобретён не дохлый такой себе «камень» STM32F373CCT6, ранее c F3 серией я дел не имел, тем более интересен был опыт. По ходу освоения я понял, что для отладки донной вещицы одним девайсом я не обойдусь, было необходимо либо держать ЭБУ машины дома, чего мне никто не позволил бы (на машине ездит жена) , либо иметь еще одно устройство такое-же. Я решил выбрать последнее и приобрел еще один микроконтроллер STM32F105VCT6, ну что нашёл. В качестве приемо-передатчика кан была выбрана микросхема с гальванической развязкой iso1050, ну просто была когда-то куплена у братьев наших по рублю за пучек. Были разведены и изготовлены 2 односторонние платы методом лут под один и под второй микроконтроллер, ну прототипы. Позже т.к. я ранее никогда не заказывал платы в поднебесной решил их заказать только сделал двусторонние и меньшего размера. Да… классные конечно но их 5 куда 4 девать…. Потом для тестирования подключил обе платы к компу и запустил 2 программы и стал предавать сообщение с одной на другую. В общем все заработало прошивки под оба микроконтроллера прилагаю: плата + схема в диптрейсе Прошивка stm32f373 Прошивка stm32f105
Последний раз редактировалось do-vitas Пн июл 05, 2021 13:29:21, всего редактировалось 1 раз.
На STM32F0x2 отлично можно сделать CAN<>USB, УМВР.
_________________ Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда. Я на гитхабе, в ЖЖ
На STM32F0x2 отлично можно сделать CAN<>USB, УМВР.
вы наверно про 042 возможно не знаю его я не смог достать... но прошивка одна чужая у меня есть в ней все построено через буфер а не напрямую как могут эти микроконтроллеры... опять же не проверял было бы интересно но не на чем проверить... времена сейчас сами знаете....
do-vitas, вот - на STM32F072. Год назад себестоимость составила 300 рублей…
В отличие от STM32F103 (и, возможно, 105), STM32F0x2 более совершенны и у них не только на CAN и USB разные ноги в LQFP48, но еще и буфер используется более рационально (под CAN выделен кусок буфера в конце, так что, если USB не слишком жирный, то и на CAN памяти хватает).
_________________ Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда. Я на гитхабе, в ЖЖ
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Карма: 8
Рейтинг сообщений: 54
Зарегистрирован: Вс мар 03, 2019 08:18:34 Сообщений: 350 Откуда: Волгоград
Рейтинг сообщения:0 Медали: 1
Eddy_Em, 103 и 105 имеют совершенно разные модули как can так и usb. опять же 072 попробовал бы интересно... но вот 373 меня вообще в разы больше понравился. usb без проблем все просто летало...
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Там разве не OTG? Я с OTG еще не работал: там несколько иначе все. Боюсь, минимум вечера 3-4 придется сидеть, чтобы осилить USB на F3.
В общем, мне это пока еще совсем не просто. Лежит десяток F303, думаю как-нибудь таки приступить к ним. Но там вообще непочатый край работы: и USB поднять, и с FPU разобраться... А еще там есть дополнительный кусок оперативки.
_________________ Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда. Я на гитхабе, в ЖЖ
А я вот гляжу в сторону stm32g431, камушек с can fd на перспективу так сказать. Работает как обычный can плюс fd. На некоторых авто уже имеется. В CANFD можно слать до 64 байт данных в одном пакете.
Карма: 8
Рейтинг сообщений: 54
Зарегистрирован: Вс мар 03, 2019 08:18:34 Сообщений: 350 Откуда: Волгоград
Рейтинг сообщения:0 Медали: 1
Насколько я понимаю в мк все равно что запрограммируешь то и будет хоть 64 бита хоть 29 хоть 11. Тоже со скоростью сколько задашь то и будет. Главное чтоб сам проц не тормозил как говорится и ему хватало собственных ресурсов чтоб обрабатывать без тормозов.
11/29 бит это ID, данные это данные и в простом can их может быть от 1 до 8 байт не более. А в can fd их может быть до 64 байт. Простой can модуль работать в режиме fd не может, а fd в простом режиме легко.
11/29 бит это ID, данные это данные и в простом can их может быть от 1 до 8 байт не более. А в can fd их может быть до 64 байт. Простой can модуль работать в режиме fd не может, а fd в простом режиме легко.
я лишь имел ввиду что мк все ровно какой протокол какой напишешь тот и будет! в fd у кана больше частота и только, все упрется только в приёма передатчик т.к. даже у самого захудалого 042 частота шины APB1 48MHz чего вполне перекроет 12MHz. Будет день будет пища разберемся.
При аппаратном протоколе на борту писать собственный это извращение! У fd не просто частота выше, скорость стандартная в начале и конце кадра и не может быть выше 1 Мбит/с а вот полезная нагрузка это данные частота увеличивается и может достигать 8 Мбит/с. Не думаю что этот переход частот можно реализовать программно на лету не потеряв драгоценного времени.
Карма: 8
Рейтинг сообщений: 54
Зарегистрирован: Вс мар 03, 2019 08:18:34 Сообщений: 350 Откуда: Волгоград
Рейтинг сообщения:0 Медали: 1
optima, "аппаратный протокол"-улыбнуло вам пофлудить охота ну вперед! не понимаю когда просто так "небо бьют"... я не разбирался в can fd нужда будет разберусь...
Ну зачем ты мой вопрос проигнорил, видимо даже не посмотрел видео. Ок задам по другому, у меня гранта 16 года, я хочу поставить на неё вместо штатной мультимедиа TEYES 3 но чтобы он отображал остаток топлива, обороты и тд и тп нужен CAN-USB адаптер, но платить 8200 за то что стоит намного дешевле очень не хочется, вот и спрашиваю твой адаптер сработает или нет как на том видео ссылку которого ты убил???
Сейчас этот форум просматривают: Google [Bot] и гости: 25
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения