USB CDC library for MBED on STM32
Embed:
(wiki syntax)
Show/hide line numbers
usbd_core.h
Go to the documentation of this file.
00001 /** 00002 ****************************************************************************** 00003 * @file usbd_core.h 00004 * @author MCD Application Team 00005 * @version V2.4.2 00006 * @date 11-December-2015 00007 * @brief Header file for usbd_core.c file 00008 ****************************************************************************** 00009 * @attention 00010 * 00011 * <h2><center>© COPYRIGHT 2015 STMicroelectronics</center></h2> 00012 * 00013 * Licensed under MCD-ST Liberty SW License Agreement V2, (the "License"); 00014 * You may not use this file except in compliance with the License. 00015 * You may obtain a copy of the License at: 00016 * 00017 * http://www.st.com/software_license_agreement_liberty_v2 00018 * 00019 * Unless required by applicable law or agreed to in writing, software 00020 * distributed under the License is distributed on an "AS IS" BASIS, 00021 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00022 * See the License for the specific language governing permissions and 00023 * limitations under the License. 00024 * 00025 ****************************************************************************** 00026 */ 00027 00028 /* Define to prevent recursive inclusion -------------------------------------*/ 00029 #ifndef __USBD_CORE_H 00030 #define __USBD_CORE_H 00031 00032 #ifdef __cplusplus 00033 extern "C" { 00034 #endif 00035 00036 /* Includes ------------------------------------------------------------------*/ 00037 #include "usbd_conf.h" 00038 #include "usbd_def.h" 00039 #include "usbd_ioreq.h" 00040 #include "usbd_ctlreq.h" 00041 00042 /** @addtogroup STM32_USB_DEVICE_LIBRARY 00043 * @{ 00044 */ 00045 00046 /** @defgroup USBD_CORE 00047 * @brief This file is the Header file for usbd_core.c file 00048 * @{ 00049 */ 00050 00051 00052 /** @defgroup USBD_CORE_Exported_Defines 00053 * @{ 00054 */ 00055 00056 /** 00057 * @} 00058 */ 00059 00060 00061 /** @defgroup USBD_CORE_Exported_TypesDefinitions 00062 * @{ 00063 */ 00064 00065 00066 /** 00067 * @} 00068 */ 00069 00070 00071 00072 /** @defgroup USBD_CORE_Exported_Macros 00073 * @{ 00074 */ 00075 00076 /** 00077 * @} 00078 */ 00079 00080 /** @defgroup USBD_CORE_Exported_Variables 00081 * @{ 00082 */ 00083 #define USBD_SOF USBD_LL_SOF 00084 /** 00085 * @} 00086 */ 00087 00088 /** @defgroup USBD_CORE_Exported_FunctionsPrototype 00089 * @{ 00090 */ 00091 USBD_StatusTypeDef USBD_Init(USBD_HandleTypeDef *pdev, USBD_DescriptorsTypeDef *pdesc, uint8_t id); 00092 USBD_StatusTypeDef USBD_DeInit(USBD_HandleTypeDef *pdev); 00093 USBD_StatusTypeDef USBD_Start (USBD_HandleTypeDef *pdev); 00094 USBD_StatusTypeDef USBD_Stop (USBD_HandleTypeDef *pdev); 00095 USBD_StatusTypeDef USBD_RegisterClass(USBD_HandleTypeDef *pdev, USBD_ClassTypeDef *pclass); 00096 00097 USBD_StatusTypeDef USBD_RunTestMode (USBD_HandleTypeDef *pdev); 00098 USBD_StatusTypeDef USBD_SetClassConfig(USBD_HandleTypeDef *pdev, uint8_t cfgidx); 00099 USBD_StatusTypeDef USBD_ClrClassConfig(USBD_HandleTypeDef *pdev, uint8_t cfgidx); 00100 00101 USBD_StatusTypeDef USBD_LL_SetupStage(USBD_HandleTypeDef *pdev, uint8_t *psetup); 00102 USBD_StatusTypeDef USBD_LL_DataOutStage(USBD_HandleTypeDef *pdev , uint8_t epnum, uint8_t *pdata); 00103 USBD_StatusTypeDef USBD_LL_DataInStage(USBD_HandleTypeDef *pdev , uint8_t epnum, uint8_t *pdata); 00104 00105 USBD_StatusTypeDef USBD_LL_Reset(USBD_HandleTypeDef *pdev); 00106 USBD_StatusTypeDef USBD_LL_SetSpeed(USBD_HandleTypeDef *pdev, USBD_SpeedTypeDef speed); 00107 USBD_StatusTypeDef USBD_LL_Suspend(USBD_HandleTypeDef *pdev); 00108 USBD_StatusTypeDef USBD_LL_Resume(USBD_HandleTypeDef *pdev); 00109 00110 USBD_StatusTypeDef USBD_LL_SOF(USBD_HandleTypeDef *pdev); 00111 USBD_StatusTypeDef USBD_LL_IsoINIncomplete(USBD_HandleTypeDef *pdev, uint8_t epnum); 00112 USBD_StatusTypeDef USBD_LL_IsoOUTIncomplete(USBD_HandleTypeDef *pdev, uint8_t epnum); 00113 00114 USBD_StatusTypeDef USBD_LL_DevConnected(USBD_HandleTypeDef *pdev); 00115 USBD_StatusTypeDef USBD_LL_DevDisconnected(USBD_HandleTypeDef *pdev); 00116 00117 /* USBD Low Level Driver */ 00118 USBD_StatusTypeDef USBD_LL_Init (USBD_HandleTypeDef *pdev); 00119 USBD_StatusTypeDef USBD_LL_DeInit (USBD_HandleTypeDef *pdev); 00120 USBD_StatusTypeDef USBD_LL_Start(USBD_HandleTypeDef *pdev); 00121 USBD_StatusTypeDef USBD_LL_Stop (USBD_HandleTypeDef *pdev); 00122 USBD_StatusTypeDef USBD_LL_OpenEP (USBD_HandleTypeDef *pdev, 00123 uint8_t ep_addr, 00124 uint8_t ep_type, 00125 uint16_t ep_mps); 00126 00127 USBD_StatusTypeDef USBD_LL_CloseEP (USBD_HandleTypeDef *pdev, uint8_t ep_addr); 00128 USBD_StatusTypeDef USBD_LL_FlushEP (USBD_HandleTypeDef *pdev, uint8_t ep_addr); 00129 USBD_StatusTypeDef USBD_LL_StallEP (USBD_HandleTypeDef *pdev, uint8_t ep_addr); 00130 USBD_StatusTypeDef USBD_LL_ClearStallEP (USBD_HandleTypeDef *pdev, uint8_t ep_addr); 00131 uint8_t USBD_LL_IsStallEP (USBD_HandleTypeDef *pdev, uint8_t ep_addr); 00132 USBD_StatusTypeDef USBD_LL_SetUSBAddress (USBD_HandleTypeDef *pdev, uint8_t dev_addr); 00133 USBD_StatusTypeDef USBD_LL_Transmit (USBD_HandleTypeDef *pdev, 00134 uint8_t ep_addr, 00135 uint8_t *pbuf, 00136 uint16_t size); 00137 00138 USBD_StatusTypeDef USBD_LL_PrepareReceive(USBD_HandleTypeDef *pdev, 00139 uint8_t ep_addr, 00140 uint8_t *pbuf, 00141 uint16_t size); 00142 00143 uint32_t USBD_LL_GetRxDataSize (USBD_HandleTypeDef *pdev, uint8_t ep_addr); 00144 void USBD_LL_Delay (uint32_t Delay); 00145 00146 /** 00147 * @} 00148 */ 00149 00150 #ifdef __cplusplus 00151 } 00152 #endif 00153 00154 #endif /* __USBD_CORE_H */ 00155 00156 /** 00157 * @} 00158 */ 00159 00160 /** 00161 * @} 00162 */ 00163 00164 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ 00165 00166 00167 00168
Generated on Thu Jul 14 2022 15:47:45 by
![doxygen](doxygen.png)