2374672920 发表于 2024-10-27 21:49:32

【如何利用CDC 协议范例实现接收到数据重新发回去】

如题,怎么修改STC32G标准CDC协议范例函数
实现接收到数据重新发回去呢?

最近在学习USB,
发现USB-CDC转串口可以通过USB接收数据后转串口,
但是串口数据不知道无法转USB发回去;
发送后的数据无法在接收缓冲区收到;





DebugLab 发表于 2024-10-28 00:24:29

使用中断模式,接收到数据会调用usb_OUT_callback函数,
在这里面把收到的数据使用USB_SendData函数发出去就行

BOOL usb_OUT_callback()
{
//      USB_SendData(UsbOutBuffer,OutNumber);
      return 1;
}


2374672920 发表于 2024-10-28 18:30:19

DebugLab 发表于 2024-10-28 00:24
使用中断模式,接收到数据会调用usb_OUT_callback函数,在这里面把收到的数据使用USB_SendData函数发出去就 ...

这是基于lib库的函数吧{:4_165:},标准协议范例里没有usb_OUT_callback函数{:4_185:}

2374672920 发表于 2024-10-30 22:41:07

实现接收到数据重新发回去问题暂时解决了,参考了USB-HID协议,
直接在OUT1中断中添加函数 usb_bulk_intr_in(UsbBuffer,usb_bulk_intr_out(UsbBuffer, 1),1);
这样可以直接省略串口,所以这个虚拟串口的作用在哪呢?
{:dizzy:}


页: [1]
查看完整版本: 【如何利用CDC 协议范例实现接收到数据重新发回去】