24 return(this->port == b.
port && this->pin == b.
pin);
47 HAL_GPIO_WritePin(
port,
pin,
state ? GPIO_PIN_SET : GPIO_PIN_RESET);
54 void configureOutput(uint32_t pull = GPIO_NOPULL,
bool opendrain =
false, uint32_t speed = GPIO_SPEED_FREQ_LOW){
55 GPIO_InitTypeDef GPIO_InitStruct = {0};
56 GPIO_InitStruct.Pin =
pin;
57 GPIO_InitStruct.Mode = opendrain ? GPIO_MODE_OUTPUT_OD : GPIO_MODE_OUTPUT_PP;
58 GPIO_InitStruct.Pull = pull;
59 GPIO_InitStruct.Speed = speed;
60 HAL_GPIO_Init(
port, &GPIO_InitStruct);
77 return HAL_GPIO_ReadPin(
port,
pin);
GpioPin(GPIO_TypeDef &port, uint16_t pin)
bool operator==(const GpioPin &b)
const GPIO_TypeDef * getPort() const
void write(bool state) const
OutputPin(GPIO_TypeDef &port, uint16_t pin)
void configureOutput(uint32_t pull=GPIO_NOPULL, bool opendrain=false, uint32_t speed=GPIO_SPEED_FREQ_LOW)