STM32L4xx_HAL_Driver  1.14.0
stm32l4xx_hal_pcd.h File Reference

Header file of PCD HAL module. More...

Go to the source code of this file.

Data Structures

struct  endif
 ADC handle Structure definition. More...
 

Typedefs

typedef USB_OTG_GlobalTypeDef PCD_TypeDef
 
typedef USB_OTG_CfgTypeDef PCD_InitTypeDef
 
typedef USB_OTG_EPTypeDef PCD_EPTypeDef
 
typedef struct __PCD_HandleTypeDef else typedef struct endif PCD_HandleTypeDef
 PCD Handle Structure definition. More...
 
typedef void(* pPCD_CallbackTypeDef) (PCD_HandleTypeDef *hpcd)
 
typedef void(* pPCD_DataOutStageCallbackTypeDef) (PCD_HandleTypeDef *hpcd, uint8_t epnum)
 
typedef void(* pPCD_DataInStageCallbackTypeDef) (PCD_HandleTypeDef *hpcd, uint8_t epnum)
 
typedef void(* pPCD_IsoOutIncpltCallbackTypeDef) (PCD_HandleTypeDef *hpcd, uint8_t epnum)
 
typedef void(* pPCD_IsoInIncpltCallbackTypeDef) (PCD_HandleTypeDef *hpcd, uint8_t epnum)
 
typedef void(* pPCD_LpmCallbackTypeDef) (PCD_HandleTypeDef *hpcd, PCD_LPM_MsgTypeDef msg)
 
typedef void(* pPCD_BcdCallbackTypeDef) (PCD_HandleTypeDef *hpcd, PCD_BCD_MsgTypeDef msg)
 

Enumerations

enum  PCD_StateTypeDef {
  HAL_PCD_STATE_RESET = 0x00, HAL_PCD_STATE_READY = 0x01, HAL_PCD_STATE_ERROR = 0x02, HAL_PCD_STATE_BUSY = 0x03,
  HAL_PCD_STATE_TIMEOUT = 0x04
}
 PCD State structure definition. More...
 
enum  PCD_LPM_StateTypeDef { LPM_L0 = 0x00, LPM_L1 = 0x01, LPM_L2 = 0x02, LPM_L3 = 0x03 }
 
enum  PCD_LPM_MsgTypeDef { PCD_LPM_L0_ACTIVE = 0x00, PCD_LPM_L1_ACTIVE = 0x01 }
 
enum  PCD_BCD_MsgTypeDef {
  PCD_BCD_ERROR = 0xFF, PCD_BCD_CONTACT_DETECTION = 0xFE, PCD_BCD_STD_DOWNSTREAM_PORT = 0xFD, PCD_BCD_CHARGING_DOWNSTREAM_PORT = 0xFC,
  PCD_BCD_DEDICATED_CHARGING_PORT = 0xFB, PCD_BCD_DISCOVERY_COMPLETED = 0x00
}
 
enum  HAL_PCD_CallbackIDTypeDef {
  HAL_PCD_SOF_CB_ID = 0x01, HAL_PCD_SETUPSTAGE_CB_ID = 0x02, HAL_PCD_RESET_CB_ID = 0x03, HAL_PCD_SUSPEND_CB_ID = 0x04,
  HAL_PCD_RESUME_CB_ID = 0x05, HAL_PCD_CONNECT_CB_ID = 0x06, HAL_PCD_DISCONNECT_CB_ID = 0x07, HAL_PCD_MSPINIT_CB_ID = 0x08,
  HAL_PCD_MSPDEINIT_CB_ID = 0x09
}
 

Functions

HAL_StatusTypeDef HAL_PCD_Init (PCD_HandleTypeDef *hpcd)
 Initializes the PCD according to the specified parameters in the PCD_InitTypeDef and initialize the associated handle. More...
 
HAL_StatusTypeDef HAL_PCD_DeInit (PCD_HandleTypeDef *hpcd)
 DeInitializes the PCD peripheral. More...
 
void HAL_PCD_MspInit (PCD_HandleTypeDef *hpcd)
 Initializes the PCD MSP. More...
 
void HAL_PCD_MspDeInit (PCD_HandleTypeDef *hpcd)
 DeInitializes PCD MSP. More...
 
HAL_StatusTypeDef HAL_PCD_RegisterCallback (PCD_HandleTypeDef *hpcd, HAL_PCD_CallbackIDTypeDef CallbackID, pPCD_CallbackTypeDef pCallback)
 Register a User USB PCD Callback To be used instead of the weak predefined callback. More...
 
