在STM32标准外设库中,我们需要配置GPIO。
但是有 3 个功能我不确定如何配置它们;
- GPIO_InitStructure.GPIO_Speed
- GPIO_InitStructure.GPIO_OType
- GPIO_InitStructure.GPIO_PuPd
在GPIO_Speed中,有 4 个设置可供选择
GPIO_Speed_2MHz /*!< Low speed */
GPIO_Speed_25MHz /*!< Medium speed */
GPIO_Speed_50MHz /*!< Fast speed */
GPIO_Speed_100MHz
我怎么知道我选择哪种速度?使用高速或低速有什么优点或缺点?(例如:功耗?)
在GPIO_OType中,有 2 个设置可供选择
GPIO_OType_PP // Push pull
GPIO_OType_OD // Open drain
如何知道选择哪个?什么是开漏和推拉?
在GPIO_PuPd中,有 3 个设置可供选择
GPIO_PuPd_NOPULL // No pull
GPIO_PuPd_UP // Pull up
GPIO_PuPd_DOWN // Pull down
我认为这个设置与推拉的初始设置有关。