- 打卡等级:初来乍到
- 打卡总天数:4
- 最近打卡:2025-09-09 19:50:09
已绑定手机
注册会员
- 积分
- 56
|
发表于 2025-8-1 12:12:48
|
显示全部楼层
//经过反复实测,发送后起码加100us延时,否则丢包
//貌似发送数据后,才会更新端口打开还是关闭状态,所以每次打开端口,会多显示之前的一行数据
// 感觉 isCDCOpen() 是发送数据后,才会检测到端口状态,而不是发送数据前能检测到端口状态
if(isCDCOpen() == 1) //貌似发送数据后,才会更新端口打开还是关闭状态
{
LED_0 = 0; //测试脚
printf_usb("usb tx test %05d \r\n", i);
LED_0 = 1; //测试脚
Delay100us_test(); //发送后起码加100us延时,否则丢包
}
void USB_FUN() //处理USB接收到的数据 ,解析数据
{
u16 i;
if(bUsbOutReady)
{
LED_0 = 0;
USB_SendData(UsbOutBuffer, OutNumber); //发送数据缓冲区,长度(接收数据原样返回, 用于测试)
LED_0 = 1;
usb_OUT_done();
}
if(TIME_1S > 0) //每隔1秒发送一次数据
{
TIME_1S = 0;
for(i = 0; i < 10; i++)
{
if(isCDCOpen() == 1) //貌似发送数据后,才会更新端口打开还是关闭状态
{
LED_0 = 0; //测试脚
printf_usb("usb tx test %05d \r\n", i);
LED_0 = 1; //测试脚
Delay100us_test(); //发送后起码加100us延时,否则丢包
}
}
}
}
|
|