|
@@ -798,6 +798,140 @@ void HAL_UART_MspDeInit(UART_HandleTypeDef* huart)
|
|
|
|
|
|
}
|
|
|
|
|
|
+/**
|
|
|
+* @brief PCD MSP Initialization
|
|
|
+* This function configures the hardware resources used in this example
|
|
|
+* @param hpcd: PCD handle pointer
|
|
|
+* @retval None
|
|
|
+*/
|
|
|
+void HAL_PCD_MspInit(PCD_HandleTypeDef* hpcd)
|
|
|
+{
|
|
|
+ GPIO_InitTypeDef GPIO_InitStruct = {0};
|
|
|
+ if(hpcd->Instance==USB_OTG_HS)
|
|
|
+ {
|
|
|
+ /* USER CODE BEGIN USB_OTG_HS_MspInit 0 */
|
|
|
+
|
|
|
+ /* USER CODE END USB_OTG_HS_MspInit 0 */
|
|
|
+
|
|
|
+ __HAL_RCC_GPIOB_CLK_ENABLE();
|
|
|
+ __HAL_RCC_GPIOI_CLK_ENABLE();
|
|
|
+ __HAL_RCC_GPIOH_CLK_ENABLE();
|
|
|
+ __HAL_RCC_GPIOC_CLK_ENABLE();
|
|
|
+ __HAL_RCC_GPIOA_CLK_ENABLE();
|
|
|
+ /**USB_OTG_HS GPIO Configuration
|
|
|
+ PB5 ------> USB_OTG_HS_ULPI_D7
|
|
|
+ PI11 ------> USB_OTG_HS_ULPI_DIR
|
|
|
+ PH4 ------> USB_OTG_HS_ULPI_NXT
|
|
|
+ PC0 ------> USB_OTG_HS_ULPI_STP
|
|
|
+ PA5 ------> USB_OTG_HS_ULPI_CK
|
|
|
+ PB12 ------> USB_OTG_HS_ULPI_D5
|
|
|
+ PB13 ------> USB_OTG_HS_ULPI_D6
|
|
|
+ PA3 ------> USB_OTG_HS_ULPI_D0
|
|
|
+ PB1 ------> USB_OTG_HS_ULPI_D2
|
|
|
+ PB0 ------> USB_OTG_HS_ULPI_D1
|
|
|
+ PB10 ------> USB_OTG_HS_ULPI_D3
|
|
|
+ PB11 ------> USB_OTG_HS_ULPI_D4
|
|
|
+ */
|
|
|
+ GPIO_InitStruct.Pin = GPIO_PIN_5|GPIO_PIN_12|GPIO_PIN_13|GPIO_PIN_1
|
|
|
+ |GPIO_PIN_0|GPIO_PIN_10|GPIO_PIN_11;
|
|
|
+ GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
|
|
|
+ GPIO_InitStruct.Pull = GPIO_NOPULL;
|
|
|
+ GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
|
|
|
+ GPIO_InitStruct.Alternate = GPIO_AF10_OTG2_HS;
|
|
|
+ HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
|
|
|
+
|
|
|
+ GPIO_InitStruct.Pin = GPIO_PIN_11;
|
|
|
+ GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
|
|
|
+ GPIO_InitStruct.Pull = GPIO_NOPULL;
|
|
|
+ GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
|
|
|
+ GPIO_InitStruct.Alternate = GPIO_AF10_OTG2_HS;
|
|
|
+ HAL_GPIO_Init(GPIOI, &GPIO_InitStruct);
|
|
|
+
|
|
|
+ GPIO_InitStruct.Pin = GPIO_PIN_4;
|
|
|
+ GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
|
|
|
+ GPIO_InitStruct.Pull = GPIO_NOPULL;
|
|
|
+ GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
|
|
|
+ GPIO_InitStruct.Alternate = GPIO_AF10_OTG2_HS;
|
|
|
+ HAL_GPIO_Init(GPIOH, &GPIO_InitStruct);
|
|
|
+
|
|
|
+ GPIO_InitStruct.Pin = GPIO_PIN_0;
|
|
|
+ GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
|
|
|
+ GPIO_InitStruct.Pull = GPIO_NOPULL;
|
|
|
+ GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
|
|
|
+ GPIO_InitStruct.Alternate = GPIO_AF10_OTG2_HS;
|
|
|
+ HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
|
|
|
+
|
|
|
+ GPIO_InitStruct.Pin = GPIO_PIN_5|GPIO_PIN_3;
|
|
|
+ GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
|
|
|
+ GPIO_InitStruct.Pull = GPIO_NOPULL;
|
|
|
+ GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
|
|
|
+ GPIO_InitStruct.Alternate = GPIO_AF10_OTG2_HS;
|
|
|
+ HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
|
|
|
+
|
|
|
+ /* Peripheral clock enable */
|
|
|
+ __HAL_RCC_USB_OTG_HS_CLK_ENABLE();
|
|
|
+ __HAL_RCC_USB_OTG_HS_ULPI_CLK_ENABLE();
|
|
|
+ /* USB_OTG_HS interrupt Init */
|
|
|
+ HAL_NVIC_SetPriority(OTG_HS_IRQn, 0, 0);
|
|
|
+ HAL_NVIC_EnableIRQ(OTG_HS_IRQn);
|
|
|
+ /* USER CODE BEGIN USB_OTG_HS_MspInit 1 */
|
|
|
+
|
|
|
+ /* USER CODE END USB_OTG_HS_MspInit 1 */
|
|
|
+ }
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+* @brief PCD MSP De-Initialization
|
|
|
+* This function freeze the hardware resources used in this example
|
|
|
+* @param hpcd: PCD handle pointer
|
|
|
+* @retval None
|
|
|
+*/
|
|
|
+void HAL_PCD_MspDeInit(PCD_HandleTypeDef* hpcd)
|
|
|
+{
|
|
|
+ if(hpcd->Instance==USB_OTG_HS)
|
|
|
+ {
|
|
|
+ /* USER CODE BEGIN USB_OTG_HS_MspDeInit 0 */
|
|
|
+
|
|
|
+ /* USER CODE END USB_OTG_HS_MspDeInit 0 */
|
|
|
+ /* Peripheral clock disable */
|
|
|
+ __HAL_RCC_USB_OTG_HS_CLK_DISABLE();
|
|
|
+ __HAL_RCC_USB_OTG_HS_ULPI_CLK_DISABLE();
|
|
|
+
|
|
|
+ /**USB_OTG_HS GPIO Configuration
|
|
|
+ PB5 ------> USB_OTG_HS_ULPI_D7
|
|
|
+ PI11 ------> USB_OTG_HS_ULPI_DIR
|
|
|
+ PH4 ------> USB_OTG_HS_ULPI_NXT
|
|
|
+ PC0 ------> USB_OTG_HS_ULPI_STP
|
|
|
+ PA5 ------> USB_OTG_HS_ULPI_CK
|
|
|
+ PB12 ------> USB_OTG_HS_ULPI_D5
|
|
|
+ PB13 ------> USB_OTG_HS_ULPI_D6
|
|
|
+ PA3 ------> USB_OTG_HS_ULPI_D0
|
|
|
+ PB1 ------> USB_OTG_HS_ULPI_D2
|
|
|
+ PB0 ------> USB_OTG_HS_ULPI_D1
|
|
|
+ PB10 ------> USB_OTG_HS_ULPI_D3
|
|
|
+ PB11 ------> USB_OTG_HS_ULPI_D4
|
|
|
+ */
|
|
|
+ HAL_GPIO_DeInit(GPIOB, GPIO_PIN_5|GPIO_PIN_12|GPIO_PIN_13|GPIO_PIN_1
|
|
|
+ |GPIO_PIN_0|GPIO_PIN_10|GPIO_PIN_11);
|
|
|
+
|
|
|
+ HAL_GPIO_DeInit(GPIOI, GPIO_PIN_11);
|
|
|
+
|
|
|
+ HAL_GPIO_DeInit(GPIOH, GPIO_PIN_4);
|
|
|
+
|
|
|
+ HAL_GPIO_DeInit(GPIOC, GPIO_PIN_0);
|
|
|
+
|
|
|
+ HAL_GPIO_DeInit(GPIOA, GPIO_PIN_5|GPIO_PIN_3);
|
|
|
+
|
|
|
+ /* USB_OTG_HS interrupt DeInit */
|
|
|
+ HAL_NVIC_DisableIRQ(OTG_HS_IRQn);
|
|
|
+ /* USER CODE BEGIN USB_OTG_HS_MspDeInit 1 */
|
|
|
+
|
|
|
+ /* USER CODE END USB_OTG_HS_MspDeInit 1 */
|
|
|
+ }
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
/* USER CODE BEGIN 1 */
|
|
|
|
|
|
/* USER CODE END 1 */
|