Dependents:   mbed-TFT-example-NCS36510 mbed-Accelerometer-example-NCS36510 mbed-Accelerometer-example-NCS36510

Committer:
jacobjohnson
Date:
Mon Feb 27 17:45:05 2017 +0000
Revision:
1:f30bdcd2b33b
Parent:
0:098463de4c5d
changed the inputscale from 1 to 7 in analogin_api.c.  This will need to be changed later, and accessed from the main level, but for now this allows the  adc to read a value from 0 to 3.7V, instead of just up to 1V.;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
group-onsemi 0:098463de4c5d 1 from __future__ import print_function
group-onsemi 0:098463de4c5d 2 import sys
group-onsemi 0:098463de4c5d 3 import re
group-onsemi 0:098463de4c5d 4 import time
group-onsemi 0:098463de4c5d 5 import mido
group-onsemi 0:098463de4c5d 6 from mido import Message
group-onsemi 0:098463de4c5d 7
group-onsemi 0:098463de4c5d 8
group-onsemi 0:098463de4c5d 9 def test_midi_in(port):
group-onsemi 0:098463de4c5d 10 expected_messages_count=0
group-onsemi 0:098463de4c5d 11 while expected_messages_count < 7:
group-onsemi 0:098463de4c5d 12 for message in port.iter_pending():
group-onsemi 0:098463de4c5d 13 if message.type in ('note_on', 'note_off', 'program_change', 'sysex'):
group-onsemi 0:098463de4c5d 14 yield message
group-onsemi 0:098463de4c5d 15 expected_messages_count+=1
group-onsemi 0:098463de4c5d 16 time.sleep(0.1)
group-onsemi 0:098463de4c5d 17
group-onsemi 0:098463de4c5d 18 def test_midi_loopback(input_port):
group-onsemi 0:098463de4c5d 19 expected_messages_count=0
group-onsemi 0:098463de4c5d 20 while expected_messages_count < 1:
group-onsemi 0:098463de4c5d 21 for message in input_port.iter_pending():
group-onsemi 0:098463de4c5d 22 print('Test MIDI OUT loopback received {}'.format(message.hex()))
group-onsemi 0:098463de4c5d 23 expected_messages_count+=1
group-onsemi 0:098463de4c5d 24
group-onsemi 0:098463de4c5d 25 def test_midi_out_loopback(output_port,input_port):
group-onsemi 0:098463de4c5d 26 print("Test MIDI OUT loopback")
group-onsemi 0:098463de4c5d 27 output_port.send(Message('program_change', program=1))
group-onsemi 0:098463de4c5d 28 test_midi_loopback(input_port)
group-onsemi 0:098463de4c5d 29
group-onsemi 0:098463de4c5d 30 output_port.send(Message('note_on', note=21))
group-onsemi 0:098463de4c5d 31 test_midi_loopback(input_port)
group-onsemi 0:098463de4c5d 32
group-onsemi 0:098463de4c5d 33 output_port.send(Message('note_off', note=21))
group-onsemi 0:098463de4c5d 34 test_midi_loopback(input_port)
group-onsemi 0:098463de4c5d 35
group-onsemi 0:098463de4c5d 36 output_port.send(Message('sysex', data=[0x7E,0x7F,0x09,0x01]))
group-onsemi 0:098463de4c5d 37 test_midi_loopback(input_port)
group-onsemi 0:098463de4c5d 38
group-onsemi 0:098463de4c5d 39 output_port.send(Message('sysex', data=[0x7F,0x7F,0x04,0x01,0x7F,0x7F]))
group-onsemi 0:098463de4c5d 40 test_midi_loopback(input_port)
group-onsemi 0:098463de4c5d 41
group-onsemi 0:098463de4c5d 42 output_port.send(Message('sysex', data=[0x41,0x10,0x42,0x12,0x40,0x00,0x7F,0x00,0x41]))
group-onsemi 0:098463de4c5d 43 test_midi_loopback(input_port)
group-onsemi 0:098463de4c5d 44
group-onsemi 0:098463de4c5d 45 output_port.send(Message('sysex', data=[0x41,0x10,0x42,0x12,0x40,0x00,0x04,0x7F,0x3D]))
group-onsemi 0:098463de4c5d 46 test_midi_loopback(input_port)
group-onsemi 0:098463de4c5d 47
group-onsemi 0:098463de4c5d 48 portname=""
group-onsemi 0:098463de4c5d 49
group-onsemi 0:098463de4c5d 50 while portname=="":
group-onsemi 0:098463de4c5d 51 print("Wait for MIDI IN plug ...")
group-onsemi 0:098463de4c5d 52 for name in mido.get_input_names():
group-onsemi 0:098463de4c5d 53 matchObj = re.match( r'Mbed', name)
group-onsemi 0:098463de4c5d 54
group-onsemi 0:098463de4c5d 55 if matchObj:
group-onsemi 0:098463de4c5d 56 portname=name
group-onsemi 0:098463de4c5d 57 time.sleep( 1 )
group-onsemi 0:098463de4c5d 58
group-onsemi 0:098463de4c5d 59 try:
group-onsemi 0:098463de4c5d 60 input_port = mido.open_input(portname)
group-onsemi 0:098463de4c5d 61 output_port = mido.open_output(portname)
group-onsemi 0:098463de4c5d 62
group-onsemi 0:098463de4c5d 63 print('Using {}'.format(input_port))
group-onsemi 0:098463de4c5d 64
group-onsemi 0:098463de4c5d 65 print("Test MIDI IN")
group-onsemi 0:098463de4c5d 66
group-onsemi 0:098463de4c5d 67 for message in test_midi_in(input_port):
group-onsemi 0:098463de4c5d 68 print('Test MIDI IN received {}'.format(message.hex()))
group-onsemi 0:098463de4c5d 69
group-onsemi 0:098463de4c5d 70 test_midi_out_loopback(output_port,input_port)
group-onsemi 0:098463de4c5d 71 except KeyboardInterrupt:
group-onsemi 0:098463de4c5d 72 pass