最近在自学stm32开发,学习了GPIO的输出,对输出的复用模式存在疑惑例如推挽输出和复用推挽输出,对一些关键术语存在疑惑,例如内部外设,既然是外设怎么又在内部了?
看了一些文档也没解释,网上搜各种文档,看到后来顿悟,所谓外设是对于CPU核心来说的,所谓内部外设是stm32中预置的cpu核心之外的如USART1之类的设备,那么对于复用推挽输出则是这个端口被内部外设复用,这也就是为什么初始化USART1时, GPIO_Mode 必须设置为 GPIO_Mode_AF_PP ,如果设置为普通推挽输出 GPIO_Mode_Out_PP 就无效,因为普通推挽输出由CPU编程驱动,复用则这个端口的输出由USART1驱动。
另外,MCU内的复用几乎都是指被内部外设复用。
以上所得不知是否正确?继续学习。