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.

Dependencies:   mbed

Committer:
tanssisatu
Date:
Thu Feb 06 07:25:45 2014 +0000
Revision:
3:71bc9b90ff65
Parent:
2:30d2ced09088
Child:
4:9afa1927a7bb
valmis vol1

Who changed what in which revision?

UserRevisionLine numberNew 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 DigitalIn key[9] = {p22, p23, p24, p25, p26, p27, p28, p29, p30}; //inputit
Vekotin 1:7ed7d128d225 9 int input = 0;
tanssisatu 3:71bc9b90ff65 10 int painetut_nappaimet[9] = {0};
Vekotin 1:7ed7d128d225 11
Vekotin 1:7ed7d128d225 12
tanssisatu 3:71bc9b90ff65 13 Serial pc(USBTX, USBRX); //Debuggaus päällä
tanssisatu 3:71bc9b90ff65 14 //USBMIDI midi; // Midi päällä
tanssisatu 3:71bc9b90ff65 15
tanssisatu 3:71bc9b90ff65 16 int main()
tanssisatu 3:71bc9b90ff65 17 {
tanssisatu 3:71bc9b90ff65 18 while (1)
tanssisatu 3:71bc9b90ff65 19 {
tanssisatu 3:71bc9b90ff65 20
tanssisatu 3:71bc9b90ff65 21 // Tallentaa painallukset
tanssisatu 3:71bc9b90ff65 22 for (i = 0; i < 9; i++) {
tanssisatu 3:71bc9b90ff65 23 if (input = key[i].read())
tanssisatu 3:71bc9b90ff65 24 painetut_nappaimet[i] = 1;
tanssisatu 2:30d2ced09088 25 }
tanssisatu 3:71bc9b90ff65 26 // Lähettään painallusten perusteella midimessagen
tanssisatu 3:71bc9b90ff65 27 for (i = 0; i < 9; i++) {
tanssisatu 3:71bc9b90ff65 28 if (painetut_nappaimet[i])
tanssisatu 3:71bc9b90ff65 29 //midi.write(MIDIMessage::Noteon(48 + i));
tanssisatu 3:71bc9b90ff65 30 // Debuggaus puttyyn
tanssisatu 3:71bc9b90ff65 31 pc.printf("Digital input %d", i); //terminal viesti
tanssisatu 3:71bc9b90ff65 32 pc.printf(": %d\n\r", key[i].read());
tanssisatu 3:71bc9b90ff65 33 }
tanssisatu 3:71bc9b90ff65 34 // Lopettaa midimessagen lähettämisen
tanssisatu 3:71bc9b90ff65 35 for (i = 0; i < 9; i++) {
tanssisatu 3:71bc9b90ff65 36 if (painetut_nappaimet[i])
tanssisatu 3:71bc9b90ff65 37 wait(1);//midi.write(MIDIMessage::NoteOff(48 + i));
tanssisatu 3:71bc9b90ff65 38 }
tanssisatu 3:71bc9b90ff65 39 }
tanssisatu 3:71bc9b90ff65 40 }