芯片是STM32103ZE。SDIO的GPIO占用了UART4和UART5,偏偏这3位老大都不能重映射IO,我项目要用一个SDIO和4个串口(最好有5个串口)。UART5就不指望了,想试着看UART4能不能用。为了尽量不和UART4冲突,我小心翼翼的把SDIO设置成1位模式,但测试结果令人失望,一旦打开SDIO的时钟,那么UART4的TXD就无法使用了,但RXD却能用。不好表述,列个表吧,我的资源是这样分配的:
SDIO 的D0-> 被SDIO自己占用(SDIO设置成1位模式),正常。
SDIO 的D1->用作普通的GPIO,正常。
SDIO 的D2->用作UART4的TXD,无法使用!
SDIO 的D3->用作UART4的RXD,正常。
SDIO 的D4->用作I2C1重映射后的SCL,I2C1正常。
SDIO 的D5->用作I2C1重映射后的SDA,I2C1正常。
郁闷了,SDIO不影响UART4的RXD,也不影响I2C1,偏偏只影响UART4的TXD,这是神马道理呢,请教香主及各位看官可有高见? |