clean up example
This commit is contained in:
parent
2219068371
commit
2e464c5015
|
@ -34,6 +34,12 @@
|
||||||
// MACRO CONSTANT TYPEDEF PROTYPES
|
// MACRO CONSTANT TYPEDEF PROTYPES
|
||||||
//--------------------------------------------------------------------+
|
//--------------------------------------------------------------------+
|
||||||
|
|
||||||
|
// Interface index depends on the order in configuration descriptor
|
||||||
|
enum {
|
||||||
|
ITF_KEYBOARD = 0,
|
||||||
|
ITF_MOUSE = 1
|
||||||
|
};
|
||||||
|
|
||||||
/* Blink pattern
|
/* Blink pattern
|
||||||
* - 250 ms : device not mounted
|
* - 250 ms : device not mounted
|
||||||
* - 1000 ms : device mounted
|
* - 1000 ms : device mounted
|
||||||
|
@ -104,10 +110,6 @@ void tud_resume_cb(void)
|
||||||
|
|
||||||
void hid_task(void)
|
void hid_task(void)
|
||||||
{
|
{
|
||||||
//Set up interfaces
|
|
||||||
const uint8_t keyboard_interface = 0;
|
|
||||||
const uint8_t mouse_interface = 1;
|
|
||||||
|
|
||||||
// Poll every 10ms
|
// Poll every 10ms
|
||||||
const uint32_t interval_ms = 10;
|
const uint32_t interval_ms = 10;
|
||||||
static uint32_t start_ms = 0;
|
static uint32_t start_ms = 0;
|
||||||
|
@ -126,7 +128,7 @@ void hid_task(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*------------- Keyboard -------------*/
|
/*------------- Keyboard -------------*/
|
||||||
if ( tud_hid_n_ready(keyboard_interface) )
|
if ( tud_hid_n_ready(ITF_KEYBOARD) )
|
||||||
{
|
{
|
||||||
// use to avoid send multiple consecutive zero report for keyboard
|
// use to avoid send multiple consecutive zero report for keyboard
|
||||||
static bool has_key = false;
|
static bool has_key = false;
|
||||||
|
@ -136,29 +138,26 @@ void hid_task(void)
|
||||||
uint8_t keycode[6] = { 0 };
|
uint8_t keycode[6] = { 0 };
|
||||||
keycode[0] = HID_KEY_A;
|
keycode[0] = HID_KEY_A;
|
||||||
|
|
||||||
tud_hid_n_keyboard_report(keyboard_interface, 0, 0, keycode);
|
tud_hid_n_keyboard_report(ITF_KEYBOARD, 0, 0, keycode);
|
||||||
|
|
||||||
has_key = true;
|
has_key = true;
|
||||||
}else
|
}else
|
||||||
{
|
{
|
||||||
// send empty key report if previously has key pressed
|
// send empty key report if previously has key pressed
|
||||||
if (has_key) tud_hid_n_keyboard_report(keyboard_interface, 0, 0, NULL);
|
if (has_key) tud_hid_n_keyboard_report(ITF_KEYBOARD, 0, 0, NULL);
|
||||||
has_key = false;
|
has_key = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*------------- Mouse -------------*/
|
/*------------- Mouse -------------*/
|
||||||
if ( tud_hid_n_ready(mouse_interface) )
|
if ( tud_hid_n_ready(ITF_MOUSE) )
|
||||||
{
|
{
|
||||||
if ( btn )
|
if ( btn )
|
||||||
{
|
{
|
||||||
int8_t const delta = 5;
|
int8_t const delta = 5;
|
||||||
|
|
||||||
// no button, right + down, no scroll pan
|
// no button, right + down, no scroll pan
|
||||||
tud_hid_n_mouse_report(mouse_interface, 0, 0x00, delta, delta, 0, 0);
|
tud_hid_n_mouse_report(ITF_MOUSE, 0, 0x00, delta, delta, 0, 0);
|
||||||
|
|
||||||
// delay a bit before attempt to send keyboard report
|
|
||||||
board_delay(10);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue