Кольцевой режим незаменим для асинхронного приема (USART RX). Еще
он может оказаться полезен и для синхронного приема (Master SPI RX)
- можно 1 раз запрограммировать DMA и не трогать. В остальных
случаях он не нужен. Хотя... Представил себе такую задачу:
Надо равномерным непрерывным потоком гнать данные по USART или SPI (например от ADC после программной фильтрации).
Настраиваем DMA на прием во входной кольцевой буфер ADC и на передачу из выходного кольцевого буфера USART. Размеры буферов выбираем такими, чтобы они не успевали переполняться/опустошаться при задержках обработки фильтрации (например из-за многозадачности RTOS).
Как-то так.