Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of mbed by
TARGET_NUCLEO_L011K4/TARGET_STM/TARGET_STM32L0/device/stm32l0xx_hal_smartcard_ex.h@130:d75b3fe1f5cb, 2016-11-24 (annotated)
- Committer:
- <>
- Date:
- Thu Nov 24 11:01:25 2016 +0000
- Revision:
- 130:d75b3fe1f5cb
- Parent:
- 128:9bcdf88f62b0
Release 130 of the mbed library
Ports for Upcoming Targets
Fixes and Changes
3127: Fixed the issue about push/pop of VFP register. https://github.com/ARMmbed/mbed-os/pull/3127
3176: Modifying micro:bit pin names to mirror micro:bit edge connector https://github.com/ARMmbed/mbed-os/pull/3176
3160: Fix wrong index at LPC43xx tx end ring assignment https://github.com/ARMmbed/mbed-os/pull/3160
3217: Add I2C_ASYNCH capability for DISCO_F469NI https://github.com/ARMmbed/mbed-os/pull/3217
3211: [NUC472/M453] Support single UART shared by multiple serial objects and other updates https://github.com/ARMmbed/mbed-os/pull/3211
3198: NUCLEO_F410RB: Add I2C_ASYNCH capability https://github.com/ARMmbed/mbed-os/pull/3198
3194: Update K64 sdk drivers https://github.com/ARMmbed/mbed-os/pull/3194
3159: User trim values for NCS36510 https://github.com/ARMmbed/mbed-os/pull/3159
3243: Fix make exporters compilation https://github.com/ARMmbed/mbed-os/pull/3243
3231: STM32F3: DISCO_F303VC - Add missing UART and ADC pin muxing options https://github.com/ARMmbed/mbed-os/pull/3231
3233: K20xx Calculate PWM clock relative to bus clock https://github.com/ARMmbed/mbed-os/pull/3233
3237: Added back USART 6 pins https://github.com/ARMmbed/mbed-os/pull/3237
3253: Fix default polarity on LPC43XX PWM driver https://github.com/ARMmbed/mbed-os/pull/3253
3238: Dev i2c stm32f4hal https://github.com/ARMmbed/mbed-os/pull/3238
3251: Dev stm32l0 cube v1.7.0 https://github.com/ARMmbed/mbed-os/pull/3251
3252: [NORDIC - NRF51 - MBED 2] Fix non handled RTC IRQ https://github.com/ARMmbed/mbed-os/pull/3252
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| Kojto | 122:f9eeca106725 | 1 | /** |
| Kojto | 122:f9eeca106725 | 2 | ****************************************************************************** |
| Kojto | 122:f9eeca106725 | 3 | * @file stm32l0xx_hal_smartcard_ex.h |
| Kojto | 122:f9eeca106725 | 4 | * @author MCD Application Team |
| <> | 130:d75b3fe1f5cb | 5 | * @version V1.7.0 |
| <> | 130:d75b3fe1f5cb | 6 | * @date 31-May-2016 |
| Kojto | 122:f9eeca106725 | 7 | * @brief Header file of SMARTCARD HAL module. |
| Kojto | 122:f9eeca106725 | 8 | ****************************************************************************** |
| Kojto | 122:f9eeca106725 | 9 | * @attention |
| Kojto | 122:f9eeca106725 | 10 | * |
| Kojto | 122:f9eeca106725 | 11 | * <h2><center>© COPYRIGHT(c) 2016 STMicroelectronics</center></h2> |
| Kojto | 122:f9eeca106725 | 12 | * |
| Kojto | 122:f9eeca106725 | 13 | * Redistribution and use in source and binary forms, with or without modification, |
| Kojto | 122:f9eeca106725 | 14 | * are permitted provided that the following conditions are met: |
| Kojto | 122:f9eeca106725 | 15 | * 1. Redistributions of source code must retain the above copyright notice, |
| Kojto | 122:f9eeca106725 | 16 | * this list of conditions and the following disclaimer. |
| Kojto | 122:f9eeca106725 | 17 | * 2. Redistributions in binary form must reproduce the above copyright notice, |
| Kojto | 122:f9eeca106725 | 18 | * this list of conditions and the following disclaimer in the documentation |
| Kojto | 122:f9eeca106725 | 19 | * and/or other materials provided with the distribution. |
| Kojto | 122:f9eeca106725 | 20 | * 3. Neither the name of STMicroelectronics nor the names of its contributors |
| Kojto | 122:f9eeca106725 | 21 | * may be used to endorse or promote products derived from this software |
| Kojto | 122:f9eeca106725 | 22 | * without specific prior written permission. |
| Kojto | 122:f9eeca106725 | 23 | * |
| Kojto | 122:f9eeca106725 | 24 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
| Kojto | 122:f9eeca106725 | 25 | * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
| Kojto | 122:f9eeca106725 | 26 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
| Kojto | 122:f9eeca106725 | 27 | * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE |
| Kojto | 122:f9eeca106725 | 28 | * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
| Kojto | 122:f9eeca106725 | 29 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
| Kojto | 122:f9eeca106725 | 30 | * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER |
| Kojto | 122:f9eeca106725 | 31 | * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, |
| Kojto | 122:f9eeca106725 | 32 | * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| Kojto | 122:f9eeca106725 | 33 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| Kojto | 122:f9eeca106725 | 34 | * |
| Kojto | 122:f9eeca106725 | 35 | ****************************************************************************** |
| Kojto | 122:f9eeca106725 | 36 | */ |
| Kojto | 122:f9eeca106725 | 37 | |
| Kojto | 122:f9eeca106725 | 38 | /* Define to prevent recursive inclusion -------------------------------------*/ |
| Kojto | 122:f9eeca106725 | 39 | #ifndef __STM32L0xx_HAL_SMARTCARD_EX_H |
| Kojto | 122:f9eeca106725 | 40 | #define __STM32L0xx_HAL_SMARTCARD_EX_H |
| Kojto | 122:f9eeca106725 | 41 | |
| Kojto | 122:f9eeca106725 | 42 | #ifdef __cplusplus |
| Kojto | 122:f9eeca106725 | 43 | extern "C" { |
| Kojto | 122:f9eeca106725 | 44 | #endif |
| Kojto | 122:f9eeca106725 | 45 | |
| Kojto | 122:f9eeca106725 | 46 | /* Includes ------------------------------------------------------------------*/ |
| Kojto | 122:f9eeca106725 | 47 | #include "stm32l0xx_hal_def.h" |
| Kojto | 122:f9eeca106725 | 48 | |
| Kojto | 122:f9eeca106725 | 49 | /** @addtogroup STM32L0xx_HAL_Driver |
| Kojto | 122:f9eeca106725 | 50 | * @{ |
| Kojto | 122:f9eeca106725 | 51 | */ |
| Kojto | 122:f9eeca106725 | 52 | |
| Kojto | 122:f9eeca106725 | 53 | /** @defgroup SMARTCARDEx SMARTCARDEx |
| Kojto | 122:f9eeca106725 | 54 | * @{ |
| Kojto | 122:f9eeca106725 | 55 | */ |
| Kojto | 122:f9eeca106725 | 56 | |
| Kojto | 122:f9eeca106725 | 57 | /* Exported types ------------------------------------------------------------*/ |
| Kojto | 122:f9eeca106725 | 58 | /* Exported constants --------------------------------------------------------*/ |
| Kojto | 122:f9eeca106725 | 59 | /* Exported macro ------------------------------------------------------------*/ |
| Kojto | 122:f9eeca106725 | 60 | /* Exported functions --------------------------------------------------------*/ |
| Kojto | 122:f9eeca106725 | 61 | /** @defgroup SMARTCARDEx_Exported_Macros SMARTCARDEx Exported Macros |
| Kojto | 122:f9eeca106725 | 62 | * @{ |
| Kojto | 122:f9eeca106725 | 63 | */ |
| Kojto | 122:f9eeca106725 | 64 | /** @brief Reports the SMARTCARD clock source. |
| Kojto | 122:f9eeca106725 | 65 | * @param __HANDLE__: specifies the USART Handle |
| Kojto | 122:f9eeca106725 | 66 | * @param __CLOCKSOURCE__ : output variable |
| Kojto | 122:f9eeca106725 | 67 | * @retval the USART clocking source, written in __CLOCKSOURCE__. |
| Kojto | 122:f9eeca106725 | 68 | */ |
| Kojto | 122:f9eeca106725 | 69 | #if defined (STM32L031xx) || defined (STM32L041xx) || defined (STM32L011xx) || defined (STM32L021xx) |
| Kojto | 122:f9eeca106725 | 70 | #define SMARTCARD_GETCLOCKSOURCE(__HANDLE__,__CLOCKSOURCE__) \ |
| Kojto | 122:f9eeca106725 | 71 | do { \ |
| Kojto | 122:f9eeca106725 | 72 | if((__HANDLE__)->Instance == USART2) \ |
| Kojto | 122:f9eeca106725 | 73 | { \ |
| Kojto | 122:f9eeca106725 | 74 | switch(__HAL_RCC_GET_USART2_SOURCE()) \ |
| Kojto | 122:f9eeca106725 | 75 | { \ |
| Kojto | 122:f9eeca106725 | 76 | case RCC_USART2CLKSOURCE_PCLK1: \ |
| Kojto | 122:f9eeca106725 | 77 | (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_PCLK1; \ |
| Kojto | 122:f9eeca106725 | 78 | break; \ |
| Kojto | 122:f9eeca106725 | 79 | case RCC_USART2CLKSOURCE_HSI: \ |
| Kojto | 122:f9eeca106725 | 80 | (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_HSI; \ |
| Kojto | 122:f9eeca106725 | 81 | break; \ |
| Kojto | 122:f9eeca106725 | 82 | case RCC_USART2CLKSOURCE_SYSCLK: \ |
| Kojto | 122:f9eeca106725 | 83 | (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_SYSCLK; \ |
| Kojto | 122:f9eeca106725 | 84 | break; \ |
| Kojto | 122:f9eeca106725 | 85 | case RCC_USART2CLKSOURCE_LSE: \ |
| Kojto | 122:f9eeca106725 | 86 | (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_LSE; \ |
| Kojto | 122:f9eeca106725 | 87 | break; \ |
| Kojto | 122:f9eeca106725 | 88 | default: \ |
| Kojto | 122:f9eeca106725 | 89 | break; \ |
| Kojto | 122:f9eeca106725 | 90 | } \ |
| Kojto | 122:f9eeca106725 | 91 | } \ |
| Kojto | 122:f9eeca106725 | 92 | } while(0) |
| Kojto | 122:f9eeca106725 | 93 | |
| Kojto | 122:f9eeca106725 | 94 | #else /* (STM32L031xx) || defined (STM32L041xx) || (STM32L011xx) || defined (STM32L021xx) */ |
| Kojto | 122:f9eeca106725 | 95 | |
| Kojto | 122:f9eeca106725 | 96 | #define SMARTCARD_GETCLOCKSOURCE(__HANDLE__,__CLOCKSOURCE__) \ |
| Kojto | 122:f9eeca106725 | 97 | do { \ |
| Kojto | 122:f9eeca106725 | 98 | if((__HANDLE__)->Instance == USART1) \ |
| Kojto | 122:f9eeca106725 | 99 | { \ |
| Kojto | 122:f9eeca106725 | 100 | switch(__HAL_RCC_GET_USART1_SOURCE()) \ |
| Kojto | 122:f9eeca106725 | 101 | { \ |
| Kojto | 122:f9eeca106725 | 102 | case RCC_USART1CLKSOURCE_PCLK2: \ |
| Kojto | 122:f9eeca106725 | 103 | (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_PCLK2; \ |
| Kojto | 122:f9eeca106725 | 104 | break; \ |
| Kojto | 122:f9eeca106725 | 105 | case RCC_USART1CLKSOURCE_HSI: \ |
| Kojto | 122:f9eeca106725 | 106 | (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_HSI; \ |
| Kojto | 122:f9eeca106725 | 107 | break; \ |
| Kojto | 122:f9eeca106725 | 108 | case RCC_USART1CLKSOURCE_SYSCLK: \ |
| Kojto | 122:f9eeca106725 | 109 | (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_SYSCLK; \ |
| Kojto | 122:f9eeca106725 | 110 | break; \ |
| Kojto | 122:f9eeca106725 | 111 | case RCC_USART1CLKSOURCE_LSE: \ |
| Kojto | 122:f9eeca106725 | 112 | (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_LSE; \ |
| Kojto | 122:f9eeca106725 | 113 | break; \ |
| Kojto | 122:f9eeca106725 | 114 | default: \ |
| Kojto | 122:f9eeca106725 | 115 | break; \ |
| Kojto | 122:f9eeca106725 | 116 | } \ |
| Kojto | 122:f9eeca106725 | 117 | } \ |
| Kojto | 122:f9eeca106725 | 118 | else if((__HANDLE__)->Instance == USART2) \ |
| Kojto | 122:f9eeca106725 | 119 | { \ |
| Kojto | 122:f9eeca106725 | 120 | switch(__HAL_RCC_GET_USART2_SOURCE()) \ |
| Kojto | 122:f9eeca106725 | 121 | { \ |
| Kojto | 122:f9eeca106725 | 122 | case RCC_USART2CLKSOURCE_PCLK1: \ |
| Kojto | 122:f9eeca106725 | 123 | (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_PCLK1; \ |
| Kojto | 122:f9eeca106725 | 124 | break; \ |
| Kojto | 122:f9eeca106725 | 125 | case RCC_USART2CLKSOURCE_HSI: \ |
| Kojto | 122:f9eeca106725 | 126 | (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_HSI; \ |
| Kojto | 122:f9eeca106725 | 127 | break; \ |
| Kojto | 122:f9eeca106725 | 128 | case RCC_USART2CLKSOURCE_SYSCLK: \ |
| Kojto | 122:f9eeca106725 | 129 | (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_SYSCLK; \ |
| Kojto | 122:f9eeca106725 | 130 | break; \ |
| Kojto | 122:f9eeca106725 | 131 | case RCC_USART2CLKSOURCE_LSE: \ |
| Kojto | 122:f9eeca106725 | 132 | (__CLOCKSOURCE__) = SMARTCARD_CLOCKSOURCE_LSE; \ |
| Kojto | 122:f9eeca106725 | 133 | break; \ |
| Kojto | 122:f9eeca106725 | 134 | default: \ |
| Kojto | 122:f9eeca106725 | 135 | break; \ |
| Kojto | 122:f9eeca106725 | 136 | } \ |
| Kojto | 122:f9eeca106725 | 137 | } \ |
| Kojto | 122:f9eeca106725 | 138 | } while(0) |
| Kojto | 122:f9eeca106725 | 139 | #endif /* (STM32L031xx) || (STM32L041xx) || (STM32L011xx) || defined (STM32L021xx) */ |
| Kojto | 122:f9eeca106725 | 140 | |
| Kojto | 122:f9eeca106725 | 141 | /** |
| Kojto | 122:f9eeca106725 | 142 | * @} |
| Kojto | 122:f9eeca106725 | 143 | */ |
| Kojto | 122:f9eeca106725 | 144 | |
| Kojto | 122:f9eeca106725 | 145 | /* Exported functions --------------------------------------------------------*/ |
| Kojto | 122:f9eeca106725 | 146 | /** @defgroup SMARTCARDEx_Exported_Functions SMARTCARDEx Exported Functions |
| Kojto | 122:f9eeca106725 | 147 | * @{ |
| Kojto | 122:f9eeca106725 | 148 | */ |
| Kojto | 122:f9eeca106725 | 149 | /* Initialization/de-initialization functions ********************************/ |
| Kojto | 122:f9eeca106725 | 150 | /** @defgroup SMARTCARDEx_Exported_Functions_Group1 Extended Peripheral Control functions |
| Kojto | 122:f9eeca106725 | 151 | * @{ |
| Kojto | 122:f9eeca106725 | 152 | */ |
| Kojto | 122:f9eeca106725 | 153 | |
| Kojto | 122:f9eeca106725 | 154 | /* Initialization and de-initialization functions ****************************/ |
| Kojto | 122:f9eeca106725 | 155 | /* IO operation functions *****************************************************/ |
| Kojto | 122:f9eeca106725 | 156 | /* Peripheral Control functions ***********************************************/ |
| Kojto | 122:f9eeca106725 | 157 | void HAL_SMARTCARDEx_BlockLength_Config(SMARTCARD_HandleTypeDef *hsc, uint8_t BlockLength); |
| Kojto | 122:f9eeca106725 | 158 | void HAL_SMARTCARDEx_TimeOut_Config(SMARTCARD_HandleTypeDef *hsc, uint32_t TimeOutValue); |
| Kojto | 122:f9eeca106725 | 159 | HAL_StatusTypeDef HAL_SMARTCARDEx_EnableReceiverTimeOut(SMARTCARD_HandleTypeDef *hsc); |
| Kojto | 122:f9eeca106725 | 160 | HAL_StatusTypeDef HAL_SMARTCARDEx_DisableReceiverTimeOut(SMARTCARD_HandleTypeDef *hsc); |
| Kojto | 122:f9eeca106725 | 161 | |
| Kojto | 122:f9eeca106725 | 162 | /* Peripheral State and Error functions ***************************************/ |
| Kojto | 122:f9eeca106725 | 163 | |
| Kojto | 122:f9eeca106725 | 164 | /** |
| Kojto | 122:f9eeca106725 | 165 | * @} |
| Kojto | 122:f9eeca106725 | 166 | */ |
| Kojto | 122:f9eeca106725 | 167 | |
| Kojto | 122:f9eeca106725 | 168 | /** |
| Kojto | 122:f9eeca106725 | 169 | * @} |
| Kojto | 122:f9eeca106725 | 170 | */ |
| Kojto | 122:f9eeca106725 | 171 | |
| Kojto | 122:f9eeca106725 | 172 | /** |
| Kojto | 122:f9eeca106725 | 173 | * @} |
| Kojto | 122:f9eeca106725 | 174 | */ |
| Kojto | 122:f9eeca106725 | 175 | |
| Kojto | 122:f9eeca106725 | 176 | /** |
| Kojto | 122:f9eeca106725 | 177 | * @} |
| Kojto | 122:f9eeca106725 | 178 | */ |
| Kojto | 122:f9eeca106725 | 179 | #ifdef __cplusplus |
| Kojto | 122:f9eeca106725 | 180 | } |
| Kojto | 122:f9eeca106725 | 181 | #endif |
| Kojto | 122:f9eeca106725 | 182 | |
| Kojto | 122:f9eeca106725 | 183 | #endif /* __STM32L0xx_HAL_SMARTCARD_EX_H */ |
| Kojto | 122:f9eeca106725 | 184 | |
| Kojto | 122:f9eeca106725 | 185 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |
| Kojto | 122:f9eeca106725 | 186 |
