USBKeyboard example with media keys

Dependencies:   USBDevice mbed

Committer:
samux
Date:
Fri Mar 01 13:24:33 2013 +0000
Revision:
2:4b492a32c76b
Parent:
1:f9120f998887
use latest USBDevice lib (FRDM-KL25Z support)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
samux 2:4b492a32c76b 1 #include "mbed.h"
samux 2:4b492a32c76b 2 #include "USBKeyboard.h"
samux 2:4b492a32c76b 3
samux 2:4b492a32c76b 4 USBKeyboard keyboard;
samux 2:4b492a32c76b 5
samux 2:4b492a32c76b 6 //Bus of buttons
samux 2:4b492a32c76b 7 BusInOut buttons(p21, p22, p23, p24, p25, p26, p29);
samux 2:4b492a32c76b 8
samux 2:4b492a32c76b 9 int main(void) {
samux 2:4b492a32c76b 10 uint8_t p_bus = 0;
samux 2:4b492a32c76b 11
samux 2:4b492a32c76b 12 while (1) {
samux 2:4b492a32c76b 13 //if the bus of buttons has changed, send a report
samux 2:4b492a32c76b 14 if (buttons.read() != p_bus) {
samux 2:4b492a32c76b 15 p_bus = buttons.read();
samux 2:4b492a32c76b 16 if(p_bus & 0x01)
samux 2:4b492a32c76b 17 keyboard.mediaControl(KEY_MUTE);
samux 2:4b492a32c76b 18 if(p_bus & 0x02)
samux 2:4b492a32c76b 19 keyboard.mediaControl(KEY_VOLUME_DOWN);
samux 2:4b492a32c76b 20 if(p_bus & 0x04)
samux 2:4b492a32c76b 21 keyboard.mediaControl(KEY_VOLUME_UP);
samux 2:4b492a32c76b 22 if(p_bus & 0x08)
samux 2:4b492a32c76b 23 keyboard.mediaControl(KEY_NEXT_TRACK);
samux 2:4b492a32c76b 24 if(p_bus & 0x10)
samux 2:4b492a32c76b 25 keyboard.mediaControl(KEY_PLAY_PAUSE);
samux 2:4b492a32c76b 26 if(p_bus & 0x20)
samux 2:4b492a32c76b 27 keyboard.mediaControl(KEY_PREVIOUS_TRACK);
samux 2:4b492a32c76b 28 if(p_bus & 0x40)
samux 2:4b492a32c76b 29 keyboard.printf("Hello World\r\n");
samux 2:4b492a32c76b 30 }
samux 2:4b492a32c76b 31 wait(0.01);
samux 2:4b492a32c76b 32 }
samux 2:4b492a32c76b 33 }