![]() |
M471M/R1/S BSP V3.01.000
The Board Support Package for M4521
|
Macros | |
#define | PDMA_GET_INT_STATUS() ((uint32_t)(PDMA->INTSTS)) |
Get PDMA Interrupt Status. More... | |
#define | PDMA_GET_TD_STS() ((uint32_t)(PDMA->TDSTS)) |
Get Transfer Done Interrupt Status. More... | |
#define | PDMA_CLR_TD_FLAG(u32Mask) ((uint32_t)(PDMA->TDSTS = (u32Mask))) |
Clear Transfer Done Interrupt Status. More... | |
#define | PDMA_GET_ABORT_STS() ((uint32_t)(PDMA->ABTSTS)) |
Get Target Abort Interrupt Status. More... | |
#define | PDMA_CLR_ABORT_FLAG(u32Mask) ((uint32_t)(PDMA->ABTSTS = (u32Mask))) |
Clear Target Abort Interrupt Status. More... | |
#define | PDMA_GET_EMPTY_STS() ((uint32_t)(PDMA->SCATSTS)) |
Get Scatter-Gather Table Empty Interrupt Status. More... | |
#define | PDMA_CLR_EMPTY_FLAG(u32Mask) ((uint32_t)(PDMA->SCATSTS = (u32Mask))) |
Clear Scatter-Gather Table Empty Interrupt Status. More... | |
#define | PDMA_CLR_TMOUT_FLAG(u32Ch) ((uint32_t)(PDMA->INTSTS = (1 << ((u32Ch) + 8)))) |
Clear Timeout Interrupt Status. More... | |
#define | PDMA_IS_CH_BUSY(u32Ch) ((uint32_t)(PDMA->TRGSTS & (1 << (u32Ch)))? 1 : 0) |
Check Channel Status. More... | |
#define | PDMA_SET_SRC_ADDR(u32Ch, u32Addr) ((uint32_t)(PDMA->DSCT[(u32Ch)].SA = (u32Addr))) |
Set Source Address. More... | |
#define | PDMA_SET_DST_ADDR(u32Ch, u32Addr) ((uint32_t)(PDMA->DSCT[(u32Ch)].DA = (u32Addr))) |
Set Destination Address. More... | |
#define | PDMA_SET_TRANS_CNT(u32Ch, u32TransCount) ((uint32_t)(PDMA->DSCT[(u32Ch)].CTL=(PDMA->DSCT[(u32Ch)].CTL&~PDMA_DSCT_CTL_TXCNT_Msk)|(((u32TransCount)-1) << PDMA_DSCT_CTL_TXCNT_Pos))) |
Set Transfer Count. More... | |
#define | PDMA_SET_SCATTER_DESC(u32Ch, u32Addr) ((uint32_t)(PDMA->DSCT[(u32Ch)].NEXT = (u32Addr) - (PDMA->SCATBA))) |
Set Scatter-gather descriptor Address. More... | |
#define | PDMA_STOP(u32Ch) ((uint32_t)(PDMA->STOP = (1 << (u32Ch)))) |
Stop the channel. More... | |
Functions | |
void | PDMA_Open (uint32_t u32Mask) |
PDMA Open. More... | |
void | PDMA_Close (void) |
PDMA Close. More... | |
void | PDMA_SetTransferCnt (uint32_t u32Ch, uint32_t u32Width, uint32_t u32TransCount) |
Set PDMA Transfer Count. More... | |
void | PDMA_SetTransferAddr (uint32_t u32Ch, uint32_t u32SrcAddr, uint32_t u32SrcCtrl, uint32_t u32DstAddr, uint32_t u32DstCtrl) |
Set PDMA Transfer Address. More... | |
void | PDMA_SetTransferMode (uint32_t u32Ch, uint32_t u32Peripheral, uint32_t u32ScatterEn, uint32_t u32DescAddr) |
Set PDMA Transfer Mode. More... | |
void | PDMA_SetBurstType (uint32_t u32Ch, uint32_t u32BurstType, uint32_t u32BurstSize) |
Set PDMA Burst Type and Size. More... | |
void | PDMA_EnableTimeout (uint32_t u32Mask) |
Enable timeout function. More... | |
void | PDMA_DisableTimeout (uint32_t u32Mask) |
Disable timeout function. More... | |
void | PDMA_SetTimeOut (uint32_t u32Ch, uint32_t u32OnOff, uint32_t u32TimeOutCnt) |
Set PDMA Timeout Count. More... | |
void | PDMA_Trigger (uint32_t u32Ch) |
Trigger PDMA. More... | |
void | PDMA_EnableInt (uint32_t u32Ch, uint32_t u32Mask) |
Enable Interrupt. More... | |
void | PDMA_DisableInt (uint32_t u32Ch, uint32_t u32Mask) |
Disable Interrupt. More... | |
#define PDMA_CLR_ABORT_FLAG | ( | u32Mask | ) | ((uint32_t)(PDMA->ABTSTS = (u32Mask))) |
#define PDMA_CLR_EMPTY_FLAG | ( | u32Mask | ) | ((uint32_t)(PDMA->SCATSTS = (u32Mask))) |
#define PDMA_CLR_TD_FLAG | ( | u32Mask | ) | ((uint32_t)(PDMA->TDSTS = (u32Mask))) |
#define PDMA_CLR_TMOUT_FLAG | ( | u32Ch | ) | ((uint32_t)(PDMA->INTSTS = (1 << ((u32Ch) + 8)))) |
#define PDMA_GET_ABORT_STS | ( | ) | ((uint32_t)(PDMA->ABTSTS)) |
#define PDMA_GET_EMPTY_STS | ( | ) | ((uint32_t)(PDMA->SCATSTS)) |
#define PDMA_GET_INT_STATUS | ( | ) | ((uint32_t)(PDMA->INTSTS)) |
#define PDMA_GET_TD_STS | ( | ) | ((uint32_t)(PDMA->TDSTS)) |
#define PDMA_IS_CH_BUSY | ( | u32Ch | ) | ((uint32_t)(PDMA->TRGSTS & (1 << (u32Ch)))? 1 : 0) |
#define PDMA_SET_DST_ADDR | ( | u32Ch, | |
u32Addr | |||
) | ((uint32_t)(PDMA->DSCT[(u32Ch)].DA = (u32Addr))) |
#define PDMA_SET_SRC_ADDR | ( | u32Ch, | |
u32Addr | |||
) | ((uint32_t)(PDMA->DSCT[(u32Ch)].SA = (u32Addr))) |
#define PDMA_SET_TRANS_CNT | ( | u32Ch, | |
u32TransCount | |||
) | ((uint32_t)(PDMA->DSCT[(u32Ch)].CTL=(PDMA->DSCT[(u32Ch)].CTL&~PDMA_DSCT_CTL_TXCNT_Msk)|(((u32TransCount)-1) << PDMA_DSCT_CTL_TXCNT_Pos))) |
#define PDMA_STOP | ( | u32Ch | ) | ((uint32_t)(PDMA->STOP = (1 << (u32Ch)))) |
void PDMA_Close | ( | void | ) |
void PDMA_DisableInt | ( | uint32_t | u32Ch, |
uint32_t | u32Mask | ||
) |
Disable Interrupt.
[in] | u32Ch | The selected channel |
[in] | u32Mask | The Interrupt Type. Valid values are |
This function disable the selected channel interrupt.
void PDMA_DisableTimeout | ( | uint32_t | u32Mask | ) |
void PDMA_EnableInt | ( | uint32_t | u32Ch, |
uint32_t | u32Mask | ||
) |
Enable Interrupt.
[in] | u32Ch | The selected channel |
[in] | u32Mask | The Interrupt Type. Valid values are |
This function enable the selected channel interrupt.
void PDMA_EnableTimeout | ( | uint32_t | u32Mask | ) |
void PDMA_Open | ( | uint32_t | u32Mask | ) |
void PDMA_SetBurstType | ( | uint32_t | u32Ch, |
uint32_t | u32BurstType, | ||
uint32_t | u32BurstSize | ||
) |
Set PDMA Burst Type and Size.
[in] | u32Ch | The selected channel |
[in] | u32BurstType | Burst mode or single mode. Valid values are |
[in] | u32BurstSize | Set the size of burst mode. Valid values are |
This function set the selected channel burst type and size.
void PDMA_SetTimeOut | ( | uint32_t | u32Ch, |
uint32_t | u32OnOff, | ||
uint32_t | u32TimeOutCnt | ||
) |
void PDMA_SetTransferAddr | ( | uint32_t | u32Ch, |
uint32_t | u32SrcAddr, | ||
uint32_t | u32SrcCtrl, | ||
uint32_t | u32DstAddr, | ||
uint32_t | u32DstCtrl | ||
) |
Set PDMA Transfer Address.
[in] | u32Ch | The selected channel |
[in] | u32SrcAddr | Source address |
[in] | u32SrcCtrl | Source control attribute. Valid values are |
[in] | u32DstAddr | destination address |
[in] | u32DstCtrl | destination control attribute. Valid values are |
This function set the selected channel source/destination address and attribute.
void PDMA_SetTransferCnt | ( | uint32_t | u32Ch, |
uint32_t | u32Width, | ||
uint32_t | u32TransCount | ||
) |
Set PDMA Transfer Count.
[in] | u32Ch | The selected channel |
[in] | u32Width | Data width. Valid values are |
[in] | u32TransCount | Transfer count |
This function set the selected channel data width and transfer count.
void PDMA_SetTransferMode | ( | uint32_t | u32Ch, |
uint32_t | u32Peripheral, | ||
uint32_t | u32ScatterEn, | ||
uint32_t | u32DescAddr | ||
) |
Set PDMA Transfer Mode.
[in] | u32Ch | The selected channel |
[in] | u32Peripheral | The selected peripheral. Valid values are |
[in] | u32ScatterEn | Scatter-gather mode enable |
[in] | u32DescAddr | Scatter-gather descriptor address |
This function set the selected channel transfer mode. Include peripheral setting.