![](/media/cache/profiles/3cef5274bcca8c30f79c09a2aebc8669.jpg.50x50_q85.jpg)
A simple touch sensor that sends a message to computer when it notices touch. I'm using a simple voltage divider with 10k resistor and body impedance.
main.cpp@1:7ed7d128d225, 2014-01-30 (annotated)
- Committer:
- Vekotin
- Date:
- Thu Jan 30 06:13:55 2014 +0000
- Revision:
- 1:7ed7d128d225
- Parent:
- 0:9720755e6762
- Child:
- 2:30d2ced09088
egw
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Vekotin | 0:9720755e6762 | 1 | //Almighty Vekotin v.1.0 |
Vekotin | 0:9720755e6762 | 2 | |
Vekotin | 0:9720755e6762 | 3 | #include "mbed.h" |
Vekotin | 1:7ed7d128d225 | 4 | #include "USBMIDI.h" |
Vekotin | 1:7ed7d128d225 | 5 | #define A_key (0x1c) |
Vekotin | 1:7ed7d128d225 | 6 | |
Vekotin | 1:7ed7d128d225 | 7 | DigitalOut led(LED1); |
Vekotin | 1:7ed7d128d225 | 8 | |
Vekotin | 1:7ed7d128d225 | 9 | DigitalIn key[9] = {p22, p23, p24, p25, p26, p27, p28, p29, p30}; //inputit |
Vekotin | 1:7ed7d128d225 | 10 | int input = 0; |
Vekotin | 1:7ed7d128d225 | 11 | int i; |
Vekotin | 1:7ed7d128d225 | 12 | |
Vekotin | 0:9720755e6762 | 13 | Serial pc(USBTX, USBRX); |
Vekotin | 1:7ed7d128d225 | 14 | |
Vekotin | 1:7ed7d128d225 | 15 | //USBMIDI midi; |
Vekotin | 0:9720755e6762 | 16 | |
Vekotin | 0:9720755e6762 | 17 | int main() { |
Vekotin | 0:9720755e6762 | 18 | while (1){ |
Vekotin | 0:9720755e6762 | 19 | |
Vekotin | 1:7ed7d128d225 | 20 | /* for (i=0; i<9; i++) { |
Vekotin | 1:7ed7d128d225 | 21 | input = key[i].read(); |
Vekotin | 0:9720755e6762 | 22 | } |
Vekotin | 0:9720755e6762 | 23 | |
Vekotin | 1:7ed7d128d225 | 24 | switch (input) { |
Vekotin | 1:7ed7d128d225 | 25 | case 0: |
Vekotin | 1:7ed7d128d225 | 26 | pc.printf("Note 0 ON\n\r"); |
Vekotin | 1:7ed7d128d225 | 27 | wait(0.25); |
Vekotin | 1:7ed7d128d225 | 28 | pc.printf("Note 0 OFF\n\r"); |
Vekotin | 1:7ed7d128d225 | 29 | wait(0.25); |
Vekotin | 1:7ed7d128d225 | 30 | |
Vekotin | 1:7ed7d128d225 | 31 | case 1: |
Vekotin | 1:7ed7d128d225 | 32 | input = key[1].read(); |
Vekotin | 1:7ed7d128d225 | 33 | |
Vekotin | 1:7ed7d128d225 | 34 | pc.printf("Note 1 ON\n\r"); |
Vekotin | 1:7ed7d128d225 | 35 | wait(0.25); |
Vekotin | 1:7ed7d128d225 | 36 | pc.printf("Note 1 OFF\n\r"); |
Vekotin | 1:7ed7d128d225 | 37 | wait(0.25); |
Vekotin | 1:7ed7d128d225 | 38 | } */ |
Vekotin | 1:7ed7d128d225 | 39 | |
Vekotin | 1:7ed7d128d225 | 40 | |
Vekotin | 1:7ed7d128d225 | 41 | for (i=0; i<9; i++) { |
Vekotin | 1:7ed7d128d225 | 42 | |
Vekotin | 1:7ed7d128d225 | 43 | input = key[i].read(); |
Vekotin | 1:7ed7d128d225 | 44 | |
Vekotin | 1:7ed7d128d225 | 45 | if (!input) { //MIDIT |
Vekotin | 1:7ed7d128d225 | 46 | midi.write(MIDIMessage::NoteOn(48+i)); |
Vekotin | 1:7ed7d128d225 | 47 | wait(0.25); |
Vekotin | 1:7ed7d128d225 | 48 | midi.write(MIDIMessage::NoteOff(48+i)); |
Vekotin | 1:7ed7d128d225 | 49 | wait(0.25); |
Vekotin | 1:7ed7d128d225 | 50 | } |
Vekotin | 1:7ed7d128d225 | 51 | |
Vekotin | 1:7ed7d128d225 | 52 | |
Vekotin | 1:7ed7d128d225 | 53 | /* pc.printf("Digital input %d", i); //terminal viesti |
Vekotin | 1:7ed7d128d225 | 54 | pc.printf(": %d\n\r", key[i].read()); |
Vekotin | 1:7ed7d128d225 | 55 | } */ |
Vekotin | 1:7ed7d128d225 | 56 | |
Vekotin | 1:7ed7d128d225 | 57 | /* pc.printf("\n\r"); |
Vekotin | 1:7ed7d128d225 | 58 | wait(1); */ |
Vekotin | 0:9720755e6762 | 59 | } |
Vekotin | 0:9720755e6762 | 60 | } |