The official Mbed 2 C/C++ SDK provides the software platform and libraries to build your applications.

Dependents:   hello SerialTestv11 SerialTestv12 Sierpinski ... more

mbed 2

This is the mbed 2 library. If you'd like to learn about Mbed OS please see the mbed-os docs.

Committer:
AnnaBridge
Date:
Thu Nov 09 11:14:10 2017 +0000
Revision:
157:e7ca05fa8600
Parent:
156:ff21514d8981
Child:
160:5571c4ff569f
Release 155 of the mbed library.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AnnaBridge 156:ff21514d8981 1 /**
AnnaBridge 156:ff21514d8981 2 ******************************************************************************
AnnaBridge 156:ff21514d8981 3 * @file stm32f0xx_hal_smartcard_ex.h
AnnaBridge 156:ff21514d8981 4 * @author MCD Application Team
AnnaBridge 156:ff21514d8981 5 * @version V1.5.0
AnnaBridge 156:ff21514d8981 6 * @date 04-November-2016
AnnaBridge 156:ff21514d8981 7 * @brief Header file of SMARTCARD HAL Extended module.
AnnaBridge 156:ff21514d8981 8 ******************************************************************************
AnnaBridge 156:ff21514d8981 9 * @attention
AnnaBridge 156:ff21514d8981 10 *
AnnaBridge 156:ff21514d8981 11 * <h2><center>&copy; COPYRIGHT(c) 2016 STMicroelectronics</center></h2>
AnnaBridge 156:ff21514d8981 12 *
AnnaBridge 156:ff21514d8981 13 * Redistribution and use in source and binary forms, with or without modification,
AnnaBridge 156:ff21514d8981 14 * are permitted provided that the following conditions are met:
AnnaBridge 156:ff21514d8981 15 * 1. Redistributions of source code must retain the above copyright notice,
AnnaBridge 156:ff21514d8981 16 * this list of conditions and the following disclaimer.
AnnaBridge 156:ff21514d8981 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
AnnaBridge 156:ff21514d8981 18 * this list of conditions and the following disclaimer in the documentation
AnnaBridge 156:ff21514d8981 19 * and/or other materials provided with the distribution.
AnnaBridge 156:ff21514d8981 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
AnnaBridge 156:ff21514d8981 21 * may be used to endorse or promote products derived from this software
AnnaBridge 156:ff21514d8981 22 * without specific prior written permission.
AnnaBridge 156:ff21514d8981 23 *
AnnaBridge 156:ff21514d8981 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AnnaBridge 156:ff21514d8981 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
AnnaBridge 156:ff21514d8981 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
AnnaBridge 156:ff21514d8981 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
AnnaBridge 156:ff21514d8981 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
AnnaBridge 156:ff21514d8981 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
AnnaBridge 156:ff21514d8981 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
AnnaBridge 156:ff21514d8981 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
AnnaBridge 156:ff21514d8981 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
AnnaBridge 156:ff21514d8981 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
AnnaBridge 156:ff21514d8981 34 *
AnnaBridge 156:ff21514d8981 35 ******************************************************************************
AnnaBridge 156:ff21514d8981 36 */
AnnaBridge 156:ff21514d8981 37
AnnaBridge 156:ff21514d8981 38 /* Define to prevent recursive inclusion -------------------------------------*/
AnnaBridge 156:ff21514d8981 39 #ifndef __STM32F0xx_HAL_SMARTCARD_EX_H
AnnaBridge 156:ff21514d8981 40 #define __STM32F0xx_HAL_SMARTCARD_EX_H
AnnaBridge 156:ff21514d8981 41
AnnaBridge 156:ff21514d8981 42 #ifdef __cplusplus
AnnaBridge 156:ff21514d8981 43 extern "C" {
AnnaBridge 156:ff21514d8981 44 #endif
AnnaBridge 156:ff21514d8981 45
AnnaBridge 156:ff21514d8981 46 #if !defined(STM32F030x6) && !defined(STM32F030x8) && !defined(STM32F070x6) && !defined(STM32F070xB) && !defined(STM32F030xC)
AnnaBridge 156:ff21514d8981 47
AnnaBridge 156:ff21514d8981 48 /* Includes ------------------------------------------------------------------*/
AnnaBridge 156:ff21514d8981 49 #include "stm32f0xx_hal_def.h"
AnnaBridge 156:ff21514d8981 50
AnnaBridge 156:ff21514d8981 51 /** @addtogroup STM32F0xx_HAL_Driver
AnnaBridge 156:ff21514d8981 52 * @{
AnnaBridge 156:ff21514d8981 53 */
AnnaBridge 156:ff21514d8981 54
AnnaBridge 156:ff21514d8981 55 /** @addtogroup SMARTCARDEx
AnnaBridge 156:ff21514d8981 56 * @{
AnnaBridge 156:ff21514d8981 57 */
AnnaBridge 156:ff21514d8981 58
AnnaBridge 156:ff21514d8981 59 /* Exported types ------------------------------------------------------------*/
AnnaBridge 156:ff21514d8981 60 /* Exported constants --------------------------------------------------------*/
AnnaBridge 156:ff21514d8981 61 /* Exported macros -----------------------------------------------------------*/
AnnaBridge 156:ff21514d8981 62 /* Private macros ------------------------------------------------------------*/
AnnaBridge 156:ff21514d8981 63 /** @defgroup SMARTCARDEx_Private_Macros SMARTCARD Extended Private Macros
AnnaBridge 156:ff21514d8981 64 * @{
AnnaBridge 156:ff21514d8981 65 */
AnnaBridge 156:ff21514d8981 66
AnnaBridge 156:ff21514d8981 67 /** @brief Report the SMARTCARD clock source.
AnnaBridge 156:ff21514d8981 68 * @param __HANDLE__: specifies the SMARTCARD Handle.
AnnaBridge 156:ff21514d8981 69 * @param __CLOCKSOURCE__: output variable.
AnnaBridge 156:ff21514d8981 70 * @retval the SMARTCARD clocking source, written in __CLOCKSOURCE__.
AnnaBridge 156:ff21514d8981 71 */
AnnaBridge 156:ff21514d8981 72 #if defined(STM32F031x6) || defined(STM32F038xx)
AnnaBridge 156:ff21514d8981 73 #define SMARTCARD_GETCLOCKSOURCE(__HANDLE__,__CLOCKSOURCE__) \
AnnaBridge 156:ff21514d8981 74 do { \
AnnaBridge 156:ff21514d8981 75 switch(__HAL_RCC_GET_USART1_SOURCE()) \
AnnaBridge 156:ff21514d8981 76 { \
AnnaBridge 156:ff21514d8981 77 case RCC_USART1CLKSOURCE_PCLK1: \
AnnaBridge 156:ff21514d8981 78 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_PCLK1; \
AnnaBridge 156:ff21514d8981 79 break; \
AnnaBridge 156:ff21514d8981 80 case RCC_USART1CLKSOURCE_HSI: \
AnnaBridge 156:ff21514d8981 81 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_HSI; \
AnnaBridge 156:ff21514d8981 82 break; \
AnnaBridge 156:ff21514d8981 83 case RCC_USART1CLKSOURCE_SYSCLK: \
AnnaBridge 156:ff21514d8981 84 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_SYSCLK; \
AnnaBridge 156:ff21514d8981 85 break; \
AnnaBridge 156:ff21514d8981 86 case RCC_USART1CLKSOURCE_LSE: \
AnnaBridge 156:ff21514d8981 87 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_LSE; \
AnnaBridge 156:ff21514d8981 88 break; \
AnnaBridge 156:ff21514d8981 89 default: \
AnnaBridge 156:ff21514d8981 90 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_UNDEFINED; \
AnnaBridge 156:ff21514d8981 91 break; \
AnnaBridge 156:ff21514d8981 92 } \
AnnaBridge 156:ff21514d8981 93 } while(0)
AnnaBridge 156:ff21514d8981 94 #elif defined (STM32F030x8) || \
AnnaBridge 156:ff21514d8981 95 defined (STM32F042x6) || defined (STM32F048xx) || \
AnnaBridge 156:ff21514d8981 96 defined (STM32F051x8) || defined (STM32F058xx)
AnnaBridge 156:ff21514d8981 97 #define SMARTCARD_GETCLOCKSOURCE(__HANDLE__,__CLOCKSOURCE__) \
AnnaBridge 156:ff21514d8981 98 do { \
AnnaBridge 156:ff21514d8981 99 if((__HANDLE__)->Instance == USART1) \
AnnaBridge 156:ff21514d8981 100 { \
AnnaBridge 156:ff21514d8981 101 switch(__HAL_RCC_GET_USART1_SOURCE()) \
AnnaBridge 156:ff21514d8981 102 { \
AnnaBridge 156:ff21514d8981 103 case RCC_USART1CLKSOURCE_PCLK1: \
AnnaBridge 156:ff21514d8981 104 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_PCLK1; \
AnnaBridge 156:ff21514d8981 105 break; \
AnnaBridge 156:ff21514d8981 106 case RCC_USART1CLKSOURCE_HSI: \
AnnaBridge 156:ff21514d8981 107 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_HSI; \
AnnaBridge 156:ff21514d8981 108 break; \
AnnaBridge 156:ff21514d8981 109 case RCC_USART1CLKSOURCE_SYSCLK: \
AnnaBridge 156:ff21514d8981 110 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_SYSCLK; \
AnnaBridge 156:ff21514d8981 111 break; \
AnnaBridge 156:ff21514d8981 112 case RCC_USART1CLKSOURCE_LSE: \
AnnaBridge 156:ff21514d8981 113 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_LSE; \
AnnaBridge 156:ff21514d8981 114 break; \
AnnaBridge 156:ff21514d8981 115 default: \
AnnaBridge 156:ff21514d8981 116 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_UNDEFINED; \
AnnaBridge 156:ff21514d8981 117 break; \
AnnaBridge 156:ff21514d8981 118 } \
AnnaBridge 156:ff21514d8981 119 } \
AnnaBridge 156:ff21514d8981 120 else if((__HANDLE__)->Instance == USART2) \
AnnaBridge 156:ff21514d8981 121 { \
AnnaBridge 156:ff21514d8981 122 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_PCLK1; \
AnnaBridge 156:ff21514d8981 123 } \
AnnaBridge 156:ff21514d8981 124 else \
AnnaBridge 156:ff21514d8981 125 { \
AnnaBridge 156:ff21514d8981 126 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_UNDEFINED; \
AnnaBridge 156:ff21514d8981 127 } \
AnnaBridge 156:ff21514d8981 128 } while(0)
AnnaBridge 156:ff21514d8981 129 #elif defined(STM32F071xB) || defined(STM32F072xB) || defined(STM32F078xx)
AnnaBridge 156:ff21514d8981 130 #define SMARTCARD_GETCLOCKSOURCE(__HANDLE__,__CLOCKSOURCE__) \
AnnaBridge 156:ff21514d8981 131 do { \
AnnaBridge 156:ff21514d8981 132 if((__HANDLE__)->Instance == USART1) \
AnnaBridge 156:ff21514d8981 133 { \
AnnaBridge 156:ff21514d8981 134 switch(__HAL_RCC_GET_USART1_SOURCE()) \
AnnaBridge 156:ff21514d8981 135 { \
AnnaBridge 156:ff21514d8981 136 case RCC_USART1CLKSOURCE_PCLK1: \
AnnaBridge 156:ff21514d8981 137 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_PCLK1; \
AnnaBridge 156:ff21514d8981 138 break; \
AnnaBridge 156:ff21514d8981 139 case RCC_USART1CLKSOURCE_HSI: \
AnnaBridge 156:ff21514d8981 140 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_HSI; \
AnnaBridge 156:ff21514d8981 141 break; \
AnnaBridge 156:ff21514d8981 142 case RCC_USART1CLKSOURCE_SYSCLK: \
AnnaBridge 156:ff21514d8981 143 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_SYSCLK; \
AnnaBridge 156:ff21514d8981 144 break; \
AnnaBridge 156:ff21514d8981 145 case RCC_USART1CLKSOURCE_LSE: \
AnnaBridge 156:ff21514d8981 146 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_LSE; \
AnnaBridge 156:ff21514d8981 147 break; \
AnnaBridge 156:ff21514d8981 148 default: \
AnnaBridge 156:ff21514d8981 149 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_UNDEFINED; \
AnnaBridge 156:ff21514d8981 150 break; \
AnnaBridge 156:ff21514d8981 151 } \
AnnaBridge 156:ff21514d8981 152 } \
AnnaBridge 156:ff21514d8981 153 else if((__HANDLE__)->Instance == USART2) \
AnnaBridge 156:ff21514d8981 154 { \
AnnaBridge 156:ff21514d8981 155 switch(__HAL_RCC_GET_USART2_SOURCE()) \
AnnaBridge 156:ff21514d8981 156 { \
AnnaBridge 156:ff21514d8981 157 case RCC_USART2CLKSOURCE_PCLK1: \
AnnaBridge 156:ff21514d8981 158 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_PCLK1; \
AnnaBridge 156:ff21514d8981 159 break; \
AnnaBridge 156:ff21514d8981 160 case RCC_USART2CLKSOURCE_HSI: \
AnnaBridge 156:ff21514d8981 161 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_HSI; \
AnnaBridge 156:ff21514d8981 162 break; \
AnnaBridge 156:ff21514d8981 163 case RCC_USART2CLKSOURCE_SYSCLK: \
AnnaBridge 156:ff21514d8981 164 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_SYSCLK; \
AnnaBridge 156:ff21514d8981 165 break; \
AnnaBridge 156:ff21514d8981 166 case RCC_USART2CLKSOURCE_LSE: \
AnnaBridge 156:ff21514d8981 167 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_LSE; \
AnnaBridge 156:ff21514d8981 168 break; \
AnnaBridge 156:ff21514d8981 169 default: \
AnnaBridge 156:ff21514d8981 170 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_UNDEFINED; \
AnnaBridge 156:ff21514d8981 171 break; \
AnnaBridge 156:ff21514d8981 172 } \
AnnaBridge 156:ff21514d8981 173 } \
AnnaBridge 156:ff21514d8981 174 else if((__HANDLE__)->Instance == USART3) \
AnnaBridge 156:ff21514d8981 175 { \
AnnaBridge 156:ff21514d8981 176 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_PCLK1; \
AnnaBridge 156:ff21514d8981 177 } \
AnnaBridge 156:ff21514d8981 178 else if((__HANDLE__)->Instance == USART4) \
AnnaBridge 156:ff21514d8981 179 { \
AnnaBridge 156:ff21514d8981 180 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_PCLK1; \
AnnaBridge 156:ff21514d8981 181 } \
AnnaBridge 156:ff21514d8981 182 else \
AnnaBridge 156:ff21514d8981 183 { \
AnnaBridge 156:ff21514d8981 184 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_UNDEFINED; \
AnnaBridge 156:ff21514d8981 185 } \
AnnaBridge 156:ff21514d8981 186 } while(0)
AnnaBridge 156:ff21514d8981 187 #elif defined(STM32F091xC) || defined(STM32F098xx)
AnnaBridge 156:ff21514d8981 188 #define SMARTCARD_GETCLOCKSOURCE(__HANDLE__,__CLOCKSOURCE__) \
AnnaBridge 156:ff21514d8981 189 do { \
AnnaBridge 156:ff21514d8981 190 if((__HANDLE__)->Instance == USART1) \
AnnaBridge 156:ff21514d8981 191 { \
AnnaBridge 156:ff21514d8981 192 switch(__HAL_RCC_GET_USART1_SOURCE()) \
AnnaBridge 156:ff21514d8981 193 { \
AnnaBridge 156:ff21514d8981 194 case RCC_USART1CLKSOURCE_PCLK1: \
AnnaBridge 156:ff21514d8981 195 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_PCLK1; \
AnnaBridge 156:ff21514d8981 196 break; \
AnnaBridge 156:ff21514d8981 197 case RCC_USART1CLKSOURCE_HSI: \
AnnaBridge 156:ff21514d8981 198 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_HSI; \
AnnaBridge 156:ff21514d8981 199 break; \
AnnaBridge 156:ff21514d8981 200 case RCC_USART1CLKSOURCE_SYSCLK: \
AnnaBridge 156:ff21514d8981 201 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_SYSCLK; \
AnnaBridge 156:ff21514d8981 202 break; \
AnnaBridge 156:ff21514d8981 203 case RCC_USART1CLKSOURCE_LSE: \
AnnaBridge 156:ff21514d8981 204 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_LSE; \
AnnaBridge 156:ff21514d8981 205 break; \
AnnaBridge 156:ff21514d8981 206 default: \
AnnaBridge 156:ff21514d8981 207 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_UNDEFINED; \
AnnaBridge 156:ff21514d8981 208 break; \
AnnaBridge 156:ff21514d8981 209 } \
AnnaBridge 156:ff21514d8981 210 } \
AnnaBridge 156:ff21514d8981 211 else if((__HANDLE__)->Instance == USART2) \
AnnaBridge 156:ff21514d8981 212 { \
AnnaBridge 156:ff21514d8981 213 switch(__HAL_RCC_GET_USART2_SOURCE()) \
AnnaBridge 156:ff21514d8981 214 { \
AnnaBridge 156:ff21514d8981 215 case RCC_USART2CLKSOURCE_PCLK1: \
AnnaBridge 156:ff21514d8981 216 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_PCLK1; \
AnnaBridge 156:ff21514d8981 217 break; \
AnnaBridge 156:ff21514d8981 218 case RCC_USART2CLKSOURCE_HSI: \
AnnaBridge 156:ff21514d8981 219 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_HSI; \
AnnaBridge 156:ff21514d8981 220 break; \
AnnaBridge 156:ff21514d8981 221 case RCC_USART2CLKSOURCE_SYSCLK: \
AnnaBridge 156:ff21514d8981 222 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_SYSCLK; \
AnnaBridge 156:ff21514d8981 223 break; \
AnnaBridge 156:ff21514d8981 224 case RCC_USART2CLKSOURCE_LSE: \
AnnaBridge 156:ff21514d8981 225 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_LSE; \
AnnaBridge 156:ff21514d8981 226 break; \
AnnaBridge 156:ff21514d8981 227 default: \
AnnaBridge 156:ff21514d8981 228 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_UNDEFINED; \
AnnaBridge 156:ff21514d8981 229 break; \
AnnaBridge 156:ff21514d8981 230 } \
AnnaBridge 156:ff21514d8981 231 } \
AnnaBridge 156:ff21514d8981 232 else if((__HANDLE__)->Instance == USART3) \
AnnaBridge 156:ff21514d8981 233 { \
AnnaBridge 156:ff21514d8981 234 switch(__HAL_RCC_GET_USART3_SOURCE()) \
AnnaBridge 156:ff21514d8981 235 { \
AnnaBridge 156:ff21514d8981 236 case RCC_USART3CLKSOURCE_PCLK1: \
AnnaBridge 156:ff21514d8981 237 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_PCLK1; \
AnnaBridge 156:ff21514d8981 238 break; \
AnnaBridge 156:ff21514d8981 239 case RCC_USART3CLKSOURCE_HSI: \
AnnaBridge 156:ff21514d8981 240 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_HSI; \
AnnaBridge 156:ff21514d8981 241 break; \
AnnaBridge 156:ff21514d8981 242 case RCC_USART3CLKSOURCE_SYSCLK: \
AnnaBridge 156:ff21514d8981 243 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_SYSCLK; \
AnnaBridge 156:ff21514d8981 244 break; \
AnnaBridge 156:ff21514d8981 245 case RCC_USART3CLKSOURCE_LSE: \
AnnaBridge 156:ff21514d8981 246 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_LSE; \
AnnaBridge 156:ff21514d8981 247 break; \
AnnaBridge 156:ff21514d8981 248 default: \
AnnaBridge 156:ff21514d8981 249 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_UNDEFINED; \
AnnaBridge 156:ff21514d8981 250 break; \
AnnaBridge 156:ff21514d8981 251 } \
AnnaBridge 156:ff21514d8981 252 } \
AnnaBridge 156:ff21514d8981 253 else if((__HANDLE__)->Instance == USART4) \
AnnaBridge 156:ff21514d8981 254 { \
AnnaBridge 156:ff21514d8981 255 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_PCLK1; \
AnnaBridge 156:ff21514d8981 256 } \
AnnaBridge 156:ff21514d8981 257 else if((__HANDLE__)->Instance == USART5) \
AnnaBridge 156:ff21514d8981 258 { \
AnnaBridge 156:ff21514d8981 259 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_PCLK1; \
AnnaBridge 156:ff21514d8981 260 } \
AnnaBridge 156:ff21514d8981 261 else if((__HANDLE__)->Instance == USART6) \
AnnaBridge 156:ff21514d8981 262 { \
AnnaBridge 156:ff21514d8981 263 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_PCLK1; \
AnnaBridge 156:ff21514d8981 264 } \
AnnaBridge 156:ff21514d8981 265 else if((__HANDLE__)->Instance == USART7) \
AnnaBridge 156:ff21514d8981 266 { \
AnnaBridge 156:ff21514d8981 267 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_PCLK1; \
AnnaBridge 156:ff21514d8981 268 } \
AnnaBridge 156:ff21514d8981 269 else if((__HANDLE__)->Instance == USART8) \
AnnaBridge 156:ff21514d8981 270 { \
AnnaBridge 156:ff21514d8981 271 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_PCLK1; \
AnnaBridge 156:ff21514d8981 272 } \
AnnaBridge 156:ff21514d8981 273 else \
AnnaBridge 156:ff21514d8981 274 { \
AnnaBridge 156:ff21514d8981 275 (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_UNDEFINED; \
AnnaBridge 156:ff21514d8981 276 } \
AnnaBridge 156:ff21514d8981 277 } while(0)
AnnaBridge 156:ff21514d8981 278 #endif /* defined(STM32F031x6) || defined(STM32F038xx) */
AnnaBridge 156:ff21514d8981 279
AnnaBridge 156:ff21514d8981 280 /**
AnnaBridge 156:ff21514d8981 281 * @}
AnnaBridge 156:ff21514d8981 282 */
AnnaBridge 156:ff21514d8981 283
AnnaBridge 156:ff21514d8981 284 /* Exported functions --------------------------------------------------------*/
AnnaBridge 156:ff21514d8981 285 /** @addtogroup SMARTCARDEx_Exported_Functions
AnnaBridge 156:ff21514d8981 286 * @{
AnnaBridge 156:ff21514d8981 287 */
AnnaBridge 156:ff21514d8981 288
AnnaBridge 156:ff21514d8981 289 /* Initialization and de-initialization functions ****************************/
AnnaBridge 156:ff21514d8981 290 /* IO operation methods *******************************************************/
AnnaBridge 156:ff21514d8981 291
AnnaBridge 156:ff21514d8981 292 /** @addtogroup SMARTCARDEx_Exported_Functions_Group1
AnnaBridge 156:ff21514d8981 293 * @{
AnnaBridge 156:ff21514d8981 294 */
AnnaBridge 156:ff21514d8981 295
AnnaBridge 156:ff21514d8981 296 /* Peripheral Control functions ***********************************************/
AnnaBridge 156:ff21514d8981 297 void HAL_SMARTCARDEx_BlockLength_Config(SMARTCARD_HandleTypeDef *hsmartcard, uint8_t BlockLength);
AnnaBridge 156:ff21514d8981 298 void HAL_SMARTCARDEx_TimeOut_Config(SMARTCARD_HandleTypeDef *hsmartcard, uint32_t TimeOutValue);
AnnaBridge 156:ff21514d8981 299 HAL_StatusTypeDef HAL_SMARTCARDEx_EnableReceiverTimeOut(SMARTCARD_HandleTypeDef *hsmartcard);
AnnaBridge 156:ff21514d8981 300 HAL_StatusTypeDef HAL_SMARTCARDEx_DisableReceiverTimeOut(SMARTCARD_HandleTypeDef *hsmartcard);
AnnaBridge 156:ff21514d8981 301
AnnaBridge 156:ff21514d8981 302 /**
AnnaBridge 156:ff21514d8981 303 * @}
AnnaBridge 156:ff21514d8981 304 */
AnnaBridge 156:ff21514d8981 305
AnnaBridge 156:ff21514d8981 306 /**
AnnaBridge 156:ff21514d8981 307 * @}
AnnaBridge 156:ff21514d8981 308 */
AnnaBridge 156:ff21514d8981 309
AnnaBridge 156:ff21514d8981 310 /**
AnnaBridge 156:ff21514d8981 311 * @}
AnnaBridge 156:ff21514d8981 312 */
AnnaBridge 156:ff21514d8981 313
AnnaBridge 156:ff21514d8981 314 /**
AnnaBridge 156:ff21514d8981 315 * @}
AnnaBridge 156:ff21514d8981 316 */
AnnaBridge 156:ff21514d8981 317
AnnaBridge 156:ff21514d8981 318 #endif /* !defined(STM32F030x6) && !defined(STM32F030x8)&& !defined(STM32F070x6) && !defined(STM32F070xB) && !defined(STM32F030xC) */
AnnaBridge 156:ff21514d8981 319
AnnaBridge 156:ff21514d8981 320 #ifdef __cplusplus
AnnaBridge 156:ff21514d8981 321 }
AnnaBridge 156:ff21514d8981 322 #endif
AnnaBridge 156:ff21514d8981 323
AnnaBridge 156:ff21514d8981 324 #endif /* __STM32F0xx_HAL_SMARTCARD_EX_H */
AnnaBridge 156:ff21514d8981 325
AnnaBridge 156:ff21514d8981 326 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
AnnaBridge 156:ff21514d8981 327