午夜粪车 发表于 2022-5-6 23:25

SDIO的IO口与UART4的IO口冲突

STM32F103ZE,串口1、2、3已经被使用了,需要用到UART4连接ESP8266,但是发现SDIO的IO口占用了UART4,这要怎么解决呢?

wyjie 发表于 2022-5-6 23:27

先打开SDIO的RCC,再打开串口的RCC,用UART的RXD直接当作GPIO用,模拟发送

chuxh 发表于 2022-5-6 23:29

现在 有个比较方便的工具 STM32CubeMx,用它配置配置看看。

gouguoccc 发表于 2022-5-7 07:55

IO口都是复用的啊,如果你没有用到SDIO就可以用啊。

sparrow054 发表于 2022-5-7 16:27

cube分配资源很方便,
IO复用很常见,只能二选一

zwll 发表于 2022-5-7 21:23

你是这样安排管脚的吗?
/**SDIO GPIO Configuration   
    PC8   ------> SDIO_D0
    PC12   ------> SDIO_CK
    PD2   ------> SDIO_CMD
    */

/**UART4 GPIO Configuration   
    PC10   ------> UART4_TX
    PC11   ------> UART4_RX
    */


/**USART3 GPIO Configuration   
    PB10   ------> USART3_TX
    PB11   ------> USART3_RX
    */
/**USART2 GPIO Configuration   
    PA2   ------> USART2_TX
    PA3   ------> USART2_RX
    */

   /**USART1 GPIO Configuration   
    PA9   ------> USART1_TX
    PA10   ------> USART1_RX
    */

午夜粪车 发表于 2022-5-7 21:25

对的,我是这么安排管脚

dingy 发表于 2022-5-7 21:27

从勘误手册上看,能否将U4的使用跟SDIO错开呢。

renyaq 发表于 2022-5-7 21:29

即不同时使用这两个外设。

dengdc 发表于 2022-5-7 21:31

比如使用SDIO时,关闭其时钟,相关GPIO配置成UART对应的复用配置。

renyaq 发表于 2022-5-7 21:33

嗯,反之亦然。

午夜粪车 发表于 2022-5-7 21:35


哦,那我就知道怎么回事了,多谢大家
页: [1]
查看完整版本: SDIO的IO口与UART4的IO口冲突