Hal Drivers for L4

Dependents:   BSP OneHopeOnePrayer FINAL_AUDIO_RECORD AudioDemo

Fork of STM32L4xx_HAL_Driver by Senior Design: Sound Monitor

Embed: (wiki syntax)

« Back to documentation index

stm32l4xx_ll_usb.c File Reference

stm32l4xx_ll_usb.c File Reference

USB Low Layer HAL module driver. More...

Go to the source code of this file.

Functions

static HAL_StatusTypeDef USB_CoreReset (USB_OTG_GlobalTypeDef *USBx)
 Reset the USB Core (needed after USB clock settings change)
HAL_StatusTypeDef USB_CoreInit (USB_OTG_GlobalTypeDef *USBx, USB_OTG_CfgTypeDef cfg)
 Initializes the USB Core.
HAL_StatusTypeDef USB_EnableGlobalInt (USB_OTG_GlobalTypeDef *USBx)
 USB_EnableGlobalInt Enables the controller's Global Int in the AHB Config reg.
HAL_StatusTypeDef USB_DisableGlobalInt (USB_OTG_GlobalTypeDef *USBx)
 USB_DisableGlobalInt Disable the controller's Global Int in the AHB Config reg.
HAL_StatusTypeDef USB_SetCurrentMode (USB_OTG_GlobalTypeDef *USBx, USB_OTG_ModeTypeDef mode)
 USB_SetCurrentMode : Set functional mode.
HAL_StatusTypeDef USB_DevInit (USB_OTG_GlobalTypeDef *USBx, USB_OTG_CfgTypeDef cfg)
 USB_DevInit : Initializes the USB_OTG controller registers for device mode.
HAL_StatusTypeDef USB_FlushTxFifo (USB_OTG_GlobalTypeDef *USBx, uint32_t num)
 USB_OTG_FlushTxFifo : Flush a Tx FIFO.
HAL_StatusTypeDef USB_FlushRxFifo (USB_OTG_GlobalTypeDef *USBx)
 USB_FlushRxFifo : Flush Rx FIFO.
HAL_StatusTypeDef USB_SetDevSpeed (USB_OTG_GlobalTypeDef *USBx, uint8_t speed)
 USB_SetDevSpeed :Initializes the DevSpd field of DCFG register depending the PHY type and the enumeration speed of the device.
uint8_t USB_GetDevSpeed (USB_OTG_GlobalTypeDef *USBx)
 USB_GetDevSpeed :Return the Dev Speed.
HAL_StatusTypeDef USB_ActivateEndpoint (USB_OTG_GlobalTypeDef *USBx, USB_OTG_EPTypeDef *ep)
 Activate and configure an endpoint.
HAL_StatusTypeDef USB_ActivateDedicatedEndpoint (USB_OTG_GlobalTypeDef *USBx, USB_OTG_EPTypeDef *ep)
 Activate and configure a dedicated endpoint.
HAL_StatusTypeDef USB_DeactivateEndpoint (USB_OTG_GlobalTypeDef *USBx, USB_OTG_EPTypeDef *ep)
 De-activate and de-initialize an endpoint.
HAL_StatusTypeDef USB_DeactivateDedicatedEndpoint (USB_OTG_GlobalTypeDef *USBx, USB_OTG_EPTypeDef *ep)
 De-activate and de-initialize a dedicated endpoint.
HAL_StatusTypeDef USB_EPStartXfer (USB_OTG_GlobalTypeDef *USBx, USB_OTG_EPTypeDef *ep, uint8_t dma)
 USB_EPStartXfer : setup and starts a transfer over an EP.
HAL_StatusTypeDef USB_EP0StartXfer (USB_OTG_GlobalTypeDef *USBx, USB_OTG_EPTypeDef *ep, uint8_t dma)
 USB_EP0StartXfer : setup and starts a transfer over the EP 0.
HAL_StatusTypeDef USB_WritePacket (USB_OTG_GlobalTypeDef *USBx, uint8_t *src, uint8_t ch_ep_num, uint16_t len, uint8_t dma)
 USB_WritePacket : Writes a packet into the Tx FIFO associated with the EP/channel.
void * USB_ReadPacket (USB_OTG_GlobalTypeDef *USBx, uint8_t *dest, uint16_t len)
 USB_ReadPacket : read a packet from the Tx FIFO associated with the EP/channel.
HAL_StatusTypeDef USB_EPSetStall (USB_OTG_GlobalTypeDef *USBx, USB_OTG_EPTypeDef *ep)
 USB_EPSetStall : set a stall condition over an EP.
HAL_StatusTypeDef USB_EPClearStall (USB_OTG_GlobalTypeDef *USBx, USB_OTG_EPTypeDef *ep)
 USB_EPClearStall : Clear a stall condition over an EP.
HAL_StatusTypeDef USB_StopDevice (USB_OTG_GlobalTypeDef *USBx)
 USB_StopDevice : Stop the USB device mode.
HAL_StatusTypeDef USB_SetDevAddress (USB_OTG_GlobalTypeDef *USBx, uint8_t address)
 USB_SetDevAddress : Stop the USB device mode.
