From ca5776aa8b3b9d38935bd3bf5cf75e4c80a10989 Mon Sep 17 00:00:00 2001 From: Holger Wirtz Date: Mon, 14 Jan 2019 10:42:18 +0100 Subject: [PATCH] Starting UI. --- MicroMDAEPiano.ino | 6 ++---- UI.cpp | 33 +++++++++++++++++++++++++++++++++ UI.h | 44 ++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 79 insertions(+), 4 deletions(-) create mode 100644 UI.cpp create mode 100644 UI.h diff --git a/MicroMDAEPiano.ino b/MicroMDAEPiano.ino index f297606..6d2c8b3 100644 --- a/MicroMDAEPiano.ino +++ b/MicroMDAEPiano.ino @@ -43,6 +43,7 @@ #include #include "Encoder4.h" #include "LiquidCrystalPlus_I2C.h" +#include "UI.h" //************************************************************************************************* @@ -83,10 +84,7 @@ AudioConnection patchCord13(volume_l, 0, pt8211_1, 0); // Objects mdaEPiano* ep; -LiquidCrystalPlus_I2C lcd(LCD_I2C_ADDRESS, LCD_CHARS, LCD_LINES); -Encoder4 enc[2] = {Encoder4(ENC_L_PIN_A, ENC_L_PIN_B), Encoder4(ENC_R_PIN_A, ENC_R_PIN_B)}; -int32_t enc_val[2] = {INITIAL_ENC_L_VALUE, INITIAL_ENC_R_VALUE}; -Bounce but[2] = {Bounce(BUT_L_PIN, BUT_DEBOUNCE_MS), Bounce(BUT_R_PIN, BUT_DEBOUNCE_MS)}; + #ifdef MIDI_DEVICE_DIN MIDI_CREATE_INSTANCE(HardwareSerial, MIDI_DEVICE_DIN, midi_serial); #endif diff --git a/UI.cpp b/UI.cpp new file mode 100644 index 0000000..3ae2852 --- /dev/null +++ b/UI.cpp @@ -0,0 +1,33 @@ +/* + MicroMDAEPiano + + MicroMDAEPiano is a port of the MDA-EPiano sound engine + (https://sourceforge.net/projects/mda-vst/) for the Teensy-3.5/3.6 with audio shield. + + (c)2019 H. Wirtz + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software Foundation, + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#include "config.h" +#include "UI.h" + +UI::UI() +{ + LiquidCrystalPlus_I2C lcd(LCD_I2C_ADDRESS, LCD_CHARS, LCD_LINES); + enc[] = {Encoder4(ENC_L_PIN_A, ENC_L_PIN_B), Encoder4(ENC_R_PIN_A, ENC_R_PIN_B)}; + enc_val[] = {INITIAL_ENC_L_VALUE, INITIAL_ENC_R_VALUE}; + but[] = {Bounce(BUT_L_PIN, BUT_DEBOUNCE_MS), Bounce(BUT_R_PIN, BUT_DEBOUNCE_MS)}; +} diff --git a/UI.h b/UI.h new file mode 100644 index 0000000..94eca72 --- /dev/null +++ b/UI.h @@ -0,0 +1,44 @@ +/* + MicroMDAEPiano + + MicroMDAEPiano is a port of the MDA-EPiano sound engine + (https://sourceforge.net/projects/mda-vst/) for the Teensy-3.5/3.6 with audio shield. + + (c)2019 H. Wirtz + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software Foundation, + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef UI_H_INCLUDED +#define UI_H_INCLUDED + +#include "config.h" +#include "LiquidCrystalPlus_I2C.h" +#include +#include "Encoder4.h" + +class UI +{ + public: + UI(); + ~UI(); + + private: + LiquidCrystalPlus_I2C lcd; + Encoder4 enc[2]; + int32_t enc_val[2]; + Bounce but[2]; +} +#endif