TM STM32F4xx Libraries  v1.0.0
Libraries for STM32F4xx devices from Tilen Majerle
tm_stm32f4_pwmin.h
1 
59 #ifndef TM_PWMIN_H
60 #define TM_PWMIN_H 100
61 
62 /* C++ detection */
63 #ifdef __cplusplus
64 extern C {
65 #endif
66 
131 #include "stm32f4xx.h"
132 #include "stm32f4xx_rcc.h"
133 #include "stm32f4xx_gpio.h"
134 #include "defines.h"
135 #include "tm_stm32f4_timer_properties.h"
136 #include "tm_stm32f4_gpio.h"
137 
147 #ifndef PWMIN_PRIORITY
148 #define PWMIN_PRIORITY 0x01
149 #endif
150 
164 typedef enum {
170 
174 typedef struct {
175  float Frequency;
176  float DutyCycle;
177  TIM_TypeDef* __TIM;
179  float __Freq;
180  float __Duty;
181  uint8_t __SubPriority;
182 } TM_PWMIN_t;
183 
187 typedef enum {
191 
195 typedef enum {
200 
223 TM_PWMIN_Result_t TM_PWMIN_InitTimer(TIM_TypeDef* TIMx, TM_PWMIN_t* PWMIN_Data, TM_PWMIN_Channel_t PWMIN_Channel, TM_PWMIN_PinsPack_t PinsPack, float MinExpectedFrequency, IRQn_Type TIMx_IRQn);
224 
233 
248 
261 /* C++ detection */
262 #ifdef __cplusplus
263 }
264 #endif
265 
266 #endif
Definition: tm_stm32f4_pwmin.h:167
float Frequency
Definition: tm_stm32f4_pwmin.h:175
uint8_t __SubPriority
Definition: tm_stm32f4_pwmin.h:181
TM_PWMIN_Channel_t
Input channel for measure PWM selection.
Definition: tm_stm32f4_pwmin.h:187
TM_PWMIN_Result_t TM_PWMIN_InterruptHandler(TM_PWMIN_t *PWMIN_Data)
Most important function. This function handles TIMx interrupts to calculate PWM input data...
Definition: tm_stm32f4_pwmin.h:196
TM_PWMIN_Result_t TM_PWMIN_Get(TM_PWMIN_t *PWMIN_Data)
Reads data from measured input PWM signal.
Structure for timer data.
Definition: tm_stm32f4_timer_properties.h:99
TM_PWMIN_Result_t TM_PWMIN_InitTimer(TIM_TypeDef *TIMx, TM_PWMIN_t *PWMIN_Data, TM_PWMIN_Channel_t PWMIN_Channel, TM_PWMIN_PinsPack_t PinsPack, float MinExpectedFrequency, IRQn_Type TIMx_IRQn)
Initializes and prepares timer for PWM input capture.
Definition: tm_stm32f4_pwmin.h:197
TM_TIMER_PROPERTIES_t __TIM_Data
Definition: tm_stm32f4_pwmin.h:178
Definition: tm_stm32f4_pwmin.h:189
float DutyCycle
Definition: tm_stm32f4_pwmin.h:176
float __Freq
Definition: tm_stm32f4_pwmin.h:179
Definition: tm_stm32f4_pwmin.h:166
TIM_TypeDef * __TIM
Definition: tm_stm32f4_pwmin.h:177
Definition: tm_stm32f4_pwmin.h:188
TM_PWMIN_PinsPack_t
Pinspack for PWMIN channel pin.
Definition: tm_stm32f4_pwmin.h:195
Definition: tm_stm32f4_pwmin.h:168
float __Duty
Definition: tm_stm32f4_pwmin.h:180
TM_PWMIN_Result_t
PWM Input result enumeration.
Definition: tm_stm32f4_pwmin.h:164
Definition: tm_stm32f4_pwmin.h:198
Definition: tm_stm32f4_pwmin.h:165
PWM Input working struct.
Definition: tm_stm32f4_pwmin.h:174