You are viewing an older revision! See the latest version
USBHostKeyboard
mbed OS 2 and mbed OS 5
This is the handbook for mbed OS 2. If you’re working with mbed OS 5, please see the new handbook and API References.
The USBHostKeyboard interface is used to communicate with a USB keyboard.
Library in Beta!
This library is in Beta. If you have any problems using the USBHost library, please send a bug report at support@mbed.org
The USB Host connector should be attached to
- p31 (D+), p32 (D-) and GND for the LPC1768
- add two 15k resistors tied to GND on D+ and D-
Hello World¶
Import program
00001 #include "mbed.h" 00002 #include "USBHostKeyboard.h" 00003 00004 DigitalOut led(LED1); 00005 00006 void onKey(uint8_t key) { 00007 printf("Key: %c\r\n", key); 00008 } 00009 00010 void keyboard_task(void const *) { 00011 00012 USBHostKeyboard keyboard; 00013 00014 while(1) { 00015 // try to connect a USB keyboard 00016 while(!keyboard.connect()) 00017 Thread::wait(500); 00018 00019 // when connected, attach handler called on keyboard event 00020 keyboard.attach(onKey); 00021 00022 // wait until the keyboard is disconnected 00023 while(keyboard.connected()) 00024 Thread::wait(500); 00025 } 00026 } 00027 00028 int main() { 00029 Thread keyboardTask(keyboard_task, NULL, osPriorityNormal, 256 * 4); 00030 while(1) { 00031 led=!led; 00032 Thread::wait(500); 00033 } 00034 }
API¶
Import library
Public Member Functions |
|
USBHostKeyboard () | |
Constructor.
|
|
bool | connect () |
Try to connect a keyboard device.
|
|
bool | connected () |
Check if a keyboard is connected.
|
|
void | attach (void(*ptr)(uint8_t key)) |
Attach a callback called when a keyboard event is received.
|
|
void | attach (void(*ptr)(uint8_t keyCode, uint8_t modifier)) |
Attach a callback called when a keyboard event is received.
|
Troobleshooting
If your mbed board is automatically resetted when you plug a USB device, you should consider to use an external power supply