void USB_Disable(uint8_t corenum, uint8_t mode) { USB_IsInitialized = false; if (mode == USB_MODE_Device) { #if defined(USB_CAN_BE_DEVICE) HAL_USBConnect(corenum, 0); HAL_USBDeInit(corenum, mode); #endif } if (mode == USB_MODE_Host) { #if defined(USB_CAN_BE_HOST) #if defined(USB_MULTI_PORTS) uint8_t i; for (i = 0; i < MAX_USB_CORE; i++) { HcdDeInitDriver(i); HAL_USBDeInit(i, mode); } #else HcdDeInitDriver(corenum); HAL_USBDeInit(corenum, mode); #endif #endif } }
static void USB_Init_Host(uint8_t corenum) { // uint8_t i; // for(i=0;i<PIPE_TOTAL_PIPES;i++) PipeInfo[i].PipeHandle=0; pipeselected[corenum] = PIPE_CONTROLPIPE; USB_HostState[corenum] = HOST_STATE_Unattached; USB_Host_ControlPipeSize[corenum] = PIPE_CONTROLPIPE_DEFAULT_SIZE; if (HcdInitDriver(corenum) == HCD_STATUS_OK) { USB_IsInitialized = true; HAL_EnableUSBInterrupt(corenum); } else { USB_IsInitialized = false; HcdDeInitDriver(corenum); } }
static void USB_Init_Host(void) { //uint8_t i; //for(i=0;i<PIPE_TOTAL_PIPES;i++) PipeInfo[i].PipeHandle=0; pipeselected = PIPE_CONTROLPIPE; USB_Memory_Init(USBRAM_BUFFER_SIZE); /* TODO currently Memory Management for Host only */ if(HcdInitDriver(USBPortNum)==HCD_STATUS_OK) { USB_IsInitialized = true; HAL_EnableUSBInterrupt(); } else { USB_IsInitialized = false; HcdDeInitDriver(USBPortNum); } USB_HostState = HOST_STATE_Unattached; USB_Host_ControlPipeSize = PIPE_CONTROLPIPE_DEFAULT_SIZE; }