Prusa MINI Firmware overview
usbd_conf.c File Reference

: This file implements the board support package for the USB device library More...

#include "stm32f4xx.h"
#include "stm32f4xx_hal.h"
#include "usbd_def.h"
#include "usbd_core.h"

Functions

void Error_Handler (void)
 This function is executed in case of error occurrence. More...
 
void SystemClock_Config (void)
 System Clock Configuration. More...
 
void HAL_PCD_MspInit (PCD_HandleTypeDef *pcdHandle)
 
void HAL_PCD_MspDeInit (PCD_HandleTypeDef *pcdHandle)
 
void HAL_PCD_SetupStageCallback (PCD_HandleTypeDef *hpcd)
 Setup stage 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_SOFCallback (PCD_HandleTypeDef *hpcd)
 SOF callback. More...
 
void HAL_PCD_ResetCallback (PCD_HandleTypeDef *hpcd)
 Reset callback. More...
 
void HAL_PCD_SuspendCallback (PCD_HandleTypeDef *hpcd)
 Suspend callback. When Low power mode is enabled the debug cannot be used (IAR, Keil doesn't support it) More...
 
void HAL_PCD_ResumeCallback (PCD_HandleTypeDef *hpcd)
 Resume callback. When Low power mode is enabled the debug cannot be used (IAR, Keil doesn't support it) More...
 
void HAL_PCD_ISOOUTIncompleteCallback (PCD_HandleTypeDef *hpcd, uint8_t epnum)
 ISOOUTIncomplete callback. More...
 
void HAL_PCD_ISOINIncompleteCallback (PCD_HandleTypeDef *hpcd, uint8_t epnum)
 ISOINIncomplete callback. More...
 
void HAL_PCD_ConnectCallback (PCD_HandleTypeDef *hpcd)
 Connect callback. More...
 
void HAL_PCD_DisconnectCallback (PCD_HandleTypeDef *hpcd)
 Disconnect callback. More...
 
USBD_StatusTypeDef USBD_LL_Init (USBD_HandleTypeDef *pdev)
 Initializes the low level portion of the device driver. More...
 
USBD_StatusTypeDef USBD_LL_DeInit (USBD_HandleTypeDef *pdev)
 De-Initializes the low level portion of the device driver. More...
 
USBD_StatusTypeDef USBD_LL_Start (USBD_HandleTypeDef *pdev)
 Starts the low level portion of the device driver. More...
 
USBD_StatusTypeDef USBD_LL_Stop (USBD_HandleTypeDef *pdev)
 Stops the low level portion of the device driver. More...
 
USBD_StatusTypeDef USBD_LL_OpenEP (USBD_HandleTypeDef *pdev, uint8_t ep_addr, uint8_t ep_type, uint16_t ep_mps)
 Opens an endpoint of the low level driver. More...
 
USBD_StatusTypeDef USBD_LL_CloseEP (USBD_HandleTypeDef *pdev, uint8_t ep_addr)
 Closes an endpoint of the low level driver. More...
 
USBD_StatusTypeDef USBD_LL_FlushEP (USBD_HandleTypeDef *pdev, uint8_t ep_addr)
 Flushes an endpoint of the Low Level Driver. More...
 
USBD_StatusTypeDef USBD_LL_StallEP (USBD_HandleTypeDef *pdev, uint8_t ep_addr)
 Sets a Stall condition on an endpoint of the Low Level Driver. More...
 
USBD_StatusTypeDef USBD_LL_ClearStallEP (USBD_HandleTypeDef *pdev, uint8_t ep_addr)
 Clears a Stall condition on an endpoint of the Low Level Driver. More...
 
uint8_t USBD_LL_IsStallEP (USBD_HandleTypeDef *pdev, uint8_t ep_addr)
 Returns Stall condition. More...
 
USBD_StatusTypeDef USBD_LL_SetUSBAddress (USBD_HandleTypeDef *pdev, uint8_t dev_addr)
 Assigns a USB address to the device. More...
 
USBD_StatusTypeDef USBD_LL_Transmit (USBD_HandleTypeDef *pdev, uint8_t ep_addr, uint8_t *pbuf, uint16_t size)
 Transmits data over an endpoint. More...
 
USBD_StatusTypeDef USBD_LL_PrepareReceive (USBD_HandleTypeDef *pdev, uint8_t ep_addr, uint8_t *pbuf, uint16_t size)
 Prepares an endpoint for reception. More...
 
uint32_t USBD_LL_GetRxDataSize (USBD_HandleTypeDef *pdev, uint8_t ep_addr)
 Returns the last transfered packet size. More...
 
void USBD_LL_Delay (uint32_t Delay)
 Delays routine for the USB Device Library. More...
 

Variables

PCD_HandleTypeDef hpcd_USB_OTG_FS
 

Detailed Description

: This file implements the board support package for the USB device library

Version
: v1.0_Cube This notice applies to any and all portions of this file that are not between comment pairs USER CODE BEGIN and USER CODE END. Other portions of this file, whether inserted by the user or by software development tools are owned by their respective copyright owners.

Copyright (c) 2019 STMicroelectronics International N.V. All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted, provided that the following conditions are met:

  1. Redistribution 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 other contributors to this software may be used to endorse or promote products derived from this software without specific written permission.
  4. This software, including modifications and/or derivative works of this software, must execute solely and exclusively on microcontroller or microprocessor devices manufactured by or for STMicroelectronics.
  5. Redistribution and use of this software other than as permitted under this license is void and will automatically terminate your rights under this license.

THIS SOFTWARE IS PROVIDED BY STMICROELECTRONICS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS, IMPLIED OR STATUTORY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT OF THIRD PARTY INTELLECTUAL PROPERTY RIGHTS ARE DISCLAIMED TO THE FULLEST EXTENT PERMITTED BY LAW. IN NO EVENT SHALL STMICROELECTRONICS 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.

Function Documentation

◆ Error_Handler()

void Error_Handler ( void  )

This function is executed in case of error occurrence.

Return values
None
1057  {
1058  /* USER CODE BEGIN Error_Handler_Debug */
1059  /* User can add his own implementation to report the HAL error return state */
1060  app_error();
1061  /* USER CODE END Error_Handler_Debug */
1062 }
Here is the caller graph for this function:

◆ SystemClock_Config()

void SystemClock_Config ( void  )

System Clock Configuration.

Parameters
None
Return values
None
None

Configure the main internal regulator output voltage

Initializes the CPU, AHB and APB busses clocks

Initializes the CPU, AHB and APB busses clocks

Configure the Systick interrupt time

Configure the Systick

Configure the main internal regulator output voltage

Initializes the CPU, AHB and APB busses clocks

Initializes the CPU, AHB and APB busses clocks

Configure the Systick interrupt time

Configure the Systick

Configure the main internal regulator output voltage

Initializes the CPU, AHB and APB busses clocks

Initializes the CPU, AHB and APB busses clocks

208  {
209 
210  RCC_OscInitTypeDef RCC_OscInitStruct;
211  RCC_ClkInitTypeDef RCC_ClkInitStruct;
212 
213  /**Configure the main internal regulator output voltage
214  */
216 
218 
219  /**Initializes the CPU, AHB and APB busses clocks
220  */
221  RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
222  RCC_OscInitStruct.HSEState = RCC_HSE_ON;
223  RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
224  RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
225  RCC_OscInitStruct.PLL.PLLM = 8;
226  RCC_OscInitStruct.PLL.PLLN = 336;
227  RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2;
228  RCC_OscInitStruct.PLL.PLLQ = 7;
229  if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) {
230  _Error_Handler(__FILE__, __LINE__);
231  }
232 
233  /**Initializes the CPU, AHB and APB busses clocks
234  */
237  RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
238  RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
239  RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4;
240  RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV2;
241 
242  if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_5) != HAL_OK) {
243  _Error_Handler(__FILE__, __LINE__);
244  }
245 
246  /**Configure the Systick interrupt time
247  */
249 
250  /**Configure the Systick
251  */
253 
254  /* SysTick_IRQn interrupt configuration */
255  HAL_NVIC_SetPriority(SysTick_IRQn, 0, 0);
256 }
Here is the call graph for this function:
Here is the caller graph for this function:

