19 lines
574 B
C
19 lines
574 B
C
#ifndef HAL_GPIO
|
|
#define HAL_GPIO
|
|
|
|
#include "stm32g431xx.h"
|
|
|
|
// I/O MODES
|
|
#define INPUT_MODE ((uint32_t) 0x00) // input mode
|
|
#define OUTPUT_MODE ((uint32_t) 0x01) // general purpose output mode
|
|
#define ALT_FUNC_MODE ((uint32_t) 0x02) // alternative function mode
|
|
#define ANALOG_MODE ((uint32_t) 0x03) // alanog mode (reset state)
|
|
|
|
// CLOCK ENABLING
|
|
#define GPIO_CLOCK_EN_GPIOA (RCC->AHB2ENR |= (1 << 0))
|
|
#define GPIO_CLOCK_EN_GPIOB (RCC->AHB2ENR |= (1 << 1))
|
|
#define GPIO_CLOCK_EN_GPIOC (RCC->AHB2ENR |= (1 << 2))
|
|
|
|
|
|
|
|
#endif |