Diego Arcila
/
Prueba_MIDI
MIDI
main.cpp@1:185dc77ef1ee, 2020-07-08 (annotated)
- Committer:
- Diego_Mbed
- Date:
- Wed Jul 08 03:33:13 2020 +0000
- Revision:
- 1:185dc77ef1ee
- Parent:
- 0:81e431d882ef
MIDI key;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Diego_Mbed | 1:185dc77ef1ee | 1 | /* |
Diego_Mbed | 1:185dc77ef1ee | 2 | * Copyright (c) 2006-2020 Arm Limited and affiliates. |
Diego_Mbed | 1:185dc77ef1ee | 3 | * SPDX-License-Identifier: Apache-2.0 |
Diego_Mbed | 1:185dc77ef1ee | 4 | */ |
Diego_Mbed | 0:81e431d882ef | 5 | #include "mbed.h" |
Diego_Mbed | 0:81e431d882ef | 6 | #include "USBMIDI.h" |
Diego_Mbed | 1:185dc77ef1ee | 7 | |
Diego_Mbed | 0:81e431d882ef | 8 | USBMIDI midi; |
Diego_Mbed | 1:185dc77ef1ee | 9 | |
Diego_Mbed | 1:185dc77ef1ee | 10 | DigitalIn nota1(D8); |
Diego_Mbed | 1:185dc77ef1ee | 11 | DigitalIn nota2(D9); |
Diego_Mbed | 1:185dc77ef1ee | 12 | DigitalIn nota3(D10); |
Diego_Mbed | 1:185dc77ef1ee | 13 | DigitalIn nota4(D11); |
Diego_Mbed | 1:185dc77ef1ee | 14 | DigitalIn nota5(D12); |
Diego_Mbed | 1:185dc77ef1ee | 15 | DigitalIn nota6(PTA17); |
Diego_Mbed | 1:185dc77ef1ee | 16 | AnalogIn escala(A0); |
Diego_Mbed | 1:185dc77ef1ee | 17 | DigitalOut myled(LED1); |
Diego_Mbed | 1:185dc77ef1ee | 18 | |
Diego_Mbed | 1:185dc77ef1ee | 19 | int fact=0; |
Diego_Mbed | 1:185dc77ef1ee | 20 | |
Diego_Mbed | 1:185dc77ef1ee | 21 | void key1(){ |
Diego_Mbed | 1:185dc77ef1ee | 22 | midi.write(MIDIMessage::NoteOn(12+fact)); |
Diego_Mbed | 1:185dc77ef1ee | 23 | myled=1; |
Diego_Mbed | 1:185dc77ef1ee | 24 | wait_ms(175); |
Diego_Mbed | 1:185dc77ef1ee | 25 | midi.write(MIDIMessage::NoteOff(12+fact)); |
Diego_Mbed | 1:185dc77ef1ee | 26 | myled=0; |
Diego_Mbed | 1:185dc77ef1ee | 27 | wait_ms(175); |
Diego_Mbed | 1:185dc77ef1ee | 28 | } |
Diego_Mbed | 1:185dc77ef1ee | 29 | |
Diego_Mbed | 1:185dc77ef1ee | 30 | void key2(){ |
Diego_Mbed | 1:185dc77ef1ee | 31 | midi.write(MIDIMessage::NoteOn(13+fact)); |
Diego_Mbed | 1:185dc77ef1ee | 32 | myled=1; |
Diego_Mbed | 1:185dc77ef1ee | 33 | wait_ms(175); |
Diego_Mbed | 1:185dc77ef1ee | 34 | midi.write(MIDIMessage::NoteOff(13+fact)); |
Diego_Mbed | 1:185dc77ef1ee | 35 | myled=0; |
Diego_Mbed | 1:185dc77ef1ee | 36 | wait_ms(175); |
Diego_Mbed | 1:185dc77ef1ee | 37 | } |
Diego_Mbed | 1:185dc77ef1ee | 38 | |
Diego_Mbed | 1:185dc77ef1ee | 39 | void key3(){ |
Diego_Mbed | 1:185dc77ef1ee | 40 | midi.write(MIDIMessage::NoteOn(14+fact)); |
Diego_Mbed | 1:185dc77ef1ee | 41 | myled=1; |
Diego_Mbed | 1:185dc77ef1ee | 42 | wait_ms(175); |
Diego_Mbed | 1:185dc77ef1ee | 43 | midi.write(MIDIMessage::NoteOff(14+fact)); |
Diego_Mbed | 1:185dc77ef1ee | 44 | myled=0; |
Diego_Mbed | 1:185dc77ef1ee | 45 | wait_ms(175); |
Diego_Mbed | 1:185dc77ef1ee | 46 | } |
Diego_Mbed | 1:185dc77ef1ee | 47 | |
Diego_Mbed | 1:185dc77ef1ee | 48 | void key4(){ |
Diego_Mbed | 1:185dc77ef1ee | 49 | midi.write(MIDIMessage::NoteOn(15+fact)); |
Diego_Mbed | 1:185dc77ef1ee | 50 | myled=1; |
Diego_Mbed | 1:185dc77ef1ee | 51 | wait_ms(175); |
Diego_Mbed | 1:185dc77ef1ee | 52 | midi.write(MIDIMessage::NoteOff(15+fact)); |
Diego_Mbed | 1:185dc77ef1ee | 53 | myled=0; |
Diego_Mbed | 1:185dc77ef1ee | 54 | wait_ms(175); |
Diego_Mbed | 1:185dc77ef1ee | 55 | } |
Diego_Mbed | 1:185dc77ef1ee | 56 | |
Diego_Mbed | 1:185dc77ef1ee | 57 | void key5(){ |
Diego_Mbed | 1:185dc77ef1ee | 58 | midi.write(MIDIMessage::NoteOn(16+fact)); |
Diego_Mbed | 1:185dc77ef1ee | 59 | myled=1; |
Diego_Mbed | 1:185dc77ef1ee | 60 | wait_ms(175); |
Diego_Mbed | 1:185dc77ef1ee | 61 | midi.write(MIDIMessage::NoteOff(16+fact)); |
Diego_Mbed | 1:185dc77ef1ee | 62 | myled=0; |
Diego_Mbed | 1:185dc77ef1ee | 63 | wait_ms(175); |
Diego_Mbed | 1:185dc77ef1ee | 64 | } |
Diego_Mbed | 1:185dc77ef1ee | 65 | |
Diego_Mbed | 1:185dc77ef1ee | 66 | void key6(){ |
Diego_Mbed | 1:185dc77ef1ee | 67 | midi.write(MIDIMessage::NoteOn(17+fact)); |
Diego_Mbed | 1:185dc77ef1ee | 68 | myled=1; |
Diego_Mbed | 1:185dc77ef1ee | 69 | wait_ms(175); |
Diego_Mbed | 1:185dc77ef1ee | 70 | midi.write(MIDIMessage::NoteOff(17+fact)); |
Diego_Mbed | 1:185dc77ef1ee | 71 | myled=0; |
Diego_Mbed | 1:185dc77ef1ee | 72 | wait_ms(175); |
Diego_Mbed | 1:185dc77ef1ee | 73 | } |
Diego_Mbed | 1:185dc77ef1ee | 74 | |
Diego_Mbed | 1:185dc77ef1ee | 75 | void Botones(){ |
Diego_Mbed | 1:185dc77ef1ee | 76 | if(nota1==1){ |
Diego_Mbed | 1:185dc77ef1ee | 77 | key1(); |
Diego_Mbed | 1:185dc77ef1ee | 78 | }else if (nota2==1) { |
Diego_Mbed | 1:185dc77ef1ee | 79 | key2(); |
Diego_Mbed | 1:185dc77ef1ee | 80 | }else if (nota3==1) { |
Diego_Mbed | 1:185dc77ef1ee | 81 | key3(); |
Diego_Mbed | 1:185dc77ef1ee | 82 | }else if (nota4==1) { |
Diego_Mbed | 1:185dc77ef1ee | 83 | key4(); |
Diego_Mbed | 1:185dc77ef1ee | 84 | }else if (nota5==1) { |
Diego_Mbed | 1:185dc77ef1ee | 85 | key5(); |
Diego_Mbed | 1:185dc77ef1ee | 86 | }else if (nota6==1) { |
Diego_Mbed | 1:185dc77ef1ee | 87 | key6(); |
Diego_Mbed | 1:185dc77ef1ee | 88 | }else{ |
Diego_Mbed | 1:185dc77ef1ee | 89 | midi.write(MIDIMessage::NoteOff(57)); |
Diego_Mbed | 0:81e431d882ef | 90 | } |
Diego_Mbed | 0:81e431d882ef | 91 | } |
Diego_Mbed | 1:185dc77ef1ee | 92 | |
Diego_Mbed | 1:185dc77ef1ee | 93 | |
Diego_Mbed | 1:185dc77ef1ee | 94 | |
Diego_Mbed | 1:185dc77ef1ee | 95 | int main(){ |
Diego_Mbed | 1:185dc77ef1ee | 96 | |
Diego_Mbed | 1:185dc77ef1ee | 97 | while (1){ |
Diego_Mbed | 1:185dc77ef1ee | 98 | fact=escala.read()*64; |
Diego_Mbed | 1:185dc77ef1ee | 99 | Botones(); |
Diego_Mbed | 0:81e431d882ef | 100 | } |
Diego_Mbed | 0:81e431d882ef | 101 | } |