if (USB_DeviceState != DEVICE_STATE_Configured)
          return;
 
+       if (HIDInterfaceInfo->State.PrevFrameNum == USB_Device_GetFrameNumber())
+         return;
+         
        Endpoint_SelectEndpoint(HIDInterfaceInfo->Config.ReportINEndpointNumber);
 
        if (Endpoint_IsReadWriteAllowed())
 
                        Endpoint_ClearIN();
                }
+               
+               HIDInterfaceInfo->State.PrevFrameNum = USB_Device_GetFrameNumber();
        }
 }