/** * @brief Manages Mouse Menu Process. * @param None * @retval None */ void HID_MouseMenuProcess(void) { if(hid_demo.mouse_state == HID_MOUSE_START) { LCD_LOG_ClearTextZone(); BSP_LCD_ClearStringLine(19); USBH_HID_MouseInit(&hUSBHost); USR_MOUSE_Init(); HID_MOUSE_UpdatePosition(0,0); } }
/** * @brief Manages Mouse Menu Process. * @param None * @retval None */ void HID_MouseMenuProcess(void) { switch(hid_demo.mouse_state) { case HID_MOUSE_IDLE: hid_demo.mouse_state = HID_MOUSE_START; HID_SelectItem(DEMO_MOUSE_menu, 0); hid_demo.select = 0; prev_select = 0; break; case HID_MOUSE_WAIT: if(hid_demo.select != prev_select) { prev_select = hid_demo.select ; HID_SelectItem(DEMO_MOUSE_menu, hid_demo.select & 0x7F); /* Handle select item */ if(hid_demo.select & 0x80) { switch(hid_demo.select & 0x7F) { case 0: hid_demo.mouse_state = HID_MOUSE_START; break; case 1: /* Return */ LCD_LOG_ClearTextZone(); hid_demo.state = HID_DEMO_REENUMERATE; hid_demo.select = 0; break; default: break; } } } break; case HID_MOUSE_START: USBH_HID_MouseInit(&hUSBHost); USR_MOUSE_Init(); hid_demo.mouse_state = HID_MOUSE_WAIT; HID_MOUSE_UpdatePosition(0,0); break; default: break; } hid_demo.select &= 0x7F; }
/** * @brief Manages Mouse Menu Process. * @param None * @retval None */ void HID_MouseMenuProcess(void) { switch(demo.mouse_state) { case HID_MOUSE_IDLE: demo.mouse_state = HID_MOUSE_START; Demo_SelectItem(DEMO_MOUSE_menu, 0); demo.select = 0; break; case HID_MOUSE_WAIT: if(demo.select != prev_select) { prev_select = demo.select; Demo_SelectItem(DEMO_MOUSE_menu, demo.select & 0x7F); /* Handle select item */ if(demo.select & 0x80) { demo.select &= 0x7F; switch(demo.select) { case 0: demo.mouse_state = HID_MOUSE_START; break; case 1: /* Return */ LCD_LOG_ClearTextZone(); demo.state = DEMO_IDLE; LCD_UsrLogY("> HID application closed.\n"); demo.select = 0; break; default: break; } } } break; case HID_MOUSE_START: USR_MOUSE_Init(); demo.mouse_state = HID_MOUSE_WAIT; HID_MOUSE_UpdatePosition(0,0); break; default: break; } }