diff options
| author | sakumisu <[email protected]> | 2024-11-13 21:44:46 +0800 |
|---|---|---|
| committer | sakumisu <[email protected]> | 2024-11-13 21:49:58 +0800 |
| commit | e3ff8ffe6ab99459b06a7f2e53c2a8c8fe8bfa2b (patch) | |
| tree | dc6e1e20be6ac0492c5aafa61fcbadc2aa609c5e | |
| parent | 24fc172ad84551b439cd632a9f445395b735fb67 (diff) | |
update(demo): set hid busy before write
| -rw-r--r-- | demo/cdc_acm_hid_msc_template.c | 9 | ||||
| -rw-r--r-- | demo/hid_keyboard_template.c | 7 | ||||
| -rw-r--r-- | demo/hid_mouse_template.c | 9 | ||||
| -rw-r--r-- | demo/hid_remote_wakeup_template.c | 9 | ||||
| -rw-r--r-- | demo/video_audiov1_hid_template.c | 7 | ||||
| -rw-r--r-- | demo/webusb_hid_template.c | 7 |
6 files changed, 27 insertions, 21 deletions
diff --git a/demo/cdc_acm_hid_msc_template.c b/demo/cdc_acm_hid_msc_template.c index 32bd9109..148f324c 100644 --- a/demo/cdc_acm_hid_msc_template.c +++ b/demo/cdc_acm_hid_msc_template.c @@ -332,14 +332,15 @@ void cdc_acm_hid_msc_descriptor_init(uint8_t busid, uintptr_t reg_base) */ void hid_mouse_test(uint8_t busid) { + if(usb_device_is_configured(busid) == false) { + return; + } /*!< move mouse pointer */ mouse_cfg.x += 10; mouse_cfg.y = 0; - int ret = usbd_ep_start_write(busid, HID_INT_EP, (uint8_t *)&mouse_cfg, 4); - if (ret < 0) { - return; - } + hid_state = HID_STATE_BUSY; + usbd_ep_start_write(busid, HID_INT_EP, (uint8_t *)&mouse_cfg, 4); while (hid_state == HID_STATE_BUSY) { } } diff --git a/demo/hid_keyboard_template.c b/demo/hid_keyboard_template.c index 7527f396..4d1afc30 100644 --- a/demo/hid_keyboard_template.c +++ b/demo/hid_keyboard_template.c @@ -236,12 +236,13 @@ void hid_keyboard_test(uint8_t busid) { const uint8_t sendbuffer[8] = { 0x00, 0x00, HID_KBD_USAGE_A, 0x00, 0x00, 0x00, 0x00, 0x00 }; - memcpy(write_buffer, sendbuffer, 8); - int ret = usbd_ep_start_write(busid, HID_INT_EP, write_buffer, 8); - if (ret < 0) { + if(usb_device_is_configured(busid) == false) { return; } + + memcpy(write_buffer, sendbuffer, 8); hid_state = HID_STATE_BUSY; + usbd_ep_start_write(busid, HID_INT_EP, write_buffer, 8); while (hid_state == HID_STATE_BUSY) { } } diff --git a/demo/hid_mouse_template.c b/demo/hid_mouse_template.c index e6d24d7c..564d1718 100644 --- a/demo/hid_mouse_template.c +++ b/demo/hid_mouse_template.c @@ -304,14 +304,15 @@ void draw_circle(uint8_t *buf) /* https://cps-check.com/cn/polling-rate-check */ void hid_mouse_test(uint8_t busid) { + if(usb_device_is_configured(busid) == false) { + return; + } + int counter = 0; while (counter < 1000) { draw_circle((uint8_t *)&mouse_cfg); - int ret = usbd_ep_start_write(busid, HID_INT_EP, (uint8_t *)&mouse_cfg, 4); - if (ret < 0) { - return; - } hid_state = HID_STATE_BUSY; + usbd_ep_start_write(busid, HID_INT_EP, (uint8_t *)&mouse_cfg, 4); while (hid_state == HID_STATE_BUSY) { } diff --git a/demo/hid_remote_wakeup_template.c b/demo/hid_remote_wakeup_template.c index b528c4a1..786c3240 100644 --- a/demo/hid_remote_wakeup_template.c +++ b/demo/hid_remote_wakeup_template.c @@ -307,6 +307,10 @@ void hid_mouse_test(uint8_t busid) static uint32_t count = 1000; int ret; + if(usb_device_is_configured(busid) == false) { + return; + } + // if (gpio_read_pin(GPIO_PIN) == 1) { // ret = usbd_send_remote_wakeup(busid); // if (ret < 0) { @@ -317,11 +321,8 @@ void hid_mouse_test(uint8_t busid) while (count) { draw_circle((uint8_t *)&mouse_cfg); - int ret = usbd_ep_start_write(busid, HID_INT_EP, (uint8_t *)&mouse_cfg, 4); - if (ret < 0) { - return; - } hid_state = HID_STATE_BUSY; + usbd_ep_start_write(busid, HID_INT_EP, (uint8_t *)&mouse_cfg, 4); while (hid_state == HID_STATE_BUSY) { } diff --git a/demo/video_audiov1_hid_template.c b/demo/video_audiov1_hid_template.c index 85a5146d..bccffeac 100644 --- a/demo/video_audiov1_hid_template.c +++ b/demo/video_audiov1_hid_template.c @@ -458,12 +458,13 @@ void hid_keyboard_test(uint8_t busid) { const uint8_t sendbuffer[8] = { 0x00, 0x00, HID_KBD_USAGE_A, 0x00, 0x00, 0x00, 0x00, 0x00 }; - memcpy(hid_write_buffer, sendbuffer, 8); - int ret = usbd_ep_start_write(busid, HID_INT_EP, hid_write_buffer, 8); - if (ret < 0) { + if(usb_device_is_configured(busid) == false) { return; } + + memcpy(hid_write_buffer, sendbuffer, 8); hid_state = HID_STATE_BUSY; + usbd_ep_start_write(busid, HID_INT_EP, hid_write_buffer, 8); while (hid_state == HID_STATE_BUSY) { } } diff --git a/demo/webusb_hid_template.c b/demo/webusb_hid_template.c index 04ec1dd2..52570879 100644 --- a/demo/webusb_hid_template.c +++ b/demo/webusb_hid_template.c @@ -371,12 +371,13 @@ void hid_keyboard_test(uint8_t busid) { const uint8_t sendbuffer[8] = { 0x00, 0x00, HID_KBD_USAGE_A, 0x00, 0x00, 0x00, 0x00, 0x00 }; - memcpy(write_buffer, sendbuffer, 8); - int ret = usbd_ep_start_write(busid, HID_INT_EP, write_buffer, 8); - if (ret < 0) { + if(usb_device_is_configured(busid) == false) { return; } + + memcpy(write_buffer, sendbuffer, 8); hid_state = HID_STATE_BUSY; + usbd_ep_start_write(busid, HID_INT_EP, write_buffer, 8); while (hid_state == HID_STATE_BUSY) { } } |