HAL_StatusTypeDef USB_DevConnect (USB_OTG_GlobalTypeDef *USBx)
 USB_DevConnect : Connect the USB device by enabling the pull-up/pull-down.
HAL_StatusTypeDef USB_DevDisconnect (USB_OTG_GlobalTypeDef *USBx)
 USB_DevDisconnect : Disconnect the USB device by disabling the pull-up/pull-down.
uint32_t USB_ReadInterrupts (USB_OTG_GlobalTypeDef *USBx)
 USB_ReadInterrupts: return the global USB interrupt status.
uint32_t USB_ReadDevAllOutEpInterrupt (USB_OTG_GlobalTypeDef *USBx)
 USB_ReadDevAllOutEpInterrupt: return the USB device OUT endpoints interrupt status.
uint32_t USB_ReadDevAllInEpInterrupt (USB_OTG_GlobalTypeDef *USBx)
 USB_ReadDevAllInEpInterrupt: return the USB device IN endpoints interrupt status.
uint32_t USB_ReadDevOutEPInterrupt (USB_OTG_GlobalTypeDef *USBx, uint8_t epnum)
 Returns Device OUT EP Interrupt register.
uint32_t USB_ReadDevInEPInterrupt (USB_OTG_GlobalTypeDef *USBx, uint8_t epnum)
 Returns Device IN EP Interrupt register.
void USB_ClearInterrupts (USB_OTG_GlobalTypeDef *USBx, uint32_t interrupt)
 USB_ClearInterrupts: clear a USB interrupt.
uint32_t USB_GetMode (USB_OTG_GlobalTypeDef *USBx)
 Returns USB core mode.
HAL_StatusTypeDef USB_ActivateSetup (USB_OTG_GlobalTypeDef *USBx)
 Activate EP0 for Setup transactions.
HAL_StatusTypeDef USB_EP0_OutStart (USB_OTG_GlobalTypeDef *USBx, uint8_t dma, uint8_t *psetup)
 Prepare the EP0 to start the first control setup.
HAL_StatusTypeDef USB_HostInit (USB_OTG_GlobalTypeDef *USBx, USB_OTG_CfgTypeDef cfg)
 USB_HostInit : Initializes the USB OTG controller registers for Host mode.
HAL_StatusTypeDef USB_InitFSLSPClkSel (USB_OTG_GlobalTypeDef *USBx, uint8_t freq)
 USB_InitFSLSPClkSel : Initializes the FSLSPClkSel field of the HCFG register on the PHY type and set the right frame interval.
HAL_StatusTypeDef USB_ResetPort (USB_OTG_GlobalTypeDef *USBx)
 USB_OTG_ResetPort : Reset Host Port.
HAL_StatusTypeDef USB_DriveVbus (USB_OTG_GlobalTypeDef *USBx, uint8_t state)
 USB_DriveVbus : activate or de-activate vbus.
uint32_t USB_GetHostSpeed (USB_OTG_GlobalTypeDef *USBx)
 Return Host Core speed.
uint32_t USB_GetCurrentFrame (USB_OTG_GlobalTypeDef *USBx)
 Return Host Current Frame number.
HAL_StatusTypeDef USB_HC_Init (USB_OTG_GlobalTypeDef *USBx, uint8_t ch_num, uint8_t epnum, uint8_t dev_address, uint8_t speed, uint8_t ep_type, uint16_t mps)
 Initialize a host channel.
HAL_StatusTypeDef USB_HC_StartXfer (USB_OTG_GlobalTypeDef *USBx, USB_OTG_HCTypeDef *hc, uint8_t dma)
 Start a transfer over a host channel.
uint32_t USB_HC_ReadInterrupt (USB_OTG_GlobalTypeDef *USBx)
 Read all host channel interrupts status.
HAL_StatusTypeDef USB_HC_Halt (USB_OTG_GlobalTypeDef *USBx, uint8_t hc_num)
 Halt a host channel.
HAL_StatusTypeDef USB_DoPing (USB_OTG_GlobalTypeDef *USBx, uint8_t ch_num)
 Initiate Do Ping protocol.
HAL_StatusTypeDef USB_StopHost (USB_OTG_GlobalTypeDef *USBx)
 Stop Host Core.

Detailed Description

USB Low Layer HAL module driver.

Author:
MCD Application Team
Version:
V1.1.0
Date:
16-September-2015 This file provides firmware functions to manage the following functionalities of the USB Peripheral Controller: + Initialization/de-initialization functions + I/O operation functions + Peripheral Control functions + Peripheral State functions
  ==============================================================================
                    ##### How to use this driver #####
  ==============================================================================
    [..]
      (#) Fill parameters of Init structure in USB_OTG_CfgTypeDef structure.
  
      (#) Call USB_CoreInit() API to initialize the USB Core peripheral.

      (#) The upper HAL HCD/PCD driver will call the right routines for its internal processes.

  
Attention:

© COPYRIGHT(c) 2015 STMicroelectronics

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of STMicroelectronics nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Definition in file stm32l4xx_ll_usb.c.