Ну так ДМА и вытягивает, самый нормальный и удобный способ. Настраиваешь АЦП (не знаю я что там конкретно в F4), АЦП настраиваешь так чтобы давал он после преобразования запрос ДМА, настраиваешь ДМА на прием N полуслов (N количество каналов АЦП), стартуешь первое преобразование как тебе надо руками или таймером, в конце получаешь прерывание от ДМА что он принял все данные. и все. Все описано в RM, гугопереводчик в помощь.