Seaman, вы как-то проникли ко мне в голову и украли мои мысли?! КАК?
Именно так я и сделал в своём блоке управления: ChibiOS, 1 поток на форсунку, SysTick = 100KHz. И оно уже ездит.
Сколько нужно таймеров и их каналов (Timers and channels)
Moderator: STC
- Seaman
- TO92 - Vaguely active
- Posts: 2
- Joined: Mon Dec 16, 2013 4:32 pm
- Location: Sevastopol, Ukraine
- Contact:
Re: Сколько нужно таймеров и их каналов (Timers and channels
Да просто решение уж больно заманчивое Странно, что народ, выбирая STM32, гонится за количеством аппаратных таймеров, ШИМов и прочего, забывая, какие широкие возможности даёт само по себе использование этих контроллеров. Если в старых авто-контроллерах было много аппаратных многоканальных таймеров, аналоговых входов, то было низким быстродействие ядра и решить большую часть задач ЭБУ можно было только засчёт аппаратной начинки. Есть суперцикл, обрабатывающий кольцевой буфер из событий, а все основные интервалы и задержки формировались таймерами, выставлявшими флаги событий для суперцикла (это упрощённо, разумеется). Просто по-другому было нельзя, ведь ядро работало крайне неспешно. А сейчас быстродействие контроллеров стало настолько космическим, что можно запросто запускать на камне операционную систему реального времени, которая сможет рулить всеми форсунками (в том числе формируя на любом I/O пине ШИМ-сигналы с частотой в несколько килогерц), катушками зажигания, реле, другими исполнительными устройствами и механизмами, опрашивать прорву датчиков, мгновенно производить вычисления с плавающей запятой (прощайте бОльшая часть таблиц и здравствуйте онлайн-вычисления), тут же вести обмен данными по диагностическому протоколу, корректируя параметры налету, вести логи на внешние носители, выводить необходимую информацию на сенсорный экран, а для особо извращённых - ещё и декодировать MP3-поток )) Средства-то давно уже изменились, а методы, почему-то, остаются прежними... Вот и сидим - считаем количество таймеров ИМХО, конечно же. Никого не хотел обидеть))russian wrote:Seaman, вы как-то проникли ко мне в голову и украли мои мысли?! КАК?
Именно так я и сделал в своём блоке управления: ChibiOS, 1 поток на форсунку, SysTick = 100KHz. И оно уже ездит.