void Isr_BusReset(void) { USB_ISR_DEBUG(("BUS RESET\r\n")); reconnect_USB(); bD13flags.bits.DCP_state = 0x00; bD13flags.bits.dma_disable=0x00; bUSBCheck_Device_State.State_bits.DEVICE_DEFAULT_STATE = 1; bUSBCheck_Device_State.State_bits.DEVICE_ADDRESS_STATE = 0; bUSBCheck_Device_State.State_bits.DEVICE_CONFIGURATION_STATE = 0; config_endpoint(); }
//------------------------------------------------------------------------- int example_main(void) { LCD_Test(); disable(); disconnect_USB(); usleep(1000000); Hal4D13_ResetDevice(); bUSBCheck_Device_State.State_bits.DEVICE_DEFAULT_STATE = 1; bUSBCheck_Device_State.State_bits.DEVICE_ADDRESS_STATE = 0; bUSBCheck_Device_State.State_bits.DEVICE_CONFIGURATION_STATE = 0; bUSBCheck_Device_State.State_bits.RESET_BITS = 0; usleep(1000000); reconnect_USB(); CHECK_CHIP_ID(); Hal4D13_AcquireD13(ISP1362_DC_IRQ,(void*)usb_isr); enable(); bD13flags.bits.verbose=1; while (1) { if (bUSBCheck_Device_State.State_bits.RESET_BITS == 1) { disable(); break; } if (bD13flags.bits.suspend) { disable(); bD13flags.bits.suspend= 0; enable(); suspend_change(); } // Suspend Change Handler if (bD13flags.bits.DCP_state == USBFSM4DCP_SETUPPROC) { disable(); SetupToken_Handler(); enable(); } // Setup Token Handler if ((bD13flags.bits.DCP_state == USBFSM4DCP_REQUESTPROC) && !ControlData.Abort) { disable(); bD13flags.bits.DCP_state = 0x00; DeviceRequest_Handler(); enable(); } // Device Request Handler usleep(1); } return 0; }