Control Surface
main
MIDI Control Surface library for Arduino
Toggle main menu visibility
Loading...
Searching...
No Matches
Encoder-Selector-Bank.ino
Encoder-Selector-Bank
https://github.com/tttapa/Control-Surface/issues/66
#include <
Control_Surface.h
>
// MIDI Interface to use
USBMIDI_Interface
midi;
// Bank with 120 settings in total, increments of 1 address at a time
Bank<120>
bank {1};
// A rotary encoder to select one of the 120 bank settings
EncoderSelector<120>
selector {
bank,
// bank to manage
{2, 3},
// encoder pins
4,
// encoder pulses per step
Wrap::Clamp
,
// clamp or wrap around when going beyond maximum/minimum setting
};
// The potentiometer that sends MIDI messages
// the address (controller number) depends on the bank setting
Bankable::CCPotentiometer
potentiometer {
{bank,
BankType::ChangeAddress
},
// Bank configuration
A0,
// Analog pin for potentiometer
{0x00,
Channel_1
},
// Base CC address
};
void
setup() {
Control_Surface
.begin();
}
void
loop() {
Control_Surface
.loop();
// You can get the bank number using:
// bank.getSelection();
}
ChangeAddress
@ ChangeAddress
Change the offset of the address (i.e.
Definition
BankConfig.hpp:17
Channel_1
constexpr Channel Channel_1
Definition
Channel.hpp:118
Control_Surface.h
The main header file that includes all Control-Surface header files.
Control_Surface
Control_Surface_ & Control_Surface
A predefined instance of the Control Surface to use in the Arduino sketches.
Definition
Control_Surface_Class.cpp:338
Wrap::Clamp
@ Clamp
When the maximum (minimum) setting is reached, clamp to the maximum (minimum) setting.
Definition
Selector.hpp:15
Bank
A class that groups Bankable MIDI Output Elements and Bankable MIDI Input Elements,...
Definition
Bank.hpp:94
Bankable::CCPotentiometer
A class of MIDIOutputElements that read the analog input from a potentiometer or fader,...
Definition
Bankable/CCPotentiometer.hpp:23
EncoderSelector
Selector that reads from a rotary encoder.
Definition
EncoderSelector.hpp:81
USBMIDI_Interface
A class for MIDI interfaces sending MIDI messages over a USB MIDI connection.
Definition
USBMIDI_Interface.hpp:165
Generated by
1.17.0