◆ HAL_PCD_MspInit()

void HAL_PCD_MspInit ( PCD_HandleTypeDef *  pcdHandle)

USB_OTG_FS GPIO Configuration PA11 ---—> USB_OTG_FS_DM PA12 ---—> USB_OTG_FS_DP

95  {
96  GPIO_InitTypeDef GPIO_InitStruct;
97  if (pcdHandle->Instance == USB_OTG_FS) {
98  /* USER CODE BEGIN USB_OTG_FS_MspInit 0 */
99 
100  /* USER CODE END USB_OTG_FS_MspInit 0 */
101 
102  /**USB_OTG_FS GPIO Configuration
103  PA11 ------> USB_OTG_FS_DM
104  PA12 ------> USB_OTG_FS_DP
105  */
106  GPIO_InitStruct.Pin = USB_FS_N_Pin | USB_FS_P_Pin;
107  GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
108  GPIO_InitStruct.Pull = GPIO_NOPULL;
109  GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
110  GPIO_InitStruct.Alternate = GPIO_AF10_OTG_FS;
111  HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
112 
113  /* Peripheral clock enable */
114  __HAL_RCC_USB_OTG_FS_CLK_ENABLE();
115 
116  /* Peripheral interrupt init */
117  HAL_NVIC_SetPriority(OTG_FS_IRQn, 5, 0);
118  HAL_NVIC_EnableIRQ(OTG_FS_IRQn);
119  /* USER CODE BEGIN USB_OTG_FS_MspInit 1 */
120 
121  /* USER CODE END USB_OTG_FS_MspInit 1 */
122  }
Here is the call graph for this function:

◆ HAL_PCD_MspDeInit()

void HAL_PCD_MspDeInit ( PCD_HandleTypeDef *  pcdHandle)

USB_OTG_FS GPIO Configuration PA11 ---—> USB_OTG_FS_DM PA12 ---—> USB_OTG_FS_DP

125  {
126  if (pcdHandle->Instance == USB_OTG_FS) {
127  /* USER CODE BEGIN USB_OTG_FS_MspDeInit 0 */
128 
129  /* USER CODE END USB_OTG_FS_MspDeInit 0 */
130  /* Peripheral clock disable */
131  __HAL_RCC_USB_OTG_FS_CLK_DISABLE();
132 
133  /**USB_OTG_FS GPIO Configuration
134  PA11 ------> USB_OTG_FS_DM
135  PA12 ------> USB_OTG_FS_DP
136  */
138 
139  /* Peripheral interrupt Deinit*/
140  HAL_NVIC_DisableIRQ(OTG_FS_IRQn);
141 
142  /* USER CODE BEGIN USB_OTG_FS_MspDeInit 1 */
143 
144  /* USER CODE END USB_OTG_FS_MspDeInit 1 */
145  }
Here is the call graph for this function:

◆ HAL_PCD_SetupStageCallback()

void HAL_PCD_SetupStageCallback ( PCD_HandleTypeDef *  hpcd)

Setup stage callback.

Parameters
hpcdPCD handle
Return values
None
153  {
154  USBD_LL_SetupStage((USBD_HandleTypeDef *)hpcd->pData, (uint8_t *)hpcd->Setup);
Here is the call graph for this function:

◆ HAL_PCD_DataOutStageCallback()

void HAL_PCD_DataOutStageCallback ( PCD_HandleTypeDef *  hpcd,
uint8_t  epnum 
)

Data Out stage callback.

Parameters
hpcdPCD handle
epnumEndpoint number
Return values
None
163  {
164  USBD_LL_DataOutStage((USBD_HandleTypeDef *)hpcd->pData, epnum, hpcd->OUT_ep[epnum].xfer_buff);
Here is the call graph for this function:

◆ HAL_PCD_DataInStageCallback()

void HAL_PCD_DataInStageCallback ( PCD_HandleTypeDef *  hpcd,
uint8_t  epnum 
)

Data In stage callback.

Parameters
hpcdPCD handle
epnumEndpoint number
Return values
None
173  {
174  USBD_LL_DataInStage((USBD_HandleTypeDef *)hpcd->pData, epnum, hpcd->IN_ep[epnum].xfer_buff);
Here is the call graph for this function:

◆ HAL_PCD_SOFCallback()

void HAL_PCD_SOFCallback ( PCD_HandleTypeDef *  hpcd)

SOF callback.

Parameters
hpcdPCD handle
Return values
None
182  {
183  USBD_LL_SOF((USBD_HandleTypeDef *)hpcd->pData);
Here is the call graph for this function:

◆ HAL_PCD_ResetCallback()

void HAL_PCD_ResetCallback ( PCD_HandleTypeDef *  hpcd)

Reset callback.

Parameters
hpcdPCD handle
Return values
None
191  {
193 
194  /* Set USB current speed. */
195  switch (hpcd->Init.speed) {
196  case PCD_SPEED_HIGH:
197  speed = USBD_SPEED_HIGH;
198  break;
199  case PCD_SPEED_FULL:
200  speed = USBD_SPEED_FULL;
201  break;
202 
203  default:
204  speed = USBD_SPEED_FULL;
205  break;
206  }
207  USBD_LL_SetSpeed((USBD_HandleTypeDef *)hpcd->pData, speed);
208 
209  /* Reset Device. */
210  USBD_LL_Reset((USBD_HandleTypeDef *)hpcd->pData);
Here is the call graph for this function:

◆ HAL_PCD_SuspendCallback()

void HAL_PCD_SuspendCallback ( PCD_HandleTypeDef *  hpcd)

Suspend callback. When Low power mode is enabled the debug cannot be used (IAR, Keil doesn't support it)

Parameters
hpcdPCD handle
Return values
None
219  {
220  /* Inform USB library that core enters in suspend Mode. */
221  USBD_LL_Suspend((USBD_HandleTypeDef *)hpcd->pData);
222  __HAL_PCD_GATE_PHYCLOCK(hpcd);
223  /* Enter in STOP mode. */
224  /* USER CODE BEGIN 2 */
225  if (hpcd->Init.low_power_enable) {
226  /* Set SLEEPDEEP bit and SleepOnExit of Cortex System Control Register. */
227  SCB->SCR |= (uint32_t)((uint32_t)(SCB_SCR_SLEEPDEEP_Msk | SCB_SCR_SLEEPONEXIT_Msk));
228  }
229  /* USER CODE END 2 */
Here is the call graph for this function:

◆ HAL_PCD_ResumeCallback()

void HAL_PCD_ResumeCallback ( PCD_HandleTypeDef *  hpcd)

Resume callback. When Low power mode is enabled the debug cannot be used (IAR, Keil doesn't support it)

Parameters
hpcdPCD handle
Return values
None
238  {
239  /* USER CODE BEGIN 3 */
240 
241  /* USER CODE END 3 */
242  USBD_LL_Resume((USBD_HandleTypeDef *)hpcd->pData);
Here is the call graph for this function:

◆ HAL_PCD_ISOOUTIncompleteCallback()

void HAL_PCD_ISOOUTIncompleteCallback ( PCD_HandleTypeDef *  hpcd,
uint8_t  epnum 
)

ISOOUTIncomplete callback.

Parameters
hpcdPCD handle
epnumEndpoint number
Return values
None
251  {
252  USBD_LL_IsoOUTIncomplete((USBD_HandleTypeDef *)hpcd->pData, epnum);
Here is the call graph for this function:

◆ HAL_PCD_ISOINIncompleteCallback()

void HAL_PCD_ISOINIncompleteCallback ( PCD_HandleTypeDef *  hpcd,
uint8_t  epnum 
)

ISOINIncomplete callback.

Parameters
hpcdPCD handle
epnumEndpoint number
Return values
None
261  {
262  USBD_LL_IsoINIncomplete((USBD_HandleTypeDef *)hpcd->pData, epnum);
Here is the call graph for this function:

◆ HAL_PCD_ConnectCallback()

void HAL_PCD_ConnectCallback ( PCD_HandleTypeDef *  hpcd)

Connect callback.

Parameters
hpcdPCD handle
Return values
None
270  {
Here is the call graph for this function:

◆ HAL_PCD_DisconnectCallback()

void HAL_PCD_DisconnectCallback ( PCD_HandleTypeDef *  hpcd)

Disconnect callback.

Parameters
hpcdPCD handle
Return values
None
279  {
Here is the call graph for this function:

Variable Documentation

◆ hpcd_USB_OTG_FS

PCD_HandleTypeDef hpcd_USB_OTG_FS
RCC_PLLP_DIV2
#define RCC_PLLP_DIV2
Definition: stm32f4xx_hal_rcc.h:186
GPIO_MODE_AF_PP
#define GPIO_MODE_AF_PP
Definition: stm32f4xx_hal_gpio.h:138
USBD_SPEED_FULL
Definition: usbd_def.h:189
USB_FS_N_Pin
#define USB_FS_N_Pin
Definition: main.h:161
HAL_OK
Definition: stm32f4xx_hal_def.h:57
HAL_RCC_GetHCLKFreq
uint32_t HAL_RCC_GetHCLKFreq(void)
RCC_HCLK_DIV2
#define RCC_HCLK_DIV2
Definition: stm32f4xx_hal_rcc.h:260
RCC_PLLInitTypeDef::PLLP
uint32_t PLLP
Definition: stm32f4xx_hal_rcc_ex.h:78
RCC_ClkInitTypeDef
RCC System, AHB and APB busses clock configuration structure definition.
Definition: stm32f4xx_hal_rcc.h:93
HAL_RCC_OscConfig
HAL_StatusTypeDef HAL_RCC_OscConfig(RCC_OscInitTypeDef *RCC_OscInitStruct)
GPIO_InitTypeDef::Mode
uint32_t Mode
Definition: stm32f4xx_hal_gpio.h:68
RCC_ClkInitTypeDef::SYSCLKSource
uint32_t SYSCLKSource
Definition: stm32f4xx_hal_rcc.h:98
app_error
void app_error(void)
Definition: appmain.cpp:145
GPIO_InitTypeDef::Alternate
uint32_t Alternate
Definition: stm32f4xx_hal_gpio.h:77
RCC_HSE_ON
#define RCC_HSE_ON
Definition: stm32f4xx_hal_rcc.h:137
USBD_LL_DataInStage
USBD_StatusTypeDef USBD_LL_DataInStage(USBD_HandleTypeDef *pdev, uint8_t epnum, uint8_t *pdata)
USBD_DataInStage Handle data in stage.
Definition: usbd_core.c:343
RCC_CLOCKTYPE_PCLK2
#define RCC_CLOCKTYPE_PCLK2
Definition: stm32f4xx_hal_rcc.h:209
GPIO_InitTypeDef::Pull
uint32_t Pull
Definition: stm32f4xx_hal_gpio.h:71
RCC_CLOCKTYPE_PCLK1
#define RCC_CLOCKTYPE_PCLK1
Definition: stm32f4xx_hal_rcc.h:208
HAL_GPIO_DeInit
void HAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin)
RCC_PLLInitTypeDef::PLLQ
uint32_t PLLQ
Definition: stm32f4xx_hal_rcc_ex.h:81
RCC_PLLInitTypeDef::PLLSource
uint32_t PLLSource
Definition: stm32f4xx_hal_rcc_ex.h:68
RCC_OscInitTypeDef::OscillatorType
uint32_t OscillatorType
Definition: stm32f4xx_hal_rcc.h:69
RCC_PLLInitTypeDef::PLLM
uint32_t PLLM
Definition: stm32f4xx_hal_rcc_ex.h:71
RCC_OscInitTypeDef::HSEState
uint32_t HSEState
Definition: stm32f4xx_hal_rcc.h:72
__HAL_PWR_VOLTAGESCALING_CONFIG
#define __HAL_PWR_VOLTAGESCALING_CONFIG(__REGULATOR__)
macros configure the main internal regulator output voltage.
Definition: stm32f4xx_hal_pwr_ex.h:153
RCC_PLLSOURCE_HSE
#define RCC_PLLSOURCE_HSE
Definition: stm32f4xx_hal_rcc.h:198
RCC_PLL_ON
#define RCC_PLL_ON
Definition: stm32f4xx_hal_rcc.h:178
USBD_LL_Resume
USBD_StatusTypeDef USBD_LL_Resume(USBD_HandleTypeDef *pdev)
USBD_Resume Handle Resume event.
Definition: usbd_core.c:478
RCC_HCLK_DIV4
#define RCC_HCLK_DIV4
Definition: stm32f4xx_hal_rcc.h:261
USBD_LL_DataOutStage
USBD_StatusTypeDef USBD_LL_DataOutStage(USBD_HandleTypeDef *pdev, uint8_t epnum, uint8_t *pdata)
USBD_DataOutStage Handle data OUT stage.
Definition: usbd_core.c:299
_USBD_HandleTypeDef
Definition: usbd_def.h:225
RCC_OscInitTypeDef::PLL
RCC_PLLInitTypeDef PLL
Definition: stm32f4xx_hal_rcc.h:87
RCC_CLOCKTYPE_SYSCLK
#define RCC_CLOCKTYPE_SYSCLK
Definition: stm32f4xx_hal_rcc.h:206
HAL_SYSTICK_Config
uint32_t HAL_SYSTICK_Config(uint32_t TicksNumb)
HAL_GPIO_Init
void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init)
RCC_PLLInitTypeDef::PLLState
uint32_t PLLState
Definition: stm32f4xx_hal_rcc_ex.h:65
RCC_ClkInitTypeDef::APB1CLKDivider
uint32_t APB1CLKDivider
Definition: stm32f4xx_hal_rcc.h:104
USBD_LL_SOF
USBD_StatusTypeDef USBD_LL_SOF(USBD_HandleTypeDef *pdev)
USBD_SOF Handle SOF event.
Definition: usbd_core.c:491
HAL_NVIC_SetPriority
void HAL_NVIC_SetPriority(IRQn_Type IRQn, uint32_t PreemptPriority, uint32_t SubPriority)
GPIO_NOPULL
#define GPIO_NOPULL
Definition: stm32f4xx_hal_gpio.h:170
GPIO_SPEED_FREQ_VERY_HIGH
#define GPIO_SPEED_FREQ_VERY_HIGH
Definition: stm32f4xx_hal_gpio.h:161
USBD_LL_Reset
USBD_StatusTypeDef USBD_LL_Reset(USBD_HandleTypeDef *pdev)
USBD_LL_Reset Handle Reset event.
Definition: usbd_core.c:415
USBD_SPEED_HIGH
Definition: usbd_def.h:188
uint8_t
const uint8_t[]
Definition: 404_html.c:3
RCC_CLOCKTYPE_HCLK
#define RCC_CLOCKTYPE_HCLK
Definition: stm32f4xx_hal_rcc.h:207
HAL_NVIC_EnableIRQ
void HAL_NVIC_EnableIRQ(IRQn_Type IRQn)
RCC_ClkInitTypeDef::AHBCLKDivider
uint32_t AHBCLKDivider
Definition: stm32f4xx_hal_rcc.h:101
RCC_OSCILLATORTYPE_HSE
#define RCC_OSCILLATORTYPE_HSE
Definition: stm32f4xx_hal_rcc.h:125
RCC_SYSCLK_DIV1
#define RCC_SYSCLK_DIV1
Definition: stm32f4xx_hal_rcc.h:243
USB_FS_P_Pin
#define USB_FS_P_Pin
Definition: main.h:163
USBD_LL_DevDisconnected
USBD_StatusTypeDef USBD_LL_DevDisconnected(USBD_HandleTypeDef *pdev)
USBD_DevDisconnected Handle device disconnection event.
Definition: usbd_core.c:542
GPIO_InitTypeDef::Pin
uint32_t Pin
Definition: stm32f4xx_hal_gpio.h:65
RCC_ClkInitTypeDef::ClockType
uint32_t ClockType
Definition: stm32f4xx_hal_rcc.h:95
__HAL_RCC_PWR_CLK_ENABLE
#define __HAL_RCC_PWR_CLK_ENABLE()
Definition: stm32f4xx_hal_rcc.h:528
GPIO_InitTypeDef::Speed
uint32_t Speed
Definition: stm32f4xx_hal_gpio.h:74
HAL_NVIC_DisableIRQ
void HAL_NVIC_DisableIRQ(IRQn_Type IRQn)
RCC_SYSCLKSOURCE_PLLCLK
#define RCC_SYSCLKSOURCE_PLLCLK
Definition: stm32f4xx_hal_rcc.h:221
USBD_LL_SetSpeed
USBD_StatusTypeDef USBD_LL_SetSpeed(USBD_HandleTypeDef *pdev, USBD_SpeedTypeDef speed)
USBD_LL_Reset Handle Reset event.
Definition: usbd_core.c:451
SYSTICK_CLKSOURCE_HCLK
#define SYSTICK_CLKSOURCE_HCLK
Definition: stm32f4xx_hal_cortex.h:129
HAL_RCC_ClockConfig
HAL_StatusTypeDef HAL_RCC_ClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, uint32_t FLatency)
USBD_SpeedTypeDef
USBD_SpeedTypeDef
Definition: usbd_def.h:186
RCC_ClkInitTypeDef::APB2CLKDivider
uint32_t APB2CLKDivider
Definition: stm32f4xx_hal_rcc.h:107
RCC_OscInitTypeDef
RCC Internal/External Oscillator (HSE, HSI, LSE and LSI) configuration structure definition.
Definition: stm32f4xx_hal_rcc.h:67
USBD_LL_IsoOUTIncomplete
USBD_StatusTypeDef USBD_LL_IsoOUTIncomplete(USBD_HandleTypeDef *pdev, uint8_t epnum)
USBD_IsoOUTIncomplete Handle iso out incomplete event.
Definition: usbd_core.c:520
HAL_SYSTICK_CLKSourceConfig
void HAL_SYSTICK_CLKSourceConfig(uint32_t CLKSource)
PWR_REGULATOR_VOLTAGE_SCALE1
#define PWR_REGULATOR_VOLTAGE_SCALE1
Definition: stm32f4xx_hal_pwr_ex.h:90
RCC_PLLInitTypeDef::PLLN
uint32_t PLLN
Definition: stm32f4xx_hal_rcc_ex.h:74
USBD_LL_IsoINIncomplete
USBD_StatusTypeDef USBD_LL_IsoINIncomplete(USBD_HandleTypeDef *pdev, uint8_t epnum)
USBD_IsoINIncomplete Handle iso in incomplete event.
Definition: usbd_core.c:509
USBD_LL_SetupStage
USBD_StatusTypeDef USBD_LL_SetupStage(USBD_HandleTypeDef *pdev, uint8_t *psetup)
USBD_SetupStage Handle the setup stage.
Definition: usbd_core.c:263
GPIO_InitTypeDef
GPIO Init structure definition.
Definition: stm32f4xx_hal_gpio.h:63
USBD_LL_Suspend
USBD_StatusTypeDef USBD_LL_Suspend(USBD_HandleTypeDef *pdev)
USBD_Suspend Handle Suspend event.
Definition: usbd_core.c:464
USBD_LL_DevConnected
USBD_StatusTypeDef USBD_LL_DevConnected(USBD_HandleTypeDef *pdev)
USBD_DevConnected Handle device connection event.
Definition: usbd_core.c:531