久芯网

NUCLEO-STM32H723ZG的BDMA使用I2C4的TX作为请求源,I2C4不发送数据

avatar Zambooه٥ 提问时间: 2023-07-03 13:41:40 / 未解决

BDMA使用通道0配置为内存到外设模式,请求源为I2C4的TX,使用I2C4进行从机DMA发送时,其中存储器的初始地址为SRAM4的初始地址0x38000000,发现内存的中数据未传输到I2C4的TXDR中,使用逻辑分析仪抓取的信号,也没有看到数据发送出去,只停留在地址被ack阶段,此时I2C4的TXE和TXIS都为1,I2C4的txdam已经使能。

我想问这是什么原因导致的?


如需获得 STM32H723ZG 等器件的更多信息,请点击链接或 点击此处 联系在线客服!

1个回答
  • avatar xmshao
    回答时间: 2023-07-03 14:08:02

    我看了下,从架构上看,BDMA实现I2CR与SRAM4之间的传输是没有问题的。 TXE=1 表示发送数据寄存器是空的,你确认下DMA这边到底配置好没有。 或者你分两步来,先保证BDMA跑顺,比方用BDMA传输SRAM4的数据到GPIO。 然后再切换到I2C.

会员中心 微信客服
客服
回到顶部