Цитата(Rash @ Jun 6 2017, 13:54)

Добрый день.
Подскажите, возможно, ли опрашивать последовательно несколько м/с по SPI переключать при этом CS и использовать DMA и таймер(ы)? Если да, то как?
МК STM32F401, два датчика: акселерометр и гироскоп подключены параллельно с раздельным CS. Частота опроса 400 Гц. Последовательность следующая: выбор и опрос датчик1, выбор и опрос датчик2, ожидание готовности данных, и т.д. Таким образом делать N-выборок без участия CPU.
На серии Kinetis от NXP это делается элементарно в одной пересылке DMA. Там вместе с данными в буфер записывается состояние CS.
А в STM32 вижу да, дикая проблема. Даже сцепленных DMA структур не имеет.
Как выход можно было бы применить промежуточный контроллер из серии Kinetis.
Скажем серия KS22 имеет и SPI с аппаратным управлением более 16-ю CS-ами, и DMA со сцепленными блоками и еще такую фичу, как FlexIO, где можно творить какой угодно сериальный стрим.