我是STM32和CubeMX的新手。我需要在STM32F103C8T6中创建3个UART接口和2个I2C接口。我试过了,但是i2c和uart通信都有一个公共端口,它允许我仅创建(2 uart和2 i2c)或(3 uart和1 i2c),但无法根据需要创建。如何在STM32F103C8T6中同时建立3个UART和2个I2C接口?
预先感谢...
答案 0 :(得分:3)
不能。引脚冲突无法解决。
I2C2外设必须将引脚PB10和PB11用于SDA和SCL-此外设没有重新映射。
USART3外设将这些引脚用于TX和RX。在引脚数较高的STM32F1器件上,可以将其重新映射到引脚PC10 / PC11或PD8 / PD9;但是,STM32F103C8没有这些引脚。
在STM32F103上只有两个I2C和三个USART外设,因此没有备用的I2C或USART外设。
答案 1 :(得分:1)
use hardware I2C and as many as possible hardware UARTS. For the additional ones write the software implementation. You have an example here: https://www.st.com/resource/en/application_note/dm00110292.pdf or take stm32F103 with more pins