请教一些F4板上USB的一些问题。

2019-07-20 01:07发布

       
下边是我的程序,,在usb发送后都加了延时才可以同时发送多个数据。同时发两个的发送速度也不够快打不到我的要求。用这个是手柄和踏板控制电脑的开车软件。不太懂这里边的机制,希望大佬能给讲解一下关于延时和速度这块的知识。或者相关的教程。自己看了一些书找不到类似的东西













while(1)
   {
                adcx=Get_Adc_Average(ADC_CHANNEL_5,1);//踏板模拟信号
                key=CAN1_Receive_Msg(canbuf);          //手柄can信号
               

                if(adcx)                             //踏板
                        {
                                if(adcx>2048)
                                {
                                        USB_DEVICE_Send(c,8);

                                }
                                else
                                {
                                        USB_DEVICE_Send(null,8);
                          }
                        }


                 if(key)//手柄
                        {                                                                                    
       
                          if(canbuf[2]==16)                               //Ç°½ø
                                        USB_DEVICE_Send(UpArrow1,8);
                delay_ms(20);
                               
                                                          if(canbuf[2]==16)                               //Ç°½ø
                                        USB_DEVICE_Send(UpArrow1,8);
                delay_ms(10);
                                                               
                    if(canbuf[2]==4)                                //oóíË
                                        USB_DEVICE_Send(s,8);
                delay_ms(10);
                                                               
                                if(canbuf[5]==199)                                //×ó
                                        USB_DEVICE_Send(_a,8);
                delay_ms(10);
                               
                                if(canbuf[5]==211)                                //óò
                                  USB_DEVICE_Send(_d,8);
                delay_ms(10);
                               
                                if(canbuf[6]==253)                               //ÖD
                                        USB_DEVICE_Send(e,8);                       
                delay_ms(10);
               

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。