Сколько нужно таймеров и их каналов (Timers and channels)

Разработка впрыска топлива на базе SECU-3. Fuel injection related discussion.

Moderator: STC

User avatar
russian
LQFP112 - Up with the play
Posts: 154
Joined: Fri Feb 01, 2013 4:18 pm
Location: Jersey City, USA

Re: Сколько нужно таймеров и их каналов (Timers and channels

Post by russian »

Seaman, вы как-то проникли ко мне в голову и украли мои мысли?! КАК? :)

Именно так я и сделал в своём блоке управления: ChibiOS, 1 поток на форсунку, SysTick = 100KHz. И оно уже ездит.
User avatar
Seaman
TO92 - Vaguely active
Posts: 2
Joined: Mon Dec 16, 2013 4:32 pm
Location: Sevastopol, Ukraine
Contact:

Re: Сколько нужно таймеров и их каналов (Timers and channels

Post by Seaman »

russian wrote:Seaman, вы как-то проникли ко мне в голову и украли мои мысли?! КАК? :)

Именно так я и сделал в своём блоке управления: ChibiOS, 1 поток на форсунку, SysTick = 100KHz. И оно уже ездит.
Да просто решение уж больно заманчивое :) Странно, что народ, выбирая STM32, гонится за количеством аппаратных таймеров, ШИМов и прочего, забывая, какие широкие возможности даёт само по себе использование этих контроллеров. Если в старых авто-контроллерах было много аппаратных многоканальных таймеров, аналоговых входов, то было низким быстродействие ядра и решить большую часть задач ЭБУ можно было только засчёт аппаратной начинки. Есть суперцикл, обрабатывающий кольцевой буфер из событий, а все основные интервалы и задержки формировались таймерами, выставлявшими флаги событий для суперцикла (это упрощённо, разумеется). Просто по-другому было нельзя, ведь ядро работало крайне неспешно. А сейчас быстродействие контроллеров стало настолько космическим, что можно запросто запускать на камне операционную систему реального времени, которая сможет рулить всеми форсунками (в том числе формируя на любом I/O пине ШИМ-сигналы с частотой в несколько килогерц), катушками зажигания, реле, другими исполнительными устройствами и механизмами, опрашивать прорву датчиков, мгновенно производить вычисления с плавающей запятой (прощайте бОльшая часть таблиц и здравствуйте онлайн-вычисления), тут же вести обмен данными по диагностическому протоколу, корректируя параметры налету, вести логи на внешние носители, выводить необходимую информацию на сенсорный экран, а для особо извращённых - ещё и декодировать MP3-поток :))) Средства-то давно уже изменились, а методы, почему-то, остаются прежними... Вот и сидим - считаем количество таймеров ;) ИМХО, конечно же. Никого не хотел обидеть))
Post Reply