M8C_EnableGInt; //Enable Global Interrupts
Timer8_1_EnableInt(); // Enable the Timer8 interrupt
Timer8_1_Start(); // Timer8 Start and initialization
USBFS_Start(0, USB_5V_OPERATION); //Start USBFS Operation using device 0 and with 5V operation
while(!USBFS_bGetConfiguration()); //Wait for Device to enumerate
//Enumeration is completed load endpoint 1. Do not toggle the first time
USBFS_LoadInEP(1, keycode, 8, USB_NO_TOGGLE);
while(!USBFS_bGetEPAckState(1)); //Check and see if ACK has occured
while(!(USBFS_bGetEPState(1) & IN_BUFFER_EMPTY));
USBFS_LoadInEP(1, keycode, 8, USB_TOGGLE);