CARME-M4 BSP  V1.5

Data Counter functions. More...

+ Collaboration diagram for Data Counter functions:

Functions

void DMA_SetCurrDataCounter (DMA_Stream_TypeDef *DMAy_Streamx, uint16_t Counter)
 Writes the number of data units to be transferred on the DMAy Streamx. More...
 
uint16_t DMA_GetCurrDataCounter (DMA_Stream_TypeDef *DMAy_Streamx)
 Returns the number of remaining data units in the current DMAy Streamx transfer. More...
 

Detailed Description

Data Counter functions.

 ===============================================================================
                      ##### Data Counter functions #####
 ===============================================================================  
    [..]
    This subsection provides function allowing to configure and read the buffer size
    (number of data to be transferred). 
    [..]
    The DMA data counter can be written only when the DMA Stream is disabled 
    (ie. after transfer complete event).
    [..]
    The following function can be used to write the Stream data counter value:
      (+) void DMA_SetCurrDataCounter(DMA_Stream_TypeDef* DMAy_Streamx, uint16_t Counter);
      -@- It is advised to use this function rather than DMA_Init() in situations 
          where only the Data buffer needs to be reloaded.
      -@- If the Source and Destination Data Sizes are different, then the value 
          written in data counter, expressing the number of transfers, is relative 
          to the number of transfers from the Peripheral point of view.
          ie. If Memory data size is Word, Peripheral data size is Half-Words, 
          then the value to be configured in the data counter is the number 
          of Half-Words to be transferred from/to the peripheral.
    [..]
    The DMA data counter can be read to indicate the number of remaining transfers for
    the relative DMA Stream. This counter is decremented at the end of each data 
    transfer and when the transfer is complete: 
      (+) If Normal mode is selected: the counter is set to 0.
      (+) If Circular mode is selected: the counter is reloaded with the initial value
          (configured before enabling the DMA Stream)
     [..]
     The following function can be used to read the Stream data counter value:
       (+) uint16_t DMA_GetCurrDataCounter(DMA_Stream_TypeDef* DMAy_Streamx);

Function Documentation

uint16_t DMA_GetCurrDataCounter ( DMA_Stream_TypeDef *  DMAy_Streamx)

Returns the number of remaining data units in the current DMAy Streamx transfer.

Parameters
DMAy_Streamxwhere y can be 1 or 2 to select the DMA and x can be 0 to 7 to select the DMA Stream.
Return values
Thenumber of remaining data units in the current DMAy Streamx transfer.

Definition at line 647 of file stm32f4xx_dma.c.

void DMA_SetCurrDataCounter ( DMA_Stream_TypeDef *  DMAy_Streamx,
uint16_t  Counter 
)

Writes the number of data units to be transferred on the DMAy Streamx.

Parameters
DMAy_Streamxwhere y can be 1 or 2 to select the DMA and x can be 0 to 7 to select the DMA Stream.
CounterNumber of data units to be transferred (from 0 to 65535) Number of data items depends only on the Peripheral data format.
Note
If Peripheral data format is Bytes: number of data units is equal to total number of bytes to be transferred.
If Peripheral data format is Half-Word: number of data units is equal to total number of bytes to be transferred / 2.
If Peripheral data format is Word: number of data units is equal to total number of bytes to be transferred / 4.
In Memory-to-Memory transfer mode, the memory buffer pointed by DMAy_SxPAR register is considered as Peripheral.
Return values
Thenumber of remaining data units in the current DMAy Streamx transfer.

Definition at line 632 of file stm32f4xx_dma.c.