
问题是这样,使用了两个CPU,主从通信通过SPI2进行,SPI2配置了DMA模式,两个CPU的6个串口叶使用DMA模式,当时看手册发现F405的6个串口是分配在不同的DMA流之上的,但是SPI2的DMA流却和串口有交叉,最厚果然印证了当时的担心,就是当主从CPU进行SPI2传输时(2ms进行一次,一次数据持续400us),此时从CPU的那两个和SPI有复用的串口就发布出来数据了,其他串口都可以正常发数,想知道F4既然给每一个DMA流都配置了8个通道,说明其是可以复用的,比如从CPU的SPI2发送使用CHANNEL0,STREAM4,串口3发送使用CHANNEL4,STREAM4,那我要如何配置才能使SPI2和串口3都可以正常使用DMA。从CPU的SPI2开启时间是受主CPU控制的,所以想让从CPU的SPI2去等待串口3释放DMA,这个很难做到,因为主CPU并不知道从CPU的情况。 |
分时复用,并发是不切实际的。 |
STM32F407ZGT6的SD卡通过DMA控制时,无法从外部SRAM取数据
串口空闲+DMA接收GPS信号,空闲中断触发时间不对。
求助:I2S通过DMA搬运后通过USB上传上位机,转为.wav文件后声音嘈杂,音质很差,基本听不出人声
STM32F407VET6 I2S 采用纯中断接收数据的问题
关于AN2867文档的疑问
tougfx 显示问题
F429同时使用SDRAM和SRAM
CAN数据重发
littlefs系统能读写SD卡吗?
STM32F405的ADC功耗参数不理解