Hi
The uTasker Kinetis project includes UART DMA reception support on one or more UARTs (up to 6 at one time).
- Each UART can be configured to inform the application when a full circular buffer content is ready (not often useful since the reception is blocked until the buffer is read)
- Alternatively the circular buffer can operate in half-buffer mode, meaning that there will be a notification when the buffer is half-full so that the application has a half-buffer time to clear the buffer for re-use (ping-pong operation)
- Finally a free-running DMA mode is configable where the DMA continuously fills the circular buffer. The application should regularly check the state of the buffer and clear content before the DMA overwrites the buffer again. There are no interrupts ever needed for this mode.
The free-running DMA Rx has proven very useful for high speed UART operation with it being used successfully in a design with 6 UARTs operating in parallel at over 3 MBaud.
Regards
Mark
http://www.uTasker.com