
问题是这样,使用了两个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的情况。 |
分时复用,并发是不切实际的。 |
stm32支持canfd和dma结合使用吗
NUCLEO-F401RE板卡,连接USB,在KEIL下可以找到ST-LINK仿真器,也可以下载代码。在电脑上看不到NODE_F401RE的磁盘,有知道是什么原因?
程序进入HardFault_Handler求解
STM32CUBEIDE
This example describes how to configure the FMC controller to access the SDRAM memory in low power mode
STM32407 使用串口闲时中断+DMA方式接收最大接收字节是多少
USB_CDC_HOST 标准库里边USBH_DeAllocate_AllChannel()函数的疑问?
STM32部署机器学习算法硬件至少要使用哪个系列的芯片?
重新配置SCB->VTOR = 0x08010000后,再次复位,程序异常,发现不进tick中断,IIC读数卡死在准备查询循环中。
uboot初始化IIC1,跳转到应用程序中后,先读一字节AT24C04的数据,然后初始化IIC1(未复位),再读一字节AT24C04时,有概率一直检测到IIC处于busy状态。