diff options
| author | wdfk-prog <[email protected]> | 2026-04-13 11:44:23 +0800 |
|---|---|---|
| committer | Rbb666 <[email protected]> | 2026-04-13 17:52:38 +0800 |
| commit | fab59660abd0a72f47df7cfb21776581f45a8eb0 (patch) | |
| tree | d23b94c3275d4f0d0f534a80c6a9a50b99bcf48c | |
| parent | 141895ec822bbba200a56af099a83f7234ae8b7a (diff) | |
fix:[STM32][I2C]:DMA RX setting bug
| -rw-r--r-- | bsp/stm32/libraries/HAL_Drivers/drivers/drv_hard_i2c.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/bsp/stm32/libraries/HAL_Drivers/drivers/drv_hard_i2c.c b/bsp/stm32/libraries/HAL_Drivers/drivers/drv_hard_i2c.c index 9afd277129..2c3778199f 100644 --- a/bsp/stm32/libraries/HAL_Drivers/drivers/drv_hard_i2c.c +++ b/bsp/stm32/libraries/HAL_Drivers/drivers/drv_hard_i2c.c @@ -554,9 +554,9 @@ int RT_hw_i2c_bus_init(void) #endif #if defined(SOC_SERIES_STM32F2) || defined(SOC_SERIES_STM32F4) || defined(SOC_SERIES_STM32F7) || defined(SOC_SERIES_STM32MP1) || defined(SOC_SERIES_STM32H7) i2c_objs[i].dma.handle_rx.Init.FIFOMode = DMA_FIFOMODE_DISABLE; - i2c_objs[i].dma.handle_tx.Init.FIFOThreshold = DMA_FIFO_THRESHOLD_FULL; - i2c_objs[i].dma.handle_tx.Init.MemBurst = DMA_MBURST_INC4; - i2c_objs[i].dma.handle_tx.Init.PeriphBurst = DMA_PBURST_INC4; + i2c_objs[i].dma.handle_rx.Init.FIFOThreshold = DMA_FIFO_THRESHOLD_FULL; + i2c_objs[i].dma.handle_rx.Init.MemBurst = DMA_MBURST_INC4; + i2c_objs[i].dma.handle_rx.Init.PeriphBurst = DMA_PBURST_INC4; #endif /* defined(SOC_SERIES_STM32F2) || defined(SOC_SERIES_STM32F4) || defined(SOC_SERIES_STM32F7) || defined(SOC_SERIES_STM32MP1) || defined(SOC_SERIES_STM32H7) */ { rt_uint32_t tmpreg = 0x00U; @@ -577,7 +577,6 @@ int RT_hw_i2c_bus_init(void) } } -#ifdef BSP_I2C_USING_DMA if (i2c_objs[i].i2c_dma_flag & RT_DEVICE_FLAG_DMA_TX) { i2c_objs[i].dma.handle_tx.Instance = i2c_config[i].dma_tx->Instance; |
