В стандартной периферийной библиотеке 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
Я думаю, что эти настройки связаны с начальной настройкой двухтактного.