Keyboard firmwares for Atmel AVR and Cortex-M
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

main.cpp 1.2KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. #include "mbed.h"
  2. #include "HIDKeyboard.h"
  3. #include "debug.h"
  4. /*
  5. //#define DEBUG
  6. #ifdef DEBUG
  7. Serial ser(UART_TX, UART_RX);
  8. #define dprintf(fmt, ...) ser.printf(fmt, ## __VA_ARGS__)
  9. #else
  10. #define dprintf(fmt, ...)
  11. #endif
  12. */
  13. // button and LEDs
  14. DigitalIn isp(P0_1);
  15. DigitalOut led_red(P0_20);
  16. DigitalOut led_green(P0_21);
  17. //USBKeyboard
  18. HIDKeyboard keyboard;
  19. int main(void) {
  20. //isp.mode(PullUp);
  21. //led_red = 0;
  22. //led_green = 0;
  23. debug_enable = true;
  24. dprintf("HIDKeyboard:\n");
  25. print("aaa");
  26. report_keyboard_t report = { 2, 0, 4, }; //a
  27. report_keyboard_t report_off = { 0 };
  28. while (1) {
  29. //keyboard.mediaControl(KEY_VOLUME_DOWN);
  30. //keyboard.printf("Hello World from Mbed\r\n");
  31. //keyboard.keyCode('s', KEY_CTRL);
  32. //keyboard.keyCode(KEY_CAPS_LOCK);
  33. //led_green = !led_green;
  34. //leds = keyboard.lockStatus();
  35. //ser.putc(ser.getc());
  36. if (isp == 0) {
  37. led_red = 0; // on
  38. keyboard.sendReport(report);
  39. } else {
  40. led_red = 1; // off
  41. keyboard.sendReport(report_off);
  42. }
  43. led_green = !led_green;
  44. //wait(0.5);
  45. }
  46. }