t
Dependencies: SDFileSystem USBHost_SAMPLE mbed
Fork of USBHost_TEST by
main.cpp
- Committer:
- overover
- Date:
- 2017-11-20
- Revision:
- 6:6ba1ef8942d0
- Parent:
- 5:cafe4eec6398
- Child:
- 7:14c35d8672b8
File content as of revision 6:6ba1ef8942d0:
#include "mbed.h" #include "USBHostKeyboard.h" #include "SDFileSystem.h" DigitalOut led(LED1); SDFileSystem sd(p5, p6, p7, p8, "sd"); public int i=0; float Ktime_val=0; Timer k_time; //初期化 Serial pc1(p13, p14);////シリアルポートのtx,rx void onKey(uint8_t key) { pc1.printf("%c", key); ++i; FILE *fp; fp = fopen("/sd/keylog/log.csv", "a"); //SDカード内のkeylogフォルダの中にcsvファイルを追記形式で開く(新規作成) fprintf(fp, "Key[%d], :,0x%x,:,%c\r\n", i, key, key); //押した順番(i):押したキーのキーコード(key):押したキーの文字(key) fclose(fp); //ファイルを閉じる } void keyboard_task(void const *) { USBHostKeyboard keyboard; while(1) { // try to connect a USB keyboard while(!keyboard.connect()) Thread::wait(500); // when connected, attach handler called on keyboard event keyboard.attach(onKey); // wait until the keyboard is disconnected while(keyboard.connected()) Thread::wait(500); } } int main() { if(i!=0){ k_time.stop(); Ktime_val=k_time.read_ms(); } mkdir("/sd/keylog", 0777); FILE *fp; fp = fopen("/sd/keylog/log.csv","w"); //csvを書き込み形式で開く fclose(fp); //ファイルを閉じる k_time.start(); Thread keyboardTask(keyboard_task, NULL, osPriorityNormal, 256 * 4); while(1) { led=!led; Thread::wait(500); } }