USB Library
USBIncrement1msInternalTimers Function
Syntax
void USBIncrement1msInternalTimers();
Description

This function increments internal 1ms time base counters, which are useful for application code (that can use a 1ms time base/counter), and for certain USB event timing specific purposes. 

In USB full speed applications, the application code does not need to (and should not) explicitly call this function, as the USBDeviceTasks() function will automatically call this function whenever a 1ms time interval has elapsed (assuming the code is calling USBDeviceTasks() frequently enough in USB_POLLING mode, or that USB interrupts aren't being masked for more than 1ms at a time in USB_INTERRUPT mode). 

In USB low speed applications, the application firmware is responsible for periodically calling this function at a ~1ms rate. This can be done using a general purpose microcontroller timer set to interrupt every 1ms for example. If the low speed application code does not call this function, the internal timers will not increment, and the USBGet1msTickCount() API function will not be available. Additionally, certain USB stack operations (like control transfer timeouts) may be unavailable.

Preconditions

This function should be called only after USBDeviceInit() has been called (at least once at the start of the application). Ordinarily, application code should never call this function, unless it is a low speed USB device.

Remarks

This function does not need to be called during USB suspend conditions, when the USB module/stack is disabled, or when the USB cable is detached from the host.

MLA - USB Library Help Version : 2.16
http://www.microchip.com/mla