HAL_StatusTypeDef HAL_PCD_UnRegisterCallback (PCD_HandleTypeDef *hpcd, HAL_PCD_CallbackIDTypeDef CallbackID)
 Unregister an USB PCD Callback USB PCD callabck is redirected to the weak predefined callback. More...
 
HAL_StatusTypeDef HAL_PCD_RegisterDataOutStageCallback (PCD_HandleTypeDef *hpcd, pPCD_DataOutStageCallbackTypeDef pCallback)
 Register USB PCD Data OUT Stage Callback To be used instead of the weak HAL_PCD_DataOutStageCallback() predefined callback. More...
 
HAL_StatusTypeDef HAL_PCD_UnRegisterDataOutStageCallback (PCD_HandleTypeDef *hpcd)
 UnRegister the USB PCD Data OUT Stage Callback USB PCD Data OUT Stage Callback is redirected to the weak HAL_PCD_DataOutStageCallback() predefined callback. More...
 
HAL_StatusTypeDef HAL_PCD_RegisterDataInStageCallback (PCD_HandleTypeDef *hpcd, pPCD_DataInStageCallbackTypeDef pCallback)
 Register USB PCD Data IN Stage Callback To be used instead of the weak HAL_PCD_DataInStageCallback() predefined callback. More...
 
HAL_StatusTypeDef HAL_PCD_UnRegisterDataInStageCallback (PCD_HandleTypeDef *hpcd)
 UnRegister the USB PCD Data IN Stage Callback USB PCD Data OUT Stage Callback is redirected to the weak HAL_PCD_DataInStageCallback() predefined callback. More...
 
HAL_StatusTypeDef HAL_PCD_RegisterIsoOutIncpltCallback (PCD_HandleTypeDef *hpcd, pPCD_IsoOutIncpltCallbackTypeDef pCallback)
 Register USB PCD Iso OUT incomplete Callback To be used instead of the weak HAL_PCD_ISOOUTIncompleteCallback() predefined callback. More...
 
HAL_StatusTypeDef HAL_PCD_UnRegisterIsoOutIncpltCallback (PCD_HandleTypeDef *hpcd)
 UnRegister the USB PCD Iso OUT incomplete Callback USB PCD Iso OUT incomplete Callback is redirected to the weak HAL_PCD_ISOOUTIncompleteCallback() predefined callback. More...
 
HAL_StatusTypeDef HAL_PCD_RegisterIsoInIncpltCallback (PCD_HandleTypeDef *hpcd, pPCD_IsoInIncpltCallbackTypeDef pCallback)
 Register USB PCD Iso IN incomplete Callback To be used instead of the weak HAL_PCD_ISOINIncompleteCallback() predefined callback. More...
 
HAL_StatusTypeDef HAL_PCD_UnRegisterIsoInIncpltCallback (PCD_HandleTypeDef *hpcd)
 UnRegister the USB PCD Iso IN incomplete Callback USB PCD Iso IN incomplete Callback is redirected to the weak HAL_PCD_ISOINIncompleteCallback() predefined callback. More...
 
HAL_StatusTypeDef HAL_PCD_RegisterBcdCallback (PCD_HandleTypeDef *hpcd, pPCD_BcdCallbackTypeDef pCallback)
 Register USB PCD BCD Callback To be used instead of the weak HAL_PCDEx_BCD_Callback() predefined callback. More...
 
HAL_StatusTypeDef HAL_PCD_UnRegisterBcdCallback (PCD_HandleTypeDef *hpcd)
 UnRegister the USB PCD BCD Callback USB BCD Callback is redirected to the weak HAL_PCDEx_BCD_Callback() predefined callback. More...
 
HAL_StatusTypeDef HAL_PCD_RegisterLpmCallback (PCD_HandleTypeDef *hpcd, pPCD_LpmCallbackTypeDef pCallback)
 Register USB PCD LPM Callback To be used instead of the weak HAL_PCDEx_LPM_Callback() predefined callback. More...
 
HAL_StatusTypeDef HAL_PCD_UnRegisterLpmCallback (PCD_HandleTypeDef *hpcd)
 UnRegister the USB PCD LPM Callback USB LPM Callback is redirected to the weak HAL_PCDEx_LPM_Callback() predefined callback. More...
 
HAL_StatusTypeDef HAL_PCD_Start (PCD_HandleTypeDef *hpcd)
 Start the USB device. More...
 
HAL_StatusTypeDef HAL_PCD_Stop (PCD_HandleTypeDef *hpcd)
 Stop the USB device. More...
 
void HAL_PCD_IRQHandler (PCD_HandleTypeDef *hpcd)
 Handles PCD interrupt request. More...
 
