UART DMA, gömülü projelerde CPU üzerindeki gereksiz interrupt yükünü azaltmak için çok kullanışlıdır.
Neden DMA?
Sürekli veri akan sistemlerde byte byte interrupt almak yerine çevresel birimin belleğe yazmasına izin vermek daha sakin bir akış sağlar.
Dikkat
Callback içinde uzun işlem yapmak yerine bayrak set edip işi task veya main loop tarafına bırak.
HAL_UARTEx_ReceiveToIdle_DMA(&huart2, rxBuffer, RX_BUFFER_SIZE); __HAL_DMA_DISABLE_IT(huart2.hdmarx, DMA_IT_HT);