|
|
@@ -21,22 +21,28 @@ def main():
|
|
|
adc_pin = 0
|
|
|
adc = ADC(adc_pin)
|
|
|
|
|
|
+ but = machine.Pin(0, machine.Pin.IN, machine.Pin.PULL_UP)
|
|
|
# wheel = PitchWheel(adc, size=128)
|
|
|
- wheel = PitchWheel(adc.read, size=6)
|
|
|
- but = StatePin(machine.Pin(0, machine.Pin.IN, machine.Pin.PULL_UP).value)
|
|
|
- buts = [
|
|
|
- StatePin(machine.Pin(12, machine.Pin.IN, machine.Pin.PULL_UP).value),
|
|
|
- StatePin(machine.Pin(13, machine.Pin.IN, machine.Pin.PULL_UP).value),
|
|
|
- StatePin(machine.Pin(14, machine.Pin.IN, machine.Pin.PULL_UP).value),
|
|
|
- but,
|
|
|
+ pins = [
|
|
|
+ machine.Pin(12, machine.Pin.OUT),
|
|
|
+ machine.Pin(14, machine.Pin.OUT),
|
|
|
+ machine.Pin(4 , machine.Pin.OUT),
|
|
|
+ machine.Pin(5 , machine.Pin.OUT),
|
|
|
]
|
|
|
+ volume = PitchWheel(adc.read, size=128)
|
|
|
+ volume.pins = pins
|
|
|
+ volume.values = [1,0,0,0]
|
|
|
+
|
|
|
+ modeswitch = PitchWheel(adc.read, size=6)
|
|
|
+ modeswitch.pins = pins
|
|
|
+ modeswitch.values = [0,0,0,0]
|
|
|
|
|
|
reset_midi()
|
|
|
print("\nWaiting for Interrupt....")
|
|
|
time.sleep(3)
|
|
|
|
|
|
|
|
|
- if but.pin() == 1:
|
|
|
+ if but.value() == 1:
|
|
|
DEBUG = 0
|
|
|
else:
|
|
|
DEBUG = 1
|
|
|
@@ -55,21 +61,11 @@ def main():
|
|
|
# midiout.control_change(constants_min.LEGATO_ONOFF, 0)
|
|
|
# midiout.control_change(constants_min.LEGATO_ONOFF, 127)
|
|
|
|
|
|
-
|
|
|
- buts_cb = [
|
|
|
- lambda v: midi_note(midiout, v, note=48),
|
|
|
- lambda v: midi_note(midiout, v, note=50),
|
|
|
- lambda v: midi_note(midiout, v, note=52),
|
|
|
- lambda v: midi_note(midiout, v, note=53, led = led),
|
|
|
- ]
|
|
|
-
|
|
|
# # Send all sound off to prevent hanging notes
|
|
|
while True:
|
|
|
- time.sleep_ms(5)
|
|
|
- for but,cb in zip(buts, buts_cb):
|
|
|
- but.poll(cb)
|
|
|
- # wheel.poll(lambda v:midiout.volume(v))
|
|
|
- wheel.poll(lambda v:midiout.program_change(v))
|
|
|
+ time.sleep_ms(1)
|
|
|
+ modeswitch.poll(lambda v:midiout.program_change(v))
|
|
|
+ volume.poll(lambda v:midiout.volume(v))
|
|
|
# wheel.poll(lambda v:midiout.channel_message(constants_min.PROGRAM_CHANGE,(v+1)))
|
|
|
# wheel.poll(midiout.pitch_bend)
|
|
|
|