void HAL_PCD_SOFCallback (PCD_HandleTypeDef *hpcd)
 USB Start Of Frame callback. More...
 
void HAL_PCD_SetupStageCallback (PCD_HandleTypeDef *hpcd)
 Setup stage callback. More...
 
void HAL_PCD_ResetCallback (PCD_HandleTypeDef *hpcd)
 USB Reset callback. More...
 
void HAL_PCD_SuspendCallback (PCD_HandleTypeDef *hpcd)
 Suspend event callback. More...
 
void HAL_PCD_ResumeCallback (PCD_HandleTypeDef *hpcd)
 Resume event callback. More...
 
void HAL_PCD_ConnectCallback (PCD_HandleTypeDef *hpcd)
 Connection event callback. More...
 
void HAL_PCD_DisconnectCallback (PCD_HandleTypeDef *hpcd)
 Disconnection event callback. More...
 
void HAL_PCD_DataOutStageCallback (PCD_HandleTypeDef *hpcd, uint8_t epnum)
 Data OUT stage callback. More...
 
void HAL_PCD_DataInStageCallback (PCD_HandleTypeDef *hpcd, uint8_t epnum)
 Data IN stage callback. More...
 
void HAL_PCD_ISOOUTIncompleteCallback (PCD_HandleTypeDef *hpcd, uint8_t epnum)
 Incomplete ISO OUT callback. More...
 
void HAL_PCD_ISOINIncompleteCallback (PCD_HandleTypeDef *hpcd, uint8_t epnum)
 Incomplete ISO IN callback. More...
 
HAL_StatusTypeDef HAL_PCD_DevConnect (PCD_HandleTypeDef *hpcd)
 Connect the USB device. More...
 
HAL_StatusTypeDef HAL_PCD_DevDisconnect (PCD_HandleTypeDef *hpcd)
 Disconnect the USB device. More...
 
HAL_StatusTypeDef HAL_PCD_SetAddress (PCD_HandleTypeDef *hpcd, uint8_t address)
 Set the USB Device address. More...
 
HAL_StatusTypeDef HAL_PCD_EP_Open (PCD_HandleTypeDef *hpcd, uint8_t ep_addr, uint16_t ep_mps, uint8_t ep_type)
 Open and configure an endpoint. More...
 
HAL_StatusTypeDef HAL_PCD_EP_Close (PCD_HandleTypeDef *hpcd, uint8_t ep_addr)
 Deactivate an endpoint. More...
 
HAL_StatusTypeDef HAL_PCD_EP_Receive (PCD_HandleTypeDef *hpcd, uint8_t ep_addr, uint8_t *pBuf, uint32_t len)
 Receive an amount of data. More...
 
HAL_StatusTypeDef HAL_PCD_EP_Transmit (PCD_HandleTypeDef *hpcd, uint8_t ep_addr, uint8_t *pBuf, uint32_t len)
 Send an amount of data. More...
 
uint32_t HAL_PCD_EP_GetRxCount (PCD_HandleTypeDef *hpcd, uint8_t ep_addr)
 Get Received Data Size. More...
 
HAL_StatusTypeDef HAL_PCD_EP_SetStall (PCD_HandleTypeDef *hpcd, uint8_t ep_addr)
 Set a STALL condition over an endpoint. More...
 
HAL_StatusTypeDef HAL_PCD_EP_ClrStall (PCD_HandleTypeDef *hpcd, uint8_t ep_addr)
 Clear a STALL condition over in an endpoint. More...
 
HAL_StatusTypeDef HAL_PCD_EP_Flush (PCD_HandleTypeDef *hpcd, uint8_t ep_addr)
 Flush an endpoint. More...
 
HAL_StatusTypeDef HAL_PCD_ActivateRemoteWakeup (PCD_HandleTypeDef *hpcd)
 Activate remote wakeup signalling. More...
 
HAL_StatusTypeDef HAL_PCD_DeActivateRemoteWakeup (PCD_HandleTypeDef *hpcd)
 De-activate remote wakeup signalling. More...
 
PCD_StateTypeDef HAL_PCD_GetState (PCD_HandleTypeDef *hpcd)
 Return the PCD handle state. More...
 

Detailed Description

Header file of PCD HAL module.

Author
MCD Application Team
Attention

© Copyright (c) 2017 STMicroelectronics. All rights reserved.

This software component is licensed by ST under BSD 3-Clause license, the "License"; You may not use this file except in compliance with the License. You may obtain a copy of the License at: opensource.org/licenses/BSD-3-Clause

Definition in file stm32l4xx_hal_pcd.h.