CN / EN
文档反馈
感谢关注汇顶文档,期待您的宝贵建议!
感谢您的反馈,祝您愉快!
无匹配项 共计114个匹配页面

DMA驱动的结构体

ll_dma_init_t

DMA外设LL层初始化结构体ll_dma_init_t的定义如下:

表 539 ll_dma_init_t结构体
数据域 域段描述 取值

uint32_t src_address

源地址,开发者也可通过ll_dma_set_source_address()设置该参数。

0x0000_0000 ~ 0xFFFF_FFFF

uint32_t dst_address

目的地址,开发者也可通过ll_dma_set_destination_address()设置该参数。

0x0000_0000 ~ 0xFFFF_FFFF

uint32_t direction

传输方向,开发者也可通过ll_dma_set_data_transfer_direction()设置该参数。

该参数的取值可以是下列值中的任意一个:

  • LL_DMA_DIRECTION_MEMORY_TO_MEMORY(内存到内存)
  • LL_DMA_DIRECTION_MEMORY_TO_PERIPH(内存到外设)
  • LL_DMA_DIRECTION_PERIPH_TO_MEMORY(外设到内存)
  • LL_DMA_DIRECTION_PERIPH_TO_PERIPH(外设到外设)

uint32_t mode

传输模式,开发者也可在初始化后通过ll_dma_set_mode()设置该参数。

该参数的取值可以是下列值中的任意一个:

  • LL_DMA_MODE_SINGLE_BLOCK(单块传输)
  • LL_DMA_MODE_MULTI_BLOCK_SRC_RELOAD(多块传输、源地址自动重载)
  • LL_DMA_MODE_MULTI_BLOCK_DST_RELOAD(多块传输、目的地址自动重载)
  • LL_DMA_MODE_MULTI_BLOCK_ALL_RELOAD(多块传输、源地址及目的地址均自动重载)

uint32_t src_increment_mode

源地址增量模式,开发者也可在初始化后通过ll_dma_set_mode()设置该参数。

该参数的取值可以是下列值中的任意一个:

  • LL_DMA_SRC_INCREMENT(源地址递增)
  • LL_DMA_SRC_DECREMENT(源地址递减)
  • LL_DMA_SRC_NO_CHANGE(源地址不变)

uint32_t dst_increment_mode

目的地址增量模式,开发者也可在初始化后通过ll_dma_set_mode()设置该参数。

该参数的取值可以是下列值中的任意一个:

  • LL_DMA_DST_INCREMENT(目的地址递增)
  • LL_DMA_DST_DECREMENT(目的地址递减)
  • LL_DMA_DST_NO_CHANGE(目的地址不变)

uint32_t src_data_width

源数据突发传输宽度,开发者也可在初始化后通过ll_dma_set_mode()设置该参数。

该参数的取值可以是下列值中的任意一个:

  • LL_DMA_SRC_BURST_LENGTH_1(单字节)
  • LL_DMA_SRC_BURST_LENGTH_4(4字节)
  • LL_DMA_SRC_BURST_LENGTH_8(8字节)

uint32_t dst_data_width

目的数据突发传输宽度,开发者也可在初始化后通过ll_dma_set_mode()设置该参数。

该参数的取值可以是下列值中的任意一个:

  • LL_DMA_DST_BURST_LENGTH_1(单字节)
  • LL_DMA_DST_BURST_LENGTH_4(4字节)
  • LL_DMA_DST_BURST_LENGTH_8(8字节)

uint32_t block_size

数据传输长度,开发者也可在初始化后通过ll_dma_set_block_size()设置该参数。

0 ~ 4095

uint32_t src_peripheral

源外设,开发者也可在初始化后通过ll_dma_set_source_peripheral()设置该参数。

该参数的取值可以是下列值中的任意一个:

  • LL_DMA_PERIPH_SPIM_TX(SPIM发送)
  • LL_DMA_PERIPH_SPIM_RX(SPIM接收)
  • LL_DMA_PERIPH_SPIS_TX(SPIS发送)
  • LL_DMA_PERIPH_SPIS_RX(SPIS接收)
  • LL_DMA_PERIPH_QSPI0_TX(QSPI0发送)
  • LL_DMA_PERIPH_QSPI0_RX(QSPI0接收)
  • LL_DMA_PERIPH_I2C0_TX(I2C0发送)
  • LL_DMA_PERIPH_I2C0_RX(I2C0接收)
  • LL_DMA_PERIPH_I2C1_TX(I2C1发送)
  • LL_DMA_PERIPH_I2C1_RX(I2C1接收)
  • LL_DMA_PERIPH_I2S_S_TX(I2SS发送)
  • LL_DMA_PERIPH_I2S_S_RX(I2SS接收)
  • LL_DMA_PERIPH_UART0_TX(UART0发送)
  • LL_DMA_PERIPH_UART0_RX(UART0接收)
  • LL_DMA_PERIPH_QSPI1_TX(QSPI1发送)
  • LL_DMA_PERIPH_QSPI1_RX(QSPI1接收)
  • LL_DMA_PERIPH_I2S_M_TX(I2SM发送)
  • LL_DMA_PERIPH_I2S_M_RX(I2SM接收)
  • LL_DMA_PERIPH_SNSADC(Sense ADC)
  • LL_DMA_PERIPH_MEM(内存)

uint32_t dst_peripheral

目的外设,开发者也可在初始化后通过ll_dma_set_destination_peripheral()设置该参数。

该参数的取值可以是下列值中的任意一个:

  • LL_DMA_PERIPH_SPIM_TX(SPIM发送)
  • LL_DMA_PERIPH_SPIM_RX(SPIM接收)
  • LL_DMA_PERIPH_SPIS_TX(SPIS发送)
  • LL_DMA_PERIPH_SPIS_RX(SPIS接收)
  • LL_DMA_PERIPH_QSPI0_TX(QSPI0发送)
  • LL_DMA_PERIPH_QSPI0_RX(QSPI0接收)
  • LL_DMA_PERIPH_I2C0_TX(I2C0发送)
  • LL_DMA_PERIPH_I2C0_RX(I2C0接收)
  • LL_DMA_PERIPH_I2C1_TX(I2C1发送)
  • LL_DMA_PERIPH_I2C1_RX(I2C1接收)
  • LL_DMA_PERIPH_UART0_TX(UART0发送)
  • LL_DMA_PERIPH_UART0_RX(UART0接收)
  • LL_DMA_PERIPH_QSPI1_TX(QSPI1发送)
  • LL_DMA_PERIPH_QSPI1_RX(QSPI1接收)
  • LL_DMA_PERIPH_SNSADC(Sense ADC)
  • LL_DMA_PERIPH_MEM(内存)

uint32_t priority

通道优先级,开发者也可在初始化后通过ll_dma_set_channel_priority_level()设置该参数。

该参数的取值可以是下列值中的任意一个:

  • LL_DMA_PRIORITY_0(优先级0,最低)
  • LL_DMA_PRIORITY_1(优先级1)
  • LL_DMA_PRIORITY_2(优先级2)
  • LL_DMA_PRIORITY_3(优先级3)
  • LL_DMA_PRIORITY_4(优先级4)
  • LL_DMA_PRIORITY_5(优先级5)
  • LL_DMA_PRIORITY_6(优先级6)
  • LL_DMA_PRIORITY_7(优先级7,最高)

扫描关注

打开微信,使用“扫一扫”即可关注。