def main(): import pyb serial = pyb.USB_VCP() midi = MidiOut(serial, channel=1) switch = pyb.Switch() if hasattr(pyb, 'Accel'): accel = pyb.Accel() SCALE = 1.27 else: from staccel import STAccel accel = STAccel() SCALE = 127 while True: while not switch(): pyb.delay(10) note = abs(int(accel.x() * SCALE)) velocity = abs(int(accel.y() * SCALE)) midi.note_on(note, velocity) while switch(): pyb.delay(50) midi.note_off(note)
def main(): sw_state = False led = pyb.LED(1) switch = pyb.Switch() switch.callback(set_sw_state) accel = STAccel() hid = pyb.USB_HID() while True: if sw_state: x, y, z = accel.xyz() hid.send((0, int(x * MAG), int(-y * MAG), 0)) pyb.delay(int(1000 / FREQ))
def led_angle(): # make LED objects l1 = pyb.LED(1) l2 = pyb.LED(2) accel = STAccel() while True: # get x-axis x = accel.x() * 50 # turn on LEDs depending on angle if x < -10: l2.on() l1.off() elif x > 10: l1.on() l2.off() else: l1.off() l2.off() # delay so that loop runs at at 1/50ms = 20Hz pyb.delay(50)
import pyb from pyb import Pin from staccel import STAccel import math accel = STAccel() click_threshold = 1.5 right_threshold = 0.4 left_threshold = -right_threshold up_threshold = 0.4 down_threshold = -up_threshold reverse_threshold = -0.4 def isReversed(z): if z <= reverse_threshold: return True else: return False def isClicked(z): if z > click_threshold: return True else: return False def getDiff(x, y): x_diff = 0