我使用DMA传输数据,同步事件是I2S2 receive event,所有东西配置好后,当将源地址配置长0x2a00(i2S2的控制寄存器),时,有数据传输;但是一旦改成0x2a29(接收寄存器)时,没有数据传输,但是可以观察到该寄存器中有值,而且还在变化,这是什么原因?
Shine:
回复 user5052112:
TRM手册里有说明。
The DMA can also make 32-bit accesses to receive and transmit data registers for efficient data transfer.
user5052112:
回复 Shine:
这个我在I2S中修改了配置,使其将两个连续的16bit进行打包成32bit, 之后就正常传输了。(packed = 1)