![ARTERY AT32F435 Series Reference Manual Download Page 645](http://html1.mh-extra.com/html/artery/at32f435-series/at32f435-series_reference-manual_2977592645.webp)
AT32F435/437
Series Reference Manual
2022.11.11
Page 645
Rev 2.03
Figure 27-7 Block diagram in continuous capture mode
DVP_VSYNC
DVP_D
blanking
blanking
set 1 to CAP
CAP
Captured
frame
blanking
Captured
frame
blanking
set 0 to CAP
27.4 DMA access interface and data output packing
27.4.1 DMA access interface
The captured data can be transferred to memory unit using DMA interface without needing to occupy
CPU resources. After the CAP is set in the DVP_CTRL register, the DMA interface is automatically
activated. The DMA accesses the DVP_DT register through the AHB bus to fetch the DVP-captured data.
A 32-bit data is transferred for each access. The DVP DMA interface supports single or burst transfers,
depending on the DMABT bit in the DVP_ACTRL register.
Burst transfer mode
Burst transfer mode is enabled when setting DMABT=1. A DMA access is triggered each time the DVP
receives four 32-bit data. After receiving a DMA request, the DMA makes four consecutive accesses to
the DVP_DT register. The burst mode is able to significantly reduce the number of arbitration so as to
improve bus performance. Only EDMA is supported in burst transfer mode, and the peripheral burst
transfer of the EMDA must be set as INCR4 (PBURST=1).
Single transfer mode
Single transfer mode is enabled when setting DMABT=0. In this mode, a DMA access request is
triggered each time the DVP receives a 32-bit data. After receiving a DMA request, the DMA interface
accesses the DVP_DT register once. When the DMA interface uses DMA, only single transfer mode is
supported. To use EMDA in this mode, the peripheral burst transfer must be set as single transfer mode
(PBURST=0).
Note: To ensure correct data acquisition using DMA access interface, the AHB bus clock (AHB_CLK)
must be higher than 2.5 DVP_PCLK clocks.
27.4.2 Data output packing
The captured data are packed into a 32-bit data register (DVP_DT) and then transferred through a DMA.
The packing mode depends on the PDL bit in the DVP_CTRL register. Refer to Figure 27-8 for more
information.
8-bit parallel data (PDL=0)
When the PDL is programmed to 0, the DVP captures an 8-bit data every DVP_PCLK clock, and packs
four captured data into a word data. The first captured data is placed in the 8 least significant bits, and
the last captured data is placed in the 8 most significant bits, and so on.
10-bit parallel data (PDL=1)
When the PDL is programmed to 1, the DVP captures a 10-bit data is captured every DVP_PCLK clock,
and packs two captured data into a word data. The word data is made up of two half words. The first
captured data is placed in the 10 least significant bits of the least significant half word, and the last
captured data is placed in the 10 least significant bits of the most significant half word, and the remaining
are cleared to zero.
12-bit parallel data (PDL=2)
When the PDL bit is programmed to 2, the DVP captures a 12-bit data every DVP_PCLK clock, and