cc y / mbed

Fork of mbed by mbed official

Committer:
Kojto
Date:
Thu Jul 07 14:34:11 2016 +0100
Revision:
122:f9eeca106725
Parent:
108:34e6b704fe68
Release 122 of the mbed library

Changes:
- new targets - Nucleo L432KC, Beetle, Nucleo F446ZE, Nucleo L011K4
- Thread safety addition - mbed API should contain a statement about thread safety
- critical section API addition
- CAS API (core_util_atomic_incr/decr)
- DEVICE_ are generated from targets.json file, device.h deprecated
- Callback replaces FunctionPointer to provide std like interface
- mbed HAL API docs improvements
- toolchain - prexif attributes with MBED_
- add new attributes - packed, weak, forcedinline, align
- target.json - contains targets definitions
- ST - L1XX - Cube update to 1.5
- SPI clock selection fix (clock from APB domain)
- F7 - Cube update v1.4.0
- L0 - baudrate init fix
- L1 - Cube update v1.5
- F3 - baudrate init fix, 3 targets CAN support
- F4 - Cube update v1.12.0, 3 targets CAN support
- L4XX - Cube update v1.5.1
- F0 - update Cube to v1.5.0
- L4 - 2 targets (L476RG/VG) CAN support
- NXP - pwm clock fix for KSDK2 MCU
- LPC2368 - remove ARM toolchain support - due to regression
- KSDK2 - fix SPI , I2C address and repeat start
- Silabs - some fixes backported from mbed 3
- Renesas - RZ_A1H - SystemCoreClockUpdate addition

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Kojto 93:e188a91d3eaa 1 /**
Kojto 93:e188a91d3eaa 2 ******************************************************************************
Kojto 93:e188a91d3eaa 3 * @file stm32f0xx_hal_tim_ex.h
Kojto 93:e188a91d3eaa 4 * @author MCD Application Team
Kojto 122:f9eeca106725 5 * @version V1.4.0
Kojto 122:f9eeca106725 6 * @date 27-May-2016
Kojto 93:e188a91d3eaa 7 * @brief Header file of TIM HAL Extended module.
Kojto 93:e188a91d3eaa 8 ******************************************************************************
Kojto 93:e188a91d3eaa 9 * @attention
Kojto 93:e188a91d3eaa 10 *
Kojto 122:f9eeca106725 11 * <h2><center>&copy; COPYRIGHT(c) 2016 STMicroelectronics</center></h2>
Kojto 93:e188a91d3eaa 12 *
Kojto 93:e188a91d3eaa 13 * Redistribution and use in source and binary forms, with or without modification,
Kojto 93:e188a91d3eaa 14 * are permitted provided that the following conditions are met:
Kojto 93:e188a91d3eaa 15 * 1. Redistributions of source code must retain the above copyright notice,
Kojto 93:e188a91d3eaa 16 * this list of conditions and the following disclaimer.
Kojto 93:e188a91d3eaa 17 * 2. Redistributions in binary form must reproduce the above copyright notice,
Kojto 93:e188a91d3eaa 18 * this list of conditions and the following disclaimer in the documentation
Kojto 93:e188a91d3eaa 19 * and/or other materials provided with the distribution.
Kojto 93:e188a91d3eaa 20 * 3. Neither the name of STMicroelectronics nor the names of its contributors
Kojto 93:e188a91d3eaa 21 * may be used to endorse or promote products derived from this software
Kojto 93:e188a91d3eaa 22 * without specific prior written permission.
Kojto 93:e188a91d3eaa 23 *
Kojto 93:e188a91d3eaa 24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
Kojto 93:e188a91d3eaa 25 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
Kojto 93:e188a91d3eaa 26 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
Kojto 93:e188a91d3eaa 27 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
Kojto 93:e188a91d3eaa 28 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
Kojto 93:e188a91d3eaa 29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
Kojto 93:e188a91d3eaa 30 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
Kojto 93:e188a91d3eaa 31 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
Kojto 93:e188a91d3eaa 32 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
Kojto 93:e188a91d3eaa 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Kojto 93:e188a91d3eaa 34 *
Kojto 93:e188a91d3eaa 35 ******************************************************************************
Kojto 108:34e6b704fe68 36 */
Kojto 93:e188a91d3eaa 37
Kojto 93:e188a91d3eaa 38 /* Define to prevent recursive inclusion -------------------------------------*/
Kojto 93:e188a91d3eaa 39 #ifndef __STM32F0xx_HAL_TIM_EX_H
Kojto 93:e188a91d3eaa 40 #define __STM32F0xx_HAL_TIM_EX_H
Kojto 93:e188a91d3eaa 41
Kojto 93:e188a91d3eaa 42 #ifdef __cplusplus
Kojto 93:e188a91d3eaa 43 extern "C" {
Kojto 93:e188a91d3eaa 44 #endif
Kojto 93:e188a91d3eaa 45
Kojto 93:e188a91d3eaa 46 /* Includes ------------------------------------------------------------------*/
Kojto 93:e188a91d3eaa 47 #include "stm32f0xx_hal_def.h"
Kojto 93:e188a91d3eaa 48
Kojto 93:e188a91d3eaa 49 /** @addtogroup STM32F0xx_HAL_Driver
Kojto 93:e188a91d3eaa 50 * @{
Kojto 93:e188a91d3eaa 51 */
Kojto 93:e188a91d3eaa 52
Kojto 93:e188a91d3eaa 53 /** @addtogroup TIMEx
Kojto 93:e188a91d3eaa 54 * @{
Kojto 108:34e6b704fe68 55 */
Kojto 93:e188a91d3eaa 56
Kojto 108:34e6b704fe68 57 /* Exported types ------------------------------------------------------------*/
Kojto 108:34e6b704fe68 58 /** @defgroup TIMEx_Exported_Types TIMEx Exported Types
Kojto 93:e188a91d3eaa 59 * @{
Kojto 93:e188a91d3eaa 60 */
Kojto 93:e188a91d3eaa 61
Kojto 108:34e6b704fe68 62
Kojto 108:34e6b704fe68 63 /**
Kojto 108:34e6b704fe68 64 * @brief TIM Hall sensor Configuration Structure definition
Kojto 93:e188a91d3eaa 65 */
Kojto 93:e188a91d3eaa 66
Kojto 93:e188a91d3eaa 67 typedef struct
Kojto 93:e188a91d3eaa 68 {
Kojto 108:34e6b704fe68 69
Kojto 93:e188a91d3eaa 70 uint32_t IC1Polarity; /*!< Specifies the active edge of the input signal.
Kojto 93:e188a91d3eaa 71 This parameter can be a value of @ref TIM_Input_Capture_Polarity */
Kojto 108:34e6b704fe68 72
Kojto 93:e188a91d3eaa 73 uint32_t IC1Prescaler; /*!< Specifies the Input Capture Prescaler.
Kojto 93:e188a91d3eaa 74 This parameter can be a value of @ref TIM_Input_Capture_Prescaler */
Kojto 108:34e6b704fe68 75
Kojto 93:e188a91d3eaa 76 uint32_t IC1Filter; /*!< Specifies the input capture filter.
Kojto 108:34e6b704fe68 77 This parameter can be a number between Min_Data = 0x0 and Max_Data = 0xF */
Kojto 108:34e6b704fe68 78 uint32_t Commutation_Delay; /*!< Specifies the pulse value to be loaded into the Capture Compare Register.
Kojto 108:34e6b704fe68 79 This parameter can be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF */
Kojto 93:e188a91d3eaa 80 } TIM_HallSensor_InitTypeDef;
Kojto 93:e188a91d3eaa 81
Kojto 108:34e6b704fe68 82 /**
Kojto 108:34e6b704fe68 83 * @brief TIM Master configuration Structure definition
Kojto 93:e188a91d3eaa 84 */
Kojto 93:e188a91d3eaa 85 typedef struct {
Kojto 93:e188a91d3eaa 86 uint32_t MasterOutputTrigger; /*!< Trigger output (TRGO) selection
Kojto 108:34e6b704fe68 87 This parameter can be a value of @ref TIM_Master_Mode_Selection */
Kojto 93:e188a91d3eaa 88 uint32_t MasterSlaveMode; /*!< Master/slave mode selection
Kojto 93:e188a91d3eaa 89 This parameter can be a value of @ref TIM_Master_Slave_Mode */
Kojto 93:e188a91d3eaa 90 }TIM_MasterConfigTypeDef;
Kojto 93:e188a91d3eaa 91
Kojto 108:34e6b704fe68 92 /**
Kojto 108:34e6b704fe68 93 * @brief TIM Break and Dead time configuration Structure definition
Kojto 93:e188a91d3eaa 94 */
Kojto 93:e188a91d3eaa 95 typedef struct
Kojto 93:e188a91d3eaa 96 {
Kojto 93:e188a91d3eaa 97 uint32_t OffStateRunMode; /*!< TIM off state in run mode
Kojto 93:e188a91d3eaa 98 This parameter can be a value of @ref TIM_OSSR_Off_State_Selection_for_Run_mode_state */
Kojto 93:e188a91d3eaa 99 uint32_t OffStateIDLEMode; /*!< TIM off state in IDLE mode
Kojto 93:e188a91d3eaa 100 This parameter can be a value of @ref TIM_OSSI_Off_State_Selection_for_Idle_mode_state */
Kojto 93:e188a91d3eaa 101 uint32_t LockLevel; /*!< TIM Lock level
Kojto 108:34e6b704fe68 102 This parameter can be a value of @ref TIM_Lock_level */
Kojto 93:e188a91d3eaa 103 uint32_t DeadTime; /*!< TIM dead Time
Kojto 93:e188a91d3eaa 104 This parameter can be a number between Min_Data = 0x00 and Max_Data = 0xFF */
Kojto 93:e188a91d3eaa 105 uint32_t BreakState; /*!< TIM Break State
Kojto 93:e188a91d3eaa 106 This parameter can be a value of @ref TIM_Break_Input_enable_disable */
Kojto 93:e188a91d3eaa 107 uint32_t BreakPolarity; /*!< TIM Break input polarity
Kojto 93:e188a91d3eaa 108 This parameter can be a value of @ref TIM_Break_Polarity */
Kojto 93:e188a91d3eaa 109 uint32_t AutomaticOutput; /*!< TIM Automatic Output Enable state
Kojto 108:34e6b704fe68 110 This parameter can be a value of @ref TIM_AOE_Bit_Set_Reset */
Kojto 93:e188a91d3eaa 111 } TIM_BreakDeadTimeConfigTypeDef;
Kojto 93:e188a91d3eaa 112
Kojto 93:e188a91d3eaa 113 /**
Kojto 93:e188a91d3eaa 114 * @}
Kojto 108:34e6b704fe68 115 */
Kojto 93:e188a91d3eaa 116
Kojto 93:e188a91d3eaa 117 /* Exported constants --------------------------------------------------------*/
Kojto 93:e188a91d3eaa 118 /** @defgroup TIMEx_Exported_Constants TIMEx Exported Constants
Kojto 93:e188a91d3eaa 119 * @{
Kojto 93:e188a91d3eaa 120 */
Kojto 108:34e6b704fe68 121
Kojto 93:e188a91d3eaa 122 /** @defgroup TIMEx_Remap TIMEx Remap
Kojto 93:e188a91d3eaa 123 * @{
Kojto 93:e188a91d3eaa 124 */
Kojto 93:e188a91d3eaa 125
Kojto 93:e188a91d3eaa 126 #define TIM_TIM14_GPIO (0x00000000) /*!< TIM14 TI1 is connected to GPIO */
Kojto 93:e188a91d3eaa 127 #define TIM_TIM14_RTC (0x00000001) /*!< TIM14 TI1 is connected to RTC_clock */
Kojto 93:e188a91d3eaa 128 #define TIM_TIM14_HSE (0x00000002) /*!< TIM14 TI1 is connected to HSE/32 */
Kojto 93:e188a91d3eaa 129 #define TIM_TIM14_MCO (0x00000003) /*!< TIM14 TI1 is connected to MCO */
Kojto 122:f9eeca106725 130 /**
Kojto 122:f9eeca106725 131 * @}
Kojto 122:f9eeca106725 132 */
Kojto 93:e188a91d3eaa 133
Kojto 122:f9eeca106725 134 /** @defgroup TIMEx_Clock_Clear_Input_Source TIMEx Clear Input Source
Kojto 122:f9eeca106725 135 * @{
Kojto 122:f9eeca106725 136 */
Kojto 122:f9eeca106725 137 #define TIM_CLEARINPUTSOURCE_NONE ((uint32_t)0x00000000U)
Kojto 122:f9eeca106725 138 #define TIM_CLEARINPUTSOURCE_ETR ((uint32_t)0x00000001U)
Kojto 122:f9eeca106725 139 #if defined(STM32F051x8) || defined(STM32F058xx) || \
Kojto 122:f9eeca106725 140 defined(STM32F071xB) || defined(STM32F072xB) || defined(STM32F078xx) || \
Kojto 122:f9eeca106725 141 defined(STM32F091xC) || defined (STM32F098xx)
Kojto 122:f9eeca106725 142 #define TIM_CLEARINPUTSOURCE_OCREFCLR ((uint32_t)0x00000002U)
Kojto 122:f9eeca106725 143 #endif /* STM32F051x8 || STM32F058xx || */
Kojto 122:f9eeca106725 144 /* STM32F071xB || STM32F072xB || STM32F078xx || */
Kojto 122:f9eeca106725 145 /* STM32F091xC || defined (STM32F098xx) */
Kojto 122:f9eeca106725 146 /**
Kojto 122:f9eeca106725 147 * @}
Kojto 122:f9eeca106725 148 */
Kojto 122:f9eeca106725 149
Kojto 93:e188a91d3eaa 150 /**
Kojto 93:e188a91d3eaa 151 * @}
Kojto 93:e188a91d3eaa 152 */
Kojto 93:e188a91d3eaa 153
Kojto 122:f9eeca106725 154 /* Private Macros -----------------------------------------------------------*/
Kojto 122:f9eeca106725 155 /** @defgroup TIM_Private_Macros TIM Private Macros
Kojto 93:e188a91d3eaa 156 * @{
Kojto 93:e188a91d3eaa 157 */
Kojto 122:f9eeca106725 158
Kojto 122:f9eeca106725 159 #define IS_TIM_REMAP(TIM_REMAP) (((TIM_REMAP) == TIM_TIM14_GPIO) ||\
Kojto 122:f9eeca106725 160 ((TIM_REMAP) == TIM_TIM14_RTC) ||\
Kojto 122:f9eeca106725 161 ((TIM_REMAP) == TIM_TIM14_HSE) ||\
Kojto 122:f9eeca106725 162 ((TIM_REMAP) == TIM_TIM14_MCO))
Kojto 122:f9eeca106725 163
Kojto 108:34e6b704fe68 164 #define IS_TIM_DEADTIME(DEADTIME) ((DEADTIME) <= 0xFF) /*!< BreakDead Time */
Kojto 93:e188a91d3eaa 165
Kojto 122:f9eeca106725 166 #if defined(STM32F051x8) || defined(STM32F058xx) || \
Kojto 122:f9eeca106725 167 defined(STM32F071xB) || defined(STM32F072xB) || defined(STM32F078xx) || \
Kojto 122:f9eeca106725 168 defined(STM32F091xC) || defined (STM32F098xx)
Kojto 122:f9eeca106725 169 #define IS_TIM_CLEARINPUT_SOURCE(SOURCE) (((SOURCE) == TIM_CLEARINPUTSOURCE_NONE) || \
Kojto 122:f9eeca106725 170 ((SOURCE) == TIM_CLEARINPUTSOURCE_ETR) || \
Kojto 122:f9eeca106725 171 ((SOURCE) == TIM_CLEARINPUTSOURCE_OCREFCLR))
Kojto 122:f9eeca106725 172 #else
Kojto 122:f9eeca106725 173 #define IS_TIM_CLEARINPUT_SOURCE(SOURCE) (((SOURCE) == TIM_CLEARINPUTSOURCE_NONE) || \
Kojto 122:f9eeca106725 174 ((SOURCE) == TIM_CLEARINPUTSOURCE_ETR))
Kojto 122:f9eeca106725 175 #endif /* STM32F051x8 || STM32F058xx || */
Kojto 122:f9eeca106725 176 /* STM32F071xB || STM32F072xB || STM32F078xx || */
Kojto 122:f9eeca106725 177 /* STM32F091xC || defined (STM32F098xx) */
Kojto 93:e188a91d3eaa 178 /**
Kojto 93:e188a91d3eaa 179 * @}
Kojto 93:e188a91d3eaa 180 */
Kojto 93:e188a91d3eaa 181
Kojto 93:e188a91d3eaa 182 /* Exported macro ------------------------------------------------------------*/
Kojto 93:e188a91d3eaa 183
Kojto 93:e188a91d3eaa 184 /* Exported functions --------------------------------------------------------*/
Kojto 93:e188a91d3eaa 185 /** @addtogroup TIMEx_Exported_Functions
Kojto 93:e188a91d3eaa 186 * @{
Kojto 93:e188a91d3eaa 187 */
Kojto 93:e188a91d3eaa 188
Kojto 108:34e6b704fe68 189 /** @addtogroup TIMEx_Exported_Functions_Group1
Kojto 93:e188a91d3eaa 190 * @{
Kojto 93:e188a91d3eaa 191 */
Kojto 93:e188a91d3eaa 192 /* Timer Hall Sensor functions **********************************************/
Kojto 93:e188a91d3eaa 193 HAL_StatusTypeDef HAL_TIMEx_HallSensor_Init(TIM_HandleTypeDef *htim, TIM_HallSensor_InitTypeDef* sConfig);
Kojto 93:e188a91d3eaa 194 HAL_StatusTypeDef HAL_TIMEx_HallSensor_DeInit(TIM_HandleTypeDef *htim);
Kojto 93:e188a91d3eaa 195
Kojto 93:e188a91d3eaa 196 void HAL_TIMEx_HallSensor_MspInit(TIM_HandleTypeDef *htim);
Kojto 93:e188a91d3eaa 197 void HAL_TIMEx_HallSensor_MspDeInit(TIM_HandleTypeDef *htim);
Kojto 93:e188a91d3eaa 198
Kojto 93:e188a91d3eaa 199 /* Blocking mode: Polling */
Kojto 93:e188a91d3eaa 200 HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start(TIM_HandleTypeDef *htim);
Kojto 93:e188a91d3eaa 201 HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop(TIM_HandleTypeDef *htim);
Kojto 93:e188a91d3eaa 202 /* Non-Blocking mode: Interrupt */
Kojto 93:e188a91d3eaa 203 HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_IT(TIM_HandleTypeDef *htim);
Kojto 93:e188a91d3eaa 204 HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop_IT(TIM_HandleTypeDef *htim);
Kojto 93:e188a91d3eaa 205 /* Non-Blocking mode: DMA */
Kojto 93:e188a91d3eaa 206 HAL_StatusTypeDef HAL_TIMEx_HallSensor_Start_DMA(TIM_HandleTypeDef *htim, uint32_t *pData, uint16_t Length);
Kojto 93:e188a91d3eaa 207 HAL_StatusTypeDef HAL_TIMEx_HallSensor_Stop_DMA(TIM_HandleTypeDef *htim);
Kojto 93:e188a91d3eaa 208 /**
Kojto 93:e188a91d3eaa 209 * @}
Kojto 93:e188a91d3eaa 210 */
Kojto 93:e188a91d3eaa 211
Kojto 108:34e6b704fe68 212 /** @addtogroup TIMEx_Exported_Functions_Group2
Kojto 93:e188a91d3eaa 213 * @{
Kojto 93:e188a91d3eaa 214 */
Kojto 93:e188a91d3eaa 215 /* Timer Complementary Output Compare functions *****************************/
Kojto 93:e188a91d3eaa 216 /* Blocking mode: Polling */
Kojto 93:e188a91d3eaa 217 HAL_StatusTypeDef HAL_TIMEx_OCN_Start(TIM_HandleTypeDef *htim, uint32_t Channel);
Kojto 93:e188a91d3eaa 218 HAL_StatusTypeDef HAL_TIMEx_OCN_Stop(TIM_HandleTypeDef *htim, uint32_t Channel);
Kojto 93:e188a91d3eaa 219
Kojto 93:e188a91d3eaa 220 /* Non-Blocking mode: Interrupt */
Kojto 93:e188a91d3eaa 221 HAL_StatusTypeDef HAL_TIMEx_OCN_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel);
Kojto 93:e188a91d3eaa 222 HAL_StatusTypeDef HAL_TIMEx_OCN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel);
Kojto 93:e188a91d3eaa 223
Kojto 93:e188a91d3eaa 224 /* Non-Blocking mode: DMA */
Kojto 93:e188a91d3eaa 225 HAL_StatusTypeDef HAL_TIMEx_OCN_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length);
Kojto 93:e188a91d3eaa 226 HAL_StatusTypeDef HAL_TIMEx_OCN_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel);
Kojto 93:e188a91d3eaa 227 /**
Kojto 93:e188a91d3eaa 228 * @}
Kojto 93:e188a91d3eaa 229 */
Kojto 93:e188a91d3eaa 230
Kojto 108:34e6b704fe68 231 /** @addtogroup TIMEx_Exported_Functions_Group3
Kojto 93:e188a91d3eaa 232 * @{
Kojto 93:e188a91d3eaa 233 */
Kojto 93:e188a91d3eaa 234 /* Timer Complementary PWM functions ****************************************/
Kojto 93:e188a91d3eaa 235 /* Blocking mode: Polling */
Kojto 93:e188a91d3eaa 236 HAL_StatusTypeDef HAL_TIMEx_PWMN_Start(TIM_HandleTypeDef *htim, uint32_t Channel);
Kojto 93:e188a91d3eaa 237 HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop(TIM_HandleTypeDef *htim, uint32_t Channel);
Kojto 93:e188a91d3eaa 238
Kojto 93:e188a91d3eaa 239 /* Non-Blocking mode: Interrupt */
Kojto 93:e188a91d3eaa 240 HAL_StatusTypeDef HAL_TIMEx_PWMN_Start_IT(TIM_HandleTypeDef *htim, uint32_t Channel);
Kojto 93:e188a91d3eaa 241 HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t Channel);
Kojto 93:e188a91d3eaa 242 /* Non-Blocking mode: DMA */
Kojto 93:e188a91d3eaa 243 HAL_StatusTypeDef HAL_TIMEx_PWMN_Start_DMA(TIM_HandleTypeDef *htim, uint32_t Channel, uint32_t *pData, uint16_t Length);
Kojto 93:e188a91d3eaa 244 HAL_StatusTypeDef HAL_TIMEx_PWMN_Stop_DMA(TIM_HandleTypeDef *htim, uint32_t Channel);
Kojto 93:e188a91d3eaa 245 /**
Kojto 93:e188a91d3eaa 246 * @}
Kojto 93:e188a91d3eaa 247 */
Kojto 93:e188a91d3eaa 248
Kojto 108:34e6b704fe68 249 /** @addtogroup TIMEx_Exported_Functions_Group4
Kojto 93:e188a91d3eaa 250 * @{
Kojto 93:e188a91d3eaa 251 */
Kojto 93:e188a91d3eaa 252 /* Timer Complementary One Pulse functions **********************************/
Kojto 93:e188a91d3eaa 253 /* Blocking mode: Polling */
Kojto 93:e188a91d3eaa 254 HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Start(TIM_HandleTypeDef *htim, uint32_t OutputChannel);
Kojto 93:e188a91d3eaa 255 HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop(TIM_HandleTypeDef *htim, uint32_t OutputChannel);
Kojto 93:e188a91d3eaa 256
Kojto 93:e188a91d3eaa 257 /* Non-Blocking mode: Interrupt */
Kojto 93:e188a91d3eaa 258 HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Start_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel);
Kojto 93:e188a91d3eaa 259 HAL_StatusTypeDef HAL_TIMEx_OnePulseN_Stop_IT(TIM_HandleTypeDef *htim, uint32_t OutputChannel);
Kojto 93:e188a91d3eaa 260 /**
Kojto 93:e188a91d3eaa 261 * @}
Kojto 93:e188a91d3eaa 262 */
Kojto 93:e188a91d3eaa 263
Kojto 108:34e6b704fe68 264 /** @addtogroup TIMEx_Exported_Functions_Group5
Kojto 93:e188a91d3eaa 265 * @{
Kojto 93:e188a91d3eaa 266 */
Kojto 93:e188a91d3eaa 267 /* Extended Control functions ************************************************/
Kojto 93:e188a91d3eaa 268 HAL_StatusTypeDef HAL_TIMEx_ConfigCommutationEvent(TIM_HandleTypeDef *htim, uint32_t InputTrigger, uint32_t CommutationSource);
Kojto 93:e188a91d3eaa 269 HAL_StatusTypeDef HAL_TIMEx_ConfigCommutationEvent_IT(TIM_HandleTypeDef *htim, uint32_t InputTrigger, uint32_t CommutationSource);
Kojto 93:e188a91d3eaa 270 HAL_StatusTypeDef HAL_TIMEx_ConfigCommutationEvent_DMA(TIM_HandleTypeDef *htim, uint32_t InputTrigger, uint32_t CommutationSource);
Kojto 93:e188a91d3eaa 271 HAL_StatusTypeDef HAL_TIMEx_MasterConfigSynchronization(TIM_HandleTypeDef *htim, TIM_MasterConfigTypeDef * sMasterConfig);
Kojto 93:e188a91d3eaa 272 HAL_StatusTypeDef HAL_TIMEx_ConfigBreakDeadTime(TIM_HandleTypeDef *htim, TIM_BreakDeadTimeConfigTypeDef *sBreakDeadTimeConfig);
Kojto 93:e188a91d3eaa 273 HAL_StatusTypeDef HAL_TIMEx_RemapConfig(TIM_HandleTypeDef *htim, uint32_t Remap);
Kojto 93:e188a91d3eaa 274 /**
Kojto 93:e188a91d3eaa 275 * @}
Kojto 93:e188a91d3eaa 276 */
Kojto 93:e188a91d3eaa 277
Kojto 108:34e6b704fe68 278 /** @addtogroup TIMEx_Exported_Functions_Group6
Kojto 93:e188a91d3eaa 279 * @{
Kojto 93:e188a91d3eaa 280 */
Kojto 93:e188a91d3eaa 281 /* Extension Callback *********************************************************/
Kojto 93:e188a91d3eaa 282 void HAL_TIMEx_CommutationCallback(TIM_HandleTypeDef *htim);
Kojto 93:e188a91d3eaa 283 void HAL_TIMEx_BreakCallback(TIM_HandleTypeDef *htim);
Kojto 93:e188a91d3eaa 284 /**
Kojto 93:e188a91d3eaa 285 * @}
Kojto 93:e188a91d3eaa 286 */
Kojto 93:e188a91d3eaa 287
Kojto 108:34e6b704fe68 288 /** @addtogroup TIMEx_Exported_Functions_Group7
Kojto 93:e188a91d3eaa 289 * @{
Kojto 93:e188a91d3eaa 290 */
Kojto 93:e188a91d3eaa 291 /* Extension Peripheral State functions **************************************/
Kojto 93:e188a91d3eaa 292 HAL_TIM_StateTypeDef HAL_TIMEx_HallSensor_GetState(TIM_HandleTypeDef *htim);
Kojto 93:e188a91d3eaa 293 /**
Kojto 93:e188a91d3eaa 294 * @}
Kojto 93:e188a91d3eaa 295 */
Kojto 93:e188a91d3eaa 296
Kojto 93:e188a91d3eaa 297 /**
Kojto 93:e188a91d3eaa 298 * @}
Kojto 108:34e6b704fe68 299 */
Kojto 108:34e6b704fe68 300 /* End of exported functions -------------------------------------------------*/
Kojto 93:e188a91d3eaa 301
Kojto 108:34e6b704fe68 302 /* Private functions----------------------------------------------------------*/
Kojto 108:34e6b704fe68 303 /** @defgroup TIMEx_Private_Functions TIMEx Private Functions
Kojto 108:34e6b704fe68 304 * @{
Kojto 108:34e6b704fe68 305 */
Kojto 108:34e6b704fe68 306 void TIMEx_DMACommutationCplt(DMA_HandleTypeDef *hdma);
Kojto 93:e188a91d3eaa 307 /**
Kojto 108:34e6b704fe68 308 * @}
Kojto 108:34e6b704fe68 309 */
Kojto 108:34e6b704fe68 310 /* End of private functions --------------------------------------------------*/
Kojto 93:e188a91d3eaa 311
Kojto 93:e188a91d3eaa 312 /**
Kojto 93:e188a91d3eaa 313 * @}
Kojto 93:e188a91d3eaa 314 */
Kojto 108:34e6b704fe68 315
Kojto 108:34e6b704fe68 316 /**
Kojto 108:34e6b704fe68 317 * @}
Kojto 108:34e6b704fe68 318 */
Kojto 108:34e6b704fe68 319
Kojto 93:e188a91d3eaa 320 #ifdef __cplusplus
Kojto 93:e188a91d3eaa 321 }
Kojto 93:e188a91d3eaa 322 #endif
Kojto 93:e188a91d3eaa 323
Kojto 93:e188a91d3eaa 324
Kojto 93:e188a91d3eaa 325 #endif /* __STM32F0xx_HAL_TIM_EX_H */
Kojto 93:e188a91d3eaa 326
Kojto 93:e188a91d3eaa 327 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/