1.3 cdc creat 另一个重要的链表,主要在cdc_vcom.c中完成构造,这要是设备接口和端点的构造。2 ...
ESP_LOGI(TAG, "Got data (%d bytes): %s", rx_size, buf); } else { ESP_LOGE(TAG, "Read error"); } } 在官方的CDC测试用例代码中,我尝试修改了RX TX FIFO大小,但是这个回调函数每次读取到的数据最大也就是64字节。修改了很多地方对这个值都没有影像。数据无论发送多快都是每次只接收到64字节。
USBD_CDC_HandleTypeDef *hcdc = (USBD_CDC_HandleTypeDef*) pdev->pClassData; hcdc->TxBuffer = pbuff; hcdc->TxLength = buffsize; if (pdev->pClassData != NULL) { if (hcdc->TxState == 0) { /* Tx Transfer in progress */ hcdc->TxState = 1; /* Transmit next packet */ USBD...
USBD_CDC_WaitForTX(usb_cdcHandle,0); /* 如果最后发送的数据包恰好是最大数据包 * 大小,后面跟着一个零长度的数据包,以确保 * 该段的结尾被正确识别为 * 终端。 */ 如果(num_bytes_to_write== sizeof (write_buffer)) { /* 向主机发送零长度数据包 */ USBD_CDC_Write(usb_cdc...
在cdc_vcom.c里注册了一个vcom_tx_thread_entry线程 while(rt_ringbuffer_data_len(&data->tx_ringbuffer)) { level = rt_hw_interrupt_disable(); res = rt_ringbuffer_get(&data->tx_ringbuffer, ch, CDC_BULKIN_MAXSIZE); rt_hw_interrupt_enable(level); ...
USB_Tx_length = CDC_DATA_IN_PACKET_SIZE;APP_Rx_ptr_out += CDC_DATA_IN_PACKET_SIZE;APP_Rx...
USBD_CDC_SetTxBuffer()和USBD_CDC_TransmitPacket()是启动数据发送过程的一组函数,要成对使用。USB...
Re: F1C100S RTT+USB CDC Device调试记录 Bug & Fix: 高速USB居然没打开,连主机后只跑到12M。加入 USBC_REG_set_bit_b(USBC_BP_POWER_D_HIGH_SPEED_EN, USBC_REG_PCTL(USBC0_BASE)); 目前暂时放在void USBC_PhyConfig(void)里,不过那个好像是USB Core的选项。 CDC串口指令后要等配置信息,原来的代...
正常,CDC虚拟串口理论上可以实现USB的全部速度,就连F1上面的都可以做到1.2MB/s,更何况F4是高速的USB...
1号接口是属于一个CDC设备的 casojie /*Endpoint 2 Descriptor*/ 0x07, /* bLength: Endpoint Descriptor size *///控制端点描述符,虽然端点号是无效的,但是这个描述符不可省略 USB_DESC_TYPE_ENDPOINT, /* bDescriptorType: Endpoint */ CDC_CMD_EP, /* bEndpointAddress */ 0x03, /* bmAttributes: ...