test

Dependencies:   SDFileSystem USBHost_SAMPLE mbed

Fork of Production_version1_0 by Yu Morinaga

Committer:
SampleProgram
Date:
Tue Nov 07 00:25:56 2017 +0000
Revision:
2:c34453addfec
Parent:
0:e91bd159d16f
test;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Login10 0:e91bd159d16f 1 #include "mbed.h"
Login10 0:e91bd159d16f 2 #include "USBHostKeyboard.h"
Login10 0:e91bd159d16f 3 #include "SDFileSystem.h"
Login10 0:e91bd159d16f 4
Login10 0:e91bd159d16f 5 DigitalOut led(LED1);
Login10 0:e91bd159d16f 6 SDFileSystem sd(p5, p6, p7, p8, "sd");
Login10 0:e91bd159d16f 7 int i=0;
Login10 0:e91bd159d16f 8
Login10 0:e91bd159d16f 9 void onKey(uint8_t key) {
SampleProgram 2:c34453addfec 10 printf("Key: 0x%x : %c\r\n", key, key);
Login10 0:e91bd159d16f 11
SampleProgram 2:c34453addfec 12 ++i;
Login10 0:e91bd159d16f 13 FILE *fp;
SampleProgram 2:c34453addfec 14 fp = fopen("/sd/keylog/keylog.csv", "a");
SampleProgram 2:c34453addfec 15 fprintf(fp, "Keydata[%d], :,0x%x,:,%c\r\n", i, key, key);
Login10 0:e91bd159d16f 16 fclose(fp);
SampleProgram 2:c34453addfec 17
Login10 0:e91bd159d16f 18 }
Login10 0:e91bd159d16f 19
Login10 0:e91bd159d16f 20 void keyboard_task(void const *) {
Login10 0:e91bd159d16f 21
Login10 0:e91bd159d16f 22 USBHostKeyboard keyboard;
Login10 0:e91bd159d16f 23
Login10 0:e91bd159d16f 24 while(1) {
Login10 0:e91bd159d16f 25 // try to connect a USB keyboard
Login10 0:e91bd159d16f 26 while(!keyboard.connect())
Login10 0:e91bd159d16f 27 Thread::wait(500);
Login10 0:e91bd159d16f 28
Login10 0:e91bd159d16f 29 // when connected, attach handler called on keyboard event
Login10 0:e91bd159d16f 30 keyboard.attach(onKey);
Login10 0:e91bd159d16f 31
Login10 0:e91bd159d16f 32 // wait until the keyboard is disconnected
Login10 0:e91bd159d16f 33 while(keyboard.connected())
Login10 0:e91bd159d16f 34 Thread::wait(500);
Login10 0:e91bd159d16f 35 }
Login10 0:e91bd159d16f 36 }
Login10 0:e91bd159d16f 37
Login10 0:e91bd159d16f 38 int main() {
Login10 0:e91bd159d16f 39 mkdir("/sd/keylog", 0777);
Login10 0:e91bd159d16f 40 FILE *fp;
SampleProgram 2:c34453addfec 41 fp = fopen("/sd/keylog/keylog.csv","w");
Login10 0:e91bd159d16f 42 fclose(fp);
Login10 0:e91bd159d16f 43
Login10 0:e91bd159d16f 44 Thread keyboardTask(keyboard_task, NULL, osPriorityNormal, 256 * 4);
SampleProgram 2:c34453addfec 45 while(1) {
Login10 0:e91bd159d16f 46 led=!led;
Login10 0:e91bd159d16f 47 Thread::wait(500);
Login10 0:e91bd159d16f 48 }
Login10 0:e91bd159d16f 49 }