RTEMS 6.1-rc1
stm32h7xx_hal_hcd.c File Reference

HCD HAL module driver. This file provides firmware functions to manage the following functionalities of the USB Peripheral Controller: More...

#include "stm32h7xx_hal.h"

Detailed Description

HCD HAL module driver. This file provides firmware functions to manage the following functionalities of the USB Peripheral Controller:

Author
MCD Application Team
  • Initialization and de-initialization functions
  • IO operation functions
  • Peripheral Control functions
  • Peripheral State functions
Attention

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.

==============================================================================
                  ##### How to use this driver #####
==============================================================================
[..]
  (#)Declare a HCD_HandleTypeDef handle structure, for example:
     HCD_HandleTypeDef  hhcd;

  (#)Fill parameters of Init structure in HCD handle

  (#)Call HAL_HCD_Init() API to initialize the HCD peripheral (Core, Host core, ...)

  (#)Initialize the HCD low level resources through the HAL_HCD_MspInit() API:
      (##) Enable the HCD/USB Low Level interface clock using the following macros
           (+++) __HAL_RCC_USB_OTG_FS_CLK_ENABLE();
           (+++) __HAL_RCC_USB_OTG_HS_CLK_ENABLE(); (For High Speed Mode)
           (+++) __HAL_RCC_USB_OTG_HS_ULPI_CLK_ENABLE(); (For High Speed Mode)

      (##) Initialize the related GPIO clocks
      (##) Configure HCD pin-out
      (##) Configure HCD NVIC interrupt

  (#)Associate the Upper USB Host stack to the HAL HCD Driver:
      (##) hhcd.pData = phost;

  (#)Enable HCD transmission and reception:
      (##) HAL_HCD_Start();