STM32H735xx HAL User Manual
|
Header file of HCD HAL module. More...
#include "stm32h7xx_ll_usb.h"
Go to the source code of this file.
Data Structures | |
struct | __HCD_HandleTypeDef |
Defines | |
#define | HCD_SPEED_HIGH USBH_HS_SPEED |
#define | HCD_SPEED_FULL USBH_FSLS_SPEED |
#define | HCD_SPEED_LOW USBH_FSLS_SPEED |
#define | HCD_DEVICE_SPEED_HIGH 0U |
#define | HCD_DEVICE_SPEED_FULL 1U |
#define | HCD_DEVICE_SPEED_LOW 2U |
#define | HCD_PHY_ULPI 1U |
#define | HCD_PHY_EMBEDDED 2U |
#define | HAL_HCD_ERROR_INVALID_CALLBACK (0x00000010U) |
#define | __HAL_HCD_ENABLE(__HANDLE__) (void)USB_EnableGlobalInt ((__HANDLE__)->Instance) |
#define | __HAL_HCD_DISABLE(__HANDLE__) (void)USB_DisableGlobalInt ((__HANDLE__)->Instance) |
#define | __HAL_HCD_GET_FLAG(__HANDLE__, __INTERRUPT__) |
#define | __HAL_HCD_CLEAR_FLAG(__HANDLE__, __INTERRUPT__) (((__HANDLE__)->Instance->GINTSTS) = (__INTERRUPT__)) |
#define | __HAL_HCD_IS_INVALID_INTERRUPT(__HANDLE__) (USB_ReadInterrupts((__HANDLE__)->Instance) == 0U) |
#define | __HAL_HCD_CLEAR_HC_INT(chnum, __INTERRUPT__) (USBx_HC(chnum)->HCINT = (__INTERRUPT__)) |
#define | __HAL_HCD_MASK_HALT_HC_INT(chnum) (USBx_HC(chnum)->HCINTMSK &= ~USB_OTG_HCINTMSK_CHHM) |
#define | __HAL_HCD_UNMASK_HALT_HC_INT(chnum) (USBx_HC(chnum)->HCINTMSK |= USB_OTG_HCINTMSK_CHHM) |
#define | __HAL_HCD_MASK_ACK_HC_INT(chnum) (USBx_HC(chnum)->HCINTMSK &= ~USB_OTG_HCINTMSK_ACKM) |
#define | __HAL_HCD_UNMASK_ACK_HC_INT(chnum) (USBx_HC(chnum)->HCINTMSK |= USB_OTG_HCINTMSK_ACKM) |
Typedefs | |
typedef USB_OTG_GlobalTypeDef | HCD_TypeDef |
typedef USB_OTG_CfgTypeDef | HCD_InitTypeDef |
typedef USB_OTG_HCTypeDef | HCD_HCTypeDef |
typedef USB_OTG_URBStateTypeDef | HCD_URBStateTypeDef |
typedef USB_OTG_HCStateTypeDef | HCD_HCStateTypeDef |
typedef struct __HCD_HandleTypeDef | HCD_HandleTypeDef |
typedef void(* | pHCD_CallbackTypeDef )(HCD_HandleTypeDef *hhcd) |
typedef void(* | pHCD_HC_NotifyURBChangeCallbackTypeDef )(HCD_HandleTypeDef *hhcd, uint8_t epnum, HCD_URBStateTypeDef urb_state) |
Enumerations | |
enum | HCD_StateTypeDef { HAL_HCD_STATE_RESET = 0x00, HAL_HCD_STATE_READY = 0x01, HAL_HCD_STATE_ERROR = 0x02, HAL_HCD_STATE_BUSY = 0x03, HAL_HCD_STATE_TIMEOUT = 0x04 } |
enum | HAL_HCD_CallbackIDTypeDef { HAL_HCD_SOF_CB_ID = 0x01, HAL_HCD_CONNECT_CB_ID = 0x02, HAL_HCD_DISCONNECT_CB_ID = 0x03, HAL_HCD_PORT_ENABLED_CB_ID = 0x04, HAL_HCD_PORT_DISABLED_CB_ID = 0x05, HAL_HCD_MSPINIT_CB_ID = 0x06, HAL_HCD_MSPDEINIT_CB_ID = 0x07 } |
Functions | |
HAL_StatusTypeDef | HAL_HCD_Init (HCD_HandleTypeDef *hhcd) |
Initialize the host driver. | |
HAL_StatusTypeDef | HAL_HCD_DeInit (HCD_HandleTypeDef *hhcd) |
DeInitialize the host driver. | |
HAL_StatusTypeDef | HAL_HCD_HC_Init (HCD_HandleTypeDef *hhcd, 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 | HAL_HCD_HC_Halt (HCD_HandleTypeDef *hhcd, uint8_t ch_num) |
Halt a host channel. | |
__weak void | HAL_HCD_MspInit (HCD_HandleTypeDef *hhcd) |
Initialize the HCD MSP. | |
__weak void | HAL_HCD_MspDeInit (HCD_HandleTypeDef *hhcd) |
DeInitialize the HCD MSP. | |
HAL_StatusTypeDef | HAL_HCD_RegisterCallback (HCD_HandleTypeDef *hhcd, HAL_HCD_CallbackIDTypeDef CallbackID, pHCD_CallbackTypeDef pCallback) |
Register a User USB HCD Callback To be used instead of the weak predefined callback. | |
HAL_StatusTypeDef | HAL_HCD_UnRegisterCallback (HCD_HandleTypeDef *hhcd, HAL_HCD_CallbackIDTypeDef CallbackID) |
Unregister an USB HCD Callback USB HCD callback is redirected to the weak predefined callback. | |
HAL_StatusTypeDef | HAL_HCD_RegisterHC_NotifyURBChangeCallback (HCD_HandleTypeDef *hhcd, pHCD_HC_NotifyURBChangeCallbackTypeDef pCallback) |
Register USB HCD Host Channel Notify URB Change Callback To be used instead of the weak HAL_HCD_HC_NotifyURBChange_Callback() predefined callback. | |
HAL_StatusTypeDef | HAL_HCD_UnRegisterHC_NotifyURBChangeCallback (HCD_HandleTypeDef *hhcd) |
Unregister the USB HCD Host Channel Notify URB Change Callback USB HCD Host Channel Notify URB Change Callback is redirected to the weak HAL_HCD_HC_NotifyURBChange_Callback() predefined callback. | |
HAL_StatusTypeDef | HAL_HCD_HC_SubmitRequest (HCD_HandleTypeDef *hhcd, uint8_t ch_num, uint8_t direction, uint8_t ep_type, uint8_t token, uint8_t *pbuff, uint16_t length, uint8_t do_ping) |
Submit a new URB for processing. | |
void | HAL_HCD_IRQHandler (HCD_HandleTypeDef *hhcd) |
Handle HCD interrupt request. | |
__weak void | HAL_HCD_SOF_Callback (HCD_HandleTypeDef *hhcd) |
SOF callback. | |
__weak void | HAL_HCD_Connect_Callback (HCD_HandleTypeDef *hhcd) |
Connection Event callback. | |
__weak void | HAL_HCD_Disconnect_Callback (HCD_HandleTypeDef *hhcd) |
Disconnection Event callback. | |
__weak void | HAL_HCD_PortEnabled_Callback (HCD_HandleTypeDef *hhcd) |
Port Enabled Event callback. | |
__weak void | HAL_HCD_PortDisabled_Callback (HCD_HandleTypeDef *hhcd) |
Port Disabled Event callback. | |
__weak void | HAL_HCD_HC_NotifyURBChange_Callback (HCD_HandleTypeDef *hhcd, uint8_t chnum, HCD_URBStateTypeDef urb_state) |
Notify URB state change callback. | |
HAL_StatusTypeDef | HAL_HCD_ResetPort (HCD_HandleTypeDef *hhcd) |
Reset the host port. | |
HAL_StatusTypeDef | HAL_HCD_Start (HCD_HandleTypeDef *hhcd) |
Start the host driver. | |
HAL_StatusTypeDef | HAL_HCD_Stop (HCD_HandleTypeDef *hhcd) |
Stop the host driver. | |
HCD_StateTypeDef | HAL_HCD_GetState (HCD_HandleTypeDef *hhcd) |
Return the HCD handle state. | |
HCD_URBStateTypeDef | HAL_HCD_HC_GetURBState (HCD_HandleTypeDef *hhcd, uint8_t chnum) |
Return URB state for a channel. | |
HCD_HCStateTypeDef | HAL_HCD_HC_GetState (HCD_HandleTypeDef *hhcd, uint8_t chnum) |
Return the Host Channel state. | |
uint32_t | HAL_HCD_HC_GetXferCount (HCD_HandleTypeDef *hhcd, uint8_t chnum) |
Return the last host transfer size. | |
uint32_t | HAL_HCD_GetCurrentFrame (HCD_HandleTypeDef *hhcd) |
Return the current Host frame number. | |
uint32_t | HAL_HCD_GetCurrentSpeed (HCD_HandleTypeDef *hhcd) |
Return the Host enumeration speed. |
Header file of HCD HAL module.
Copyright (c) 2017 STMicroelectronics. All rights reserved.
This software is licensed under terms that can be found in the LICENSE file in the root directory of this software component. If no LICENSE file comes with this software, it is provided AS-IS.
Definition in file stm32h7xx_hal_hcd.h.