836
32072H–AVR32–10/2012
AT32UC3A3
31.6.4.1
WRITE_SINGLE_BLOCK operation using DMA Controller
1.
Wait until the current command execution has successfully terminated.
c.
Check that the Transfer Done bit in the SR register (SR.XFRDONE) is set
2.
Write the block length in the card. This value defines the value block_lenght.
3.
Write the MR.BLKLEN with block_lenght value.
4.
Configure the DMA Channel in the DMA Controller.
5.
Write the DMA register with the following fields:
– Write the dma_offset to the DMA Write Buffer Offset field (DMA.OFFSET)
.
– Write the DMA Channel Read and Write Chunk Size field (DMA.CHKSIZE).
– Write a one to he DMA.DMAEN bit to enable DMA hardware handshaking in the
MCI.
6.
Write a one to the DMA Transfer done bit in IER register (IER.DMADONE).
7.
Issue a WRITE_SINGLE_BLOCK command.
8.
Wait for DMA Transfer done bit in SR register (SR.DMADONE) is set.
31.6.4.2
READ_SINGLE_BLOCK operation using DMA Controller
1.
Wait until the current command execution has successfully terminated.
d.
Check that the SR.XFRDONE bit is set.
2.
Write the block length in the card. This value defines the value block_lenght.
3.
Write the MR.BLKLEN with block_lenght value.
4.
Configure the DMA Channel in the DMA Controller.
5.
Write the DMA register with the following fields:
– Write zero to the DMA.OFFSET field
.
– Write the DMA.CHKSIZE field.
– Write to one the DMA.DMAEN bit to enable DMA hardware handshaking in the MCI.
6.
Write a one to the IER.DMADONE bit.
7.
Issue a READ_SINGLE_BLOCK command.
8.
Wait for SR.DMADONE bit is set.
31.6.4.3
WRITE_MULTIPLE_BLOCK
1.
Wait until the current command execution has successfully terminated.
a.
Check that the SR.XFRDONE bit is set.
2.
Write the block length in the card. This value defines the value block_lenght.
3.
Write the MR.BLKLEN with block_lenght value.
4.
Program the DMA Controller to use a list of descriptors. Each descriptor transfers one
block of data.
5.
Program the DMA register with the following fields:
– Write the dma_offset in the DMA.OFFSET field
.
– Write the DMA.CHKSIZE field.
– Write a one to the DMA.DMAEN bit to enable DMA hardware handshaking in the
MCI.
6.
Write a one to the IER.DMADONE bit.
7.
Issue a WRITE_MULTIPLE_BLOCK command.
8.
Wait for DMA chained buffer transfer complete interrupt.
Содержание AT32UC3A3128
Страница 61: ...61 32072H AVR32 10 2012 AT32UC3A3 PLLEN PLL Enable 0 PLL is disabled 1 PLL is enabled...
Страница 260: ...260 32072H AVR32 10 2012 AT32UC3A3 5 2560 3071 6 3072 3583 7 3584 4095 Bit Index n Sector Boundaries...
Страница 592: ...592 32072H AVR32 10 2012 AT32UC3A3 Manchester Configuration Register on page 614...
Страница 989: ...989 32072H AVR32 10 2012 AT32UC3A3 37 2 Package Drawings Figure 37 1 TFBGA 144 package drawing...
Страница 991: ...991 32072H AVR32 10 2012 AT32UC3A3 Figure 37 3 VFBGA 100 package drawing...