24.8.5.2.2 Workflow
- Start the loop for transfer.
for(i=0;i<TRANSFER_COUNTER;i++) {transfer_is_done =false;dma_start_transfer_job(&example_resource);while(!transfer_is_done) {/* Wait for transfer done */}example_descriptor.SRCADDR.reg += TRANSFER_SIZE;example_descriptor.DSTADDR.reg += TRANSFER_SIZE;} - Set the transfer done flag as false.
transfer_is_done =false; - Start the transfer job.
dma_start_transfer_job(&example_resource); - Wait for transfer done.
while(!transfer_is_done) {/* Wait for transfer done */} - Update the source and destination address for next transfer.
example_descriptor.SRCADDR.reg += TRANSFER_SIZE;example_descriptor.DSTADDR.reg += TRANSFER_SIZE; - Enter endless loop.
while(1);
