diff options
| author | hathach <[email protected]> | 2018-12-12 14:43:45 +0700 |
|---|---|---|
| committer | hathach <[email protected]> | 2018-12-12 14:43:45 +0700 |
| commit | bb544a09518f4f2210482e62fb050b6cea641c97 (patch) | |
| tree | 403f0c70ae82b37bce3b43a7b739fa2feba0d75b | |
| parent | c1c501e0c2f3ad2c910b11bb358396c2e57ec624 (diff) | |
minor update
| -rw-r--r-- | examples/device/cdc_msc_hid/src/main.c | 17 | ||||
| -rw-r--r-- | src/class/cdc/cdc_device.c | 3 |
2 files changed, 15 insertions, 5 deletions
diff --git a/examples/device/cdc_msc_hid/src/main.c b/examples/device/cdc_msc_hid/src/main.c index d88bd3726..bc260fdfa 100644 --- a/examples/device/cdc_msc_hid/src/main.c +++ b/examples/device/cdc_msc_hid/src/main.c @@ -94,10 +94,19 @@ void virtual_com_task(void) // read and echo back uint32_t count = tud_cdc_read(buf, sizeof(buf)); - tud_cdc_write(buf, count); - } + for(uint32_t i=0; i<count; i++) + { + tud_cdc_write_char(buf[i]); - tud_cdc_write_flush(); + if ( buf[i] == '\r' ) + { + tud_cdc_write_char('\n'); + tud_cdc_write_str("tinyusb cdc: "); + } + } + + tud_cdc_write_flush(); + } } } @@ -109,7 +118,7 @@ void tud_cdc_line_state_cb(uint8_t itf, bool dtr, bool rts) if ( dtr && rts ) { // print greeting - tud_cdc_write_str("tinyusb usb cdc\n"); + tud_cdc_write_str("tinyusb cdc: "); } } #endif diff --git a/src/class/cdc/cdc_device.c b/src/class/cdc/cdc_device.c index 7d9e196aa..7ec7a1eb2 100644 --- a/src/class/cdc/cdc_device.c +++ b/src/class/cdc/cdc_device.c @@ -346,9 +346,10 @@ bool cdcd_control_request(uint8_t rhport, tusb_control_request_t const * request // This signal corresponds to V.24 signal 105 and RS-232 signal RTS (Request to Send)
p_cdc->line_state = (uint8_t) request->wValue;
+ usbd_control_status(rhport, request);
+
// Invoke callback
if ( tud_cdc_line_state_cb) tud_cdc_line_state_cb(itf, BIT_TEST_(request->wValue, 0), BIT_TEST_(request->wValue, 1));
- usbd_control_status(rhport, request);
break;
default: return false; // stall unsupported request
|
