message: Move gpio helper functions
diff: @@ -113,4 +113,50 @@ float our_arm_cos_f32(float x);
  }
  #endif
  +
  +#include "gpio.h"
  +constexpr GPIO_TypeDef* get_gpio_port_by_pin(uint16_t GPIO_pin){
  + switch(GPIO_pin){
  + case 1: return GPIO_1_GPIO_Port; break;
  + case 2: return GPIO_2_GPIO_Port; break;
  + case 3: return GPIO_3_GPIO_Port; break;
  + case 4: return GPIO_4_GPIO_Port; break;
  +#ifdef GPIO_5_GPIO_Port
  + case 5: return GPIO_5_GPIO_Port; break;
  +#endif
  +#ifdef GPIO_6_GPIO_Port
  + case 6: return GPIO_6_GPIO_Port; break;
  +#endif
  +#ifdef GPIO_7_GPIO_Port
  + case 7: return GPIO_7_GPIO_Port; break;
  +#endif
  +#ifdef GPIO_8_GPIO_Port
  + case 8: return GPIO_8_GPIO_Port; break;
  +#endif
  + default: return GPIO_1_GPIO_Port;
  + }
  +}
  +
  +constexpr uint16_t get_gpio_pin_by_pin(uint16_t GPIO_pin){
  + switch(GPIO_pin){
  + case 1: return GPIO_1_Pin; break;
  + case 2: return GPIO_2_Pin; break;
  + case 3: return GPIO_3_Pin; break;
  + case 4: return GPIO_4_Pin; break;
  +#ifdef GPIO_5_Pin
  + case 5: return GPIO_5_Pin; break;
  +#endif
  +#ifdef GPIO_6_Pin
  + case 6: return GPIO_6_Pin; break;
  +#endif
  +#ifdef GPIO_7_Pin
  + case 7: return GPIO_7_Pin; break;
  +#endif
  +#ifdef GPIO_8_Pin
  + case 8: return GPIO_8_Pin; break;
  +#endif
  + default: return GPIO_1_Pin;
  + }
  +}
  +
  #endif //__UTILS_H
  