Pinconfig types draft

dev_pinconfig
unicod 2 days ago
parent 6e41a5154f
commit 42fa449107

@ -1,4 +1,6 @@
#include <MIDI.h>
#include "pincfg.h"
#include "TimedPin.h"
#include "ui.h"
@ -129,9 +131,21 @@ void MidiCCHandler(byte channel, byte ctrl_no, byte val) {
}
// -----------------------------------------------------------------------------
PinCfg Pins[2];
/***************************************************************************//**
* @brief Initialize pins according pin config settings
*******************************************************************************/
void PinInit() {
Pins[0].Mode = PIN_MODE_DIG_IN;
Pins[0].CfgDigIn.Pullup = PIN_MODE_DIG_IN;
}
// -----------------------------------------------------------------------------
void setup() {
PinInit();
pinMode(pinBtnInc1, INPUT_PULLUP);
pinMode(pinBtnDec1, INPUT_PULLUP);
pinMode(pinBtnInc2, INPUT_PULLUP);

@ -0,0 +1,36 @@
#ifndef __PINCFG_H__
#define __PINCFG_H__
typedef enum: uint8_t {
PIN_MODE_DIG_IN,
PIN_MODE_ANA_IN,
PIN_MODE_DIG_OUT,
PIN_MODE_ANA_OUT
} PIN_MODES;
typedef enum: uint8_t {
PULLUP_OFF,
PULLUP_ON
} PULLUP_MODES;
struct PinCfg {
PIN_MODES Mode;
union {
struct {
PULLUP_MODES Pullup;
} CfgDigIn;
struct {
uint8_t todo;
} CfgAnaIn;
struct {
uint8_t todo;
} CfgDigOut;
struct {
uint8_t todo;
} CfgAnaOut;
};
};
#endif
Loading…
Cancel
Save