| NUC472_NUC442_BSP V3.03.003 The Board Support Package for NUC472/NUC442

Macros | Functions
PDMA Exported Functions
NUC472/NUC442 Device Driver » PDMA Driver » PDMA Exported Constants
Collaboration diagram for PDMA Exported Functions:

## Macros
#define | PDMA_GET_INT_STATUS()
| Get PDMA Interrupt Status. More...
#define | PDMA_GET_TD_STS()
| Get Transfer Done Interrupt Status. More...
#define | PDMA_CLR_TD_FLAG(u32Mask)
| Clear Transfer Done Interrupt Status. More...
#define | PDMA_GET_ABORT_STS()
| Get Target Abort Interrupt Status. More...
#define | PDMA_CLR_ABORT_FLAG(u32Mask)
| Clear Target Abort Interrupt Status. More...
#define | PDMA_GET_EMPTY_STS()
| Get Scatter-Gather Table Empty Interrupt Status. More...
#define | PDMA_CLR_EMPTY_FLAG(u32Mask)
| Clear Scatter-Gather Table Empty Interrupt Status. More...
#define | PDMA_IS_CH_BUSY(u32Ch)
| Check Channel Status. More...
#define | PDMA_SET_SRC_ADDR(u32Ch, u32Addr)
| Set Source Address. More...
#define | PDMA_SET_DST_ADDR(u32Ch, u32Addr)
| Set Destination Address. More...
#define | PDMA_SET_TRANS_CNT(u32Ch, u32Count)
| Set Transfer Count. More...
#define | PDMA_SET_SCATTER_DESC(u32Ch, u32Addr)
| Set Scatter-gather descriptor Address. More...
#define | PDMA_STOP(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. 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...

## Detailed Description

## Macro Definition Documentation

## ◆ PDMA_CLR_ABORT_FLAG

#define PDMA_CLR_ABORT_FLAG | ( |  | u32Mask | ) |

Clear Target Abort Interrupt Status.

Parameters

  [in] | u32Mask | The channel mask

Returns
  None

Clear the target abort Interrupt status.

Definition at line 165 of file pdma.h.

## ◆ PDMA_CLR_EMPTY_FLAG

#define PDMA_CLR_EMPTY_FLAG | ( |  | u32Mask | ) |

Clear Scatter-Gather Table Empty Interrupt Status.

Parameters

  [in] | u32Mask | The channel mask

Returns
  None

Clear the scatter-gather table empty Interrupt status.

Definition at line 189 of file pdma.h.

## ◆ PDMA_CLR_TD_FLAG

#define PDMA_CLR_TD_FLAG | ( |  | u32Mask | ) |

Clear Transfer Done Interrupt Status.

Parameters

  [in] | u32Mask | The channel mask

Returns
  None

Clear the transfer done Interrupt status.

Definition at line 141 of file pdma.h.

## ◆ PDMA_GET_ABORT_STS

#define PDMA_GET_ABORT_STS | ( |  | ) |

Get Target Abort Interrupt Status.

Parameters

  [in] | None |

Returns
  None

Get the target abort Interrupt status.

Definition at line 153 of file pdma.h.

## ◆ PDMA_GET_EMPTY_STS

#define PDMA_GET_EMPTY_STS | ( |  | ) |

Get Scatter-Gather Table Empty Interrupt Status.

Parameters

  [in] | None |

Returns
  None

Get the scatter-gather table empty Interrupt status.

Definition at line 177 of file pdma.h.

## ◆ PDMA_GET_INT_STATUS

#define PDMA_GET_INT_STATUS | ( |  | ) |

Get PDMA Interrupt Status.

Parameters

  [in] | None |

Returns
  None

This macro gets the interrupt status.

Definition at line 117 of file pdma.h.

## ◆ PDMA_GET_TD_STS

#define PDMA_GET_TD_STS | ( |  | ) |

Get Transfer Done Interrupt Status.

Parameters

  [in] | None |

Returns
  None

Get the transfer done Interrupt status.

Definition at line 129 of file pdma.h.

## ◆ PDMA_IS_CH_BUSY

#define PDMA_IS_CH_BUSY | ( |  | u32Ch | ) |

Check Channel Status.

Parameters

  [in] | u32Ch | The selected channel

Returns
  0 = idle; 1 = busy

Check the selected channel is busy or not.

Definition at line 202 of file pdma.h.

## ◆ PDMA_SET_DST_ADDR

#define PDMA_SET_DST_ADDR | ( |  | u32Ch,
|  |  | u32Addr
| ) |  |

Set Destination Address.

Parameters

  [in] | u32Ch | The selected channel
  [in] | u32Addr | The selected address

Returns
  None

This macro set the selected channel destination address.

Definition at line 228 of file pdma.h.

## ◆ PDMA_SET_SCATTER_DESC

#define PDMA_SET_SCATTER_DESC | ( |  | u32Ch,
|  |  | u32Addr
| ) |  |

Set Scatter-gather descriptor Address.

Parameters

  [in] | u32Ch | The selected channel
  [in] | u32Addr | The descriptor address

Returns
  None

This macro set the selected channel scatter-gather descriptor address.

Definition at line 254 of file pdma.h.

## ◆ PDMA_SET_SRC_ADDR

#define PDMA_SET_SRC_ADDR | ( |  | u32Ch,
|  |  | u32Addr
| ) |  |

Set Source Address.

Parameters

  [in] | u32Ch | The selected channel
  [in] | u32Addr | The selected address

Returns
  None

This macro set the selected channel source address.

Definition at line 215 of file pdma.h.

## ◆ PDMA_SET_TRANS_CNT

#define PDMA_SET_TRANS_CNT | ( |  | u32Ch,
|  |  | u32Count
| ) |  |

Set Transfer Count.

Parameters

  [in] | u32Ch | The selected channel
  [in] | u32Count | Transfer Count

Returns
  None

This macro set the selected channel transfer count.

Definition at line 241 of file pdma.h.

## ◆ PDMA_STOP

#define PDMA_STOP | ( |  | u32Ch | ) |

Stop the channel.

Parameters

  [in] | u32Ch | The selected channel

Returns
  None

This macro stop the selected channel.

Definition at line 266 of file pdma.h.

## Function Documentation

## ◆ PDMA_Close()

void PDMA_Close | ( | void |  | ) |

PDMA Close.

Parameters

  [in] | None |

Returns
  None

This function disable all PDMA channels.

Definition at line 61 of file pdma.c.

## ◆ PDMA_DisableInt()

void PDMA_DisableInt | ( | uint32_t | u32Ch,
|  | uint32_t | u32Mask
| ) |  |

Disable Interrupt.

Parameters

  [in] | u32Ch | The selected channel
  [in] | u32Mask | The Interrupt Type

Returns
  None

This function disable the selected channel interrupt.

Definition at line 240 of file pdma.c.

## ◆ PDMA_EnableInt()

void PDMA_EnableInt | ( | uint32_t | u32Ch,
|  | uint32_t | u32Mask
| ) |  |

Enable Interrupt.

Parameters

  [in] | u32Ch | The selected channel
  [in] | u32Mask | The Interrupt Type

Returns
  None

This function enable the selected channel interrupt.

Definition at line 225 of file pdma.c.

## ◆ PDMA_Open()

void PDMA_Open | ( | uint32_t | u32Mask | ) |

PDMA Open.

Parameters

  [in] | u32Mask | Channel enable bits.

Returns
  None

This function enable the PDMA channels.

Definition at line 39 of file pdma.c.

## ◆ PDMA_SetBurstType()

void PDMA_SetBurstType | ( | uint32_t | u32Ch,
|  | uint32_t | u32BurstType,
|  | uint32_t | u32BurstSize
| ) |  |

Set PDMA Burst Type.

Parameters

  [in] | u32Ch | The selected channel
  [in] | u32BurstType | Burst mode or single mode
  [in] | u32BurstSize | Set the size of burst mode

Returns
  None

This function set the selected channel burst type and size.

Definition at line 193 of file pdma.c.

## ◆ PDMA_SetTransferAddr()

void PDMA_SetTransferAddr | ( | uint32_t | u32Ch,
|  | uint32_t | u32SrcAddr,
|  | uint32_t | u32SrcCtrl,
|  | uint32_t | u32DstAddr,
|  | uint32_t | u32DstCtrl
| ) |  |

Set PDMA Transfer Address.

Parameters

  [in] | u32Ch | The selected channel
  [in] | u32SrcAddr | Source address
  [in] | u32SrcCtrl | Source control attribute. PDMA_SAR_INC or PDMA_SAR_FIX
  [in] | u32DstAddr | destination address
  [in] | u32DstCtrl | destination control attribute. PDMA_DAR_INC or PDMA_DAR_FIX

Returns
  None

This function set the selected channel source/destination address and attribute.

Definition at line 96 of file pdma.c.

## ◆ PDMA_SetTransferCnt()

void PDMA_SetTransferCnt | ( | uint32_t | u32Ch,
|  | uint32_t | u32Width,
|  | uint32_t | u32TransCount
| ) |  |

Set PDMA Transfer Count.

Parameters

  [in] | u32Ch | The selected channel
  [in] | u32Width | Data width. PDMA_WIDTH_8, PDMA_WIDTH_16, or PDMA_WIDTH_32
  [in] | u32TransCount | Transfer count

Returns
  None

This function set the selected channel data width and transfer count.

Definition at line 77 of file pdma.c.

## ◆ PDMA_SetTransferMode()

void PDMA_SetTransferMode | ( | uint32_t | u32Ch,
|  | uint32_t | u32Peripheral,
|  | uint32_t | u32ScatterEn,
|  | uint32_t | u32DescAddr
| ) |  |

Set PDMA Transfer Mode.

Parameters

  [in] | u32Ch | The selected channel
  [in] | u32Peripheral | The selected peripheral. PDMA_SPI0_TX, PDMA_UART0_TX, PDMA_I2S_TX,...PDMA_MEM
  [in] | u32ScatterEn | Scatter-gather mode enable
  [in] | u32DescAddr | Scatter-gather descriptor address

Returns
  None

This function set the selected channel transfer mode. Include peripheral setting.

Definition at line 116 of file pdma.c.

## ◆ PDMA_Trigger()

void PDMA_Trigger | ( | uint32_t | u32Ch | ) |

Trigger PDMA.

Parameters

  [in] | u32Ch | The selected channel

Returns
  None

This function trigger the selected channel.

Definition at line 209 of file pdma.c.