usb keyboard

Dependencies:   mbed USBHost

Committer:
duchonic
Date:
Thu Jul 25 06:52:50 2019 +0000
Revision:
0:1c8a9f40d32c
first

Who changed what in which revision?

UserRevisionLine numberNew contents of line
duchonic 0:1c8a9f40d32c 1 #include "mbed.h"
duchonic 0:1c8a9f40d32c 2 #include "USBHostKeyboard.h"
duchonic 0:1c8a9f40d32c 3
duchonic 0:1c8a9f40d32c 4 DigitalOut led(LED1);
duchonic 0:1c8a9f40d32c 5
duchonic 0:1c8a9f40d32c 6 void onKey(uint8_t key) {
duchonic 0:1c8a9f40d32c 7 printf("Key: %c\r\n", key);
duchonic 0:1c8a9f40d32c 8 }
duchonic 0:1c8a9f40d32c 9
duchonic 0:1c8a9f40d32c 10 void keyboard_task(void const *) {
duchonic 0:1c8a9f40d32c 11
duchonic 0:1c8a9f40d32c 12 USBHostKeyboard keyboard;
duchonic 0:1c8a9f40d32c 13
duchonic 0:1c8a9f40d32c 14 while(1) {
duchonic 0:1c8a9f40d32c 15 // try to connect a USB keyboard
duchonic 0:1c8a9f40d32c 16 while(!keyboard.connect())
duchonic 0:1c8a9f40d32c 17 Thread::wait(500);
duchonic 0:1c8a9f40d32c 18
duchonic 0:1c8a9f40d32c 19 // when connected, attach handler called on keyboard event
duchonic 0:1c8a9f40d32c 20 keyboard.attach(onKey);
duchonic 0:1c8a9f40d32c 21
duchonic 0:1c8a9f40d32c 22 // wait until the keyboard is disconnected
duchonic 0:1c8a9f40d32c 23 while(keyboard.connected())
duchonic 0:1c8a9f40d32c 24 Thread::wait(500);
duchonic 0:1c8a9f40d32c 25 }
duchonic 0:1c8a9f40d32c 26 }
duchonic 0:1c8a9f40d32c 27
duchonic 0:1c8a9f40d32c 28 int main() {
duchonic 0:1c8a9f40d32c 29 Thread keyboardTask(keyboard_task, NULL, osPriorityNormal, 256 * 4);
duchonic 0:1c8a9f40d32c 30 while(1) {
duchonic 0:1c8a9f40d32c 31 led=!led;
duchonic 0:1c8a9f40d32c 32 Thread::wait(500);
duchonic 0:1c8a9f40d32c 33 }
duchonic 0:1c8a9f40d32c 34 }