Information
buttonsPressed |= 0x02;
}
else{
// save that this button DOWN was released
buttonsPressed &= 0xFD;
}
}
/*
* GPIO, OLED initialize
* load material profile
* preset timer
*/
void setup() {
// initialize OLED display
ssd1306_128x32_i2c_init();
ssd1306_clearScreen();
// initialize outputs
pinMode(LED_NANO, OUTPUT);
pinMode(MOTOR_DIR, OUTPUT);
pinMode(MOTOR_PWM, OUTPUT);
pinMode(MOTOR_SLEEP, OUTPUT);
pinMode(HEATER_EN, OUTPUT);
// initialize inputs
pinMode(BTN_UP, INPUT_PULLUP);
pinMode(BTN_DOWN, INPUT_PULLUP);
pinMode(BTN_EXT, INPUT_PULLUP);
pinMode(BTN_REV, INPUT_PULLUP);
// load material profile
loadMaterial(materialID);
// preset timer period every 50 ms and call timerAction function when time expire
timer.Every(50, timerAction);










