В чём разница между polling, прерыванием и DMA?
Прерывания и NVIC
Аудио-карточка · 0:45Nortren·
В чём разница между polling, прерыванием и DMA?
0:45
Это три способа взаимодействия с периферией. Polling — это постоянный опрос регистра в цикле, ожидая нужного состояния. Просто, но процессор занят бесполезной работой и не может делать ничего другого. Прерывание освобождает процессор: периферия сама сигнализирует о готовности данных, и обработчик отрабатывает только когда это нужно. DMA — это прямой доступ к памяти: специальный контроллер переносит данные между периферией и памятью без участия процессора вообще. DMA — самый эффективный способ для больших объёмов данных, например при работе с ADC или SPI на высокой скорости.