为什么不同厂家生产的stm32开发板对应的LED,BEEP,按键对应的GPIO引脚各不相同?而像串口这种外设对应的GPIO引脚却相同?

为什么不同厂家生产的stm32f1开发板对应的LED,BEEP,按键对应的GPIO引脚各不相同?而像串口这种外设对应的GPIO引脚却相同?难道不应该是所有外设对应的GPIO引脚都相同吗?难道LED,BEEP,按键这种不是外设吗?

led灯,按键,有源蜂鸣器等,是通过普通I0就可以驱动起来的,led,有源蜂鸣器等需要高电平或者低电平输出就可以了,按键(不同的电路)需要上拉、下拉、浮空输入(根据不同电路选择模式)就可以驱动了,所有的io口都有这个通用的简单的功能,所以每个厂家的开发板不一样,而串口等通讯属于特殊的硬件外设,需要固定的io,是固定的io口输出,所以基本一样,stm32F1单片机不止一个串口,在有些厂家的开发板有双串口什么的。如果你软件写的不错,可以写模拟串口,这样的话,你串口可以任意定义管脚。

因为LED,按键,BEEP可以用任意IO实现,而串口之类的外设只能在几组固定IO上出现,不能分配到任意IO上