eddy_em: (Костерок)
eddy_em ([personal profile] eddy_em) wrote2016-12-30 11:12 am
Entry tags:

Эмулятор джиповского датчика коленвала

Закончил железяку и оформил в коробочку из-под селедки. Вот такая штука получилась:


Светодиоды с кнопочками и выходной мосфет с подтягивающими резисторами распаял на макетках:

Желтая перемычка отключает внутреннюю подтяжку стока (я не прозванивал джиповский датчик на предмет того, где расположена подтяжка: в нем, или в ЭБУ, поэтому сделал перемычку). С обратной стороны напаяны резисторы 0603:

Схемка проста до безобразия:

Железяка в действии:

И еще фото:

Коробочка, вид сзади:

Пока отлаживал, неоднократно вмешивался в код прошивки для STM32. Скажем, выкинул затворный резистор у выходного транзистора, заменив режим работы соответствующей ноги мелкоконтроллера на push-pull. Изменил методику пересчета оборотов (чтобы как можно ближе было к целым сотням, а то изначально какой только шаг не получался) и т.п.
Функционирует железяка просто: как только включаем, генерируется сигнал, как будто бы коленвал вращается на 1000об/мин. Кнопка у зеленого светодиода уменьшает скорость на 100об/мин, около красного — на столько же увеличивает. Допустимая скорость ограничена значениями в 200 и 6000 об/мин. Если достигается минимальная скорость, загорается зеленый светодиод, максимальная — красный. Кроме того, можно мелкоконтроллер по USB подключать и рулить оттуда (заодно и смотреть текущую скорость).
Если железяка получит развитие, можно будет туда и LED-экран добавить.

[identity profile] eddy-em.livejournal.com 2016-12-30 05:38 pm (UTC)(link)
Их последняя версия прошивки st-link представляет собой дико комбинированное устройство (кажись, они полностью выбрали все доступные концевые точки МК). Помимо прошивалки и VCP там еще два каких-то непонятных устройства. Из-за этой галиматьи непонятно, как написать нормальное правило для udev, чтобы только один симлинк был на программатор.

Работает он как обычный транзит: Rx/Tx микроконтроллера подключены к его UART'у, а он уж все проксюет в USB.

[identity profile] alex-avr2.livejournal.com 2016-12-30 05:41 pm (UTC)(link)
Понял, спасибо. На дискавери помню были от программатора RX/TX разведены, но не работали. Видать допилили.

[identity profile] eddy-em.livejournal.com 2016-12-30 06:36 pm (UTC)(link)
Да мне самому в новость. Еще буквально год или два назад их st-linkv2 такое не умел. Подозреваю, что эта же фича будет и у дорогущих "коробочных".
Вообще, поражаюсь с цены этой NUCLEO: такое впечатление, что китайцам насрать и они не хотят ее копировать. Понятное дело, у них прошивка st-link довольно древняя (был инцедент, когда в какой-то партии получилось считать бинарь — с тех пор и пошли копеечные стлинки).

А вообще, если бы ST опубликовали код прошивки своего стлинка, было бы намного веселей! Потому как реверсить это по даташитам — тот еще мазохизм. Хотя, на каком-то форуме (кажись, изыдиэлектроникс) я встречал тему о реверсе и вроде как благополучном.