diff --git a/midi2cv/drivers/gpio.cc b/midi2cv/drivers/gpio.cc index 6185578..191df01 100644 --- a/midi2cv/drivers/gpio.cc +++ b/midi2cv/drivers/gpio.cc @@ -1,11 +1,10 @@ #include "gpio.h" -#include +#include + void GPIO::Init() { - gpio_mode_setup(0, 0, 0, 0); } - -void GPIO::Write() { +void GPIO::Write(GPIO_TypeDef* port, uint16_t pin, bool state) { } diff --git a/midi2cv/drivers/gpio.h b/midi2cv/drivers/gpio.h index c3be452..a890880 100644 --- a/midi2cv/drivers/gpio.h +++ b/midi2cv/drivers/gpio.h @@ -3,6 +3,37 @@ #include "stmlib/stmlib.h" +#include + +#define PORT_RST_OLED GPIOB +#define PIN_RST_OLED GPIO_Pin_0 +#define PORT_SS_DAC0 GPIOB +#define PIN_SS_DAC0 GPIO_Pin_6 +#define PORT_SS_DAC1 GPIOB +#define PIN_SS_DAC1 GPIO_Pin_7 +#define PORT_RST_USB GPIOB +#define PIN_RST_USB GPIO_Pin_8 +#define PORT_SS_USB GPIOB +#define PIN_SS_USB GPIO_Pin_9 +#define PORT_SS_OLED GPIOB +#define PIN_SS_OLED GPIO_Pin_11 +#define PORT_SDC_OLED GPIOB +#define PIN_SDC_OLED GPIO_Pin_12 + +#define PORT_GATE_OUT_1 GPIOA +#define PIN_GATE_OUT_1 GPIO_Pin_0 +#define PORT_GATE_OUT_2 GPIOA +#define PIN_GATE_OUT_2 GPIO_Pin_1 +#define PORT_GATE_OUT_3 GPIOA +#define PIN_GATE_OUT_3 GPIO_Pin_2 +#define PORT_GATE_OUT_4 GPIOA +#define PIN_GATE_OUT_4 GPIO_Pin_3 +#define PORT_GATE_OUT_5 GPIOA +#define PIN_GATE_OUT_5 GPIO_Pin_4 +#define PORT_GATE_OUT_6 GPIOA +#define PIN_GATE_OUT_6 GPIO_Pin_5 + +#define GPIO_PIN(x) PORT_##x, PIN_##x class GPIO { public: @@ -10,7 +41,7 @@ class GPIO { ~GPIO() {} void Init(); - void Write(); + void Write(GPIO_TypeDef* port, uint16_t pin, bool state); private: DISALLOW_COPY_AND_ASSIGN(GPIO); }; diff --git a/stmlib b/stmlib index 035540a..3394699 160000 --- a/stmlib +++ b/stmlib @@ -1 +1 @@ -Subproject commit 035540af5f0877c3246d28bd952bf2316e65788b +Subproject commit 3394699e1046c5eef6269db87e965c788a9ebe25