SimpleFOClibrary 2.4.0
Loading...
Searching...
No Matches
stm32f7_utils.cpp
Go to the documentation of this file.
1#include "../stm32_adc_utils.h"
2
3#if defined(STM32F7xx)
4
5/*
6TIM1
7TIM2
8TIM3
9TIM4
10TIM5
11TIM6
12TIM7
13TIM12
14TIM13
15TIM14
16
17ADC_EXTERNALTRIGINJECCONV_T1_TRGO
18ADC_EXTERNALTRIGINJECCONV_T2_TRGO
19ADC_EXTERNALTRIGINJECCONV_T4_TRGO
20
21ADC_EXTERNALTRIGINJECCONV_T1_TRGO2
22ADC_EXTERNALTRIGINJECCONV_T8_TRGO2
23ADC_EXTERNALTRIGINJECCONV_T5_TRGO
24ADC_EXTERNALTRIGINJECCONV_T6_TRGO
25*/
26// timer to injected TRGO
27// https://github.com/stm32duino/Arduino_Core_STM32/blob/e156c32db24d69cb4818208ccc28894e2f427cfa/system/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_adc_ex.h#L179
28uint32_t _timerToInjectedTRGO(TIM_HandleTypeDef* timer){
29
30 if(timer->Instance == TIM1)
31 return ADC_EXTERNALTRIGINJECCONV_T1_TRGO;
32#ifdef TIM2 // if defined timer 2
33 else if(timer->Instance == TIM2)
34 return ADC_EXTERNALTRIGINJECCONV_T2_TRGO;
35#endif
36#ifdef TIM4 // if defined timer 4
37 else if(timer->Instance == TIM4)
38 return ADC_EXTERNALTRIGINJECCONV_T4_TRGO;
39#endif
40#ifdef TIM5 // if defined timer 5
41 else if(timer->Instance == TIM5)
42 return ADC_EXTERNALTRIGINJECCONV_T5_TRGO;
43#endif
44#ifdef TIM6 // if defined timer 6
45 else if(timer->Instance == TIM6)
46 return ADC_EXTERNALTRIGINJECCONV_T6_TRGO;
47#endif
48#ifdef TIM8 // if defined timer 8
49 else if(timer->Instance == TIM8)
50 return ADC_EXTERNALTRIGINJECCONV_T8_TRGO;
51#endif
52 else
53 return _TRGO_NOT_AVAILABLE;
54}
55/*
56
57ADC_EXTERNALTRIGCONV_T5_TRGO
58ADC_EXTERNALTRIGCONV_T8_TRGO
59ADC_EXTERNALTRIGCONV_T8_TRGO2
60ADC_EXTERNALTRIGCONV_T1_TRGO
61ADC_EXTERNALTRIGCONV_T1_TRGO2
62ADC_EXTERNALTRIGCONV_T2_TRGO
63ADC_EXTERNALTRIGCONV_T4_TRGO
64ADC_EXTERNALTRIGCONV_T6_TRGO
65*/
66
67// timer to regular TRGO
68// https://github.com/stm32duino/Arduino_Core_STM32/blob/e156c32db24d69cb4818208ccc28894e2f427cfa/system/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_adc.h#L331
69uint32_t _timerToRegularTRGO(TIM_HandleTypeDef* timer){
70 if(timer->Instance == TIM1)
71 return ADC_EXTERNALTRIGCONV_T1_TRGO;
72#ifdef TIM2 // if defined timer 2
73 else if(timer->Instance == TIM2)
74 return ADC_EXTERNALTRIGCONV_T2_TRGO;
75#endif
76#ifdef TIM4 // if defined timer 4
77 else if(timer->Instance == TIM4)
78 return ADC_EXTERNALTRIGCONV_T4_TRGO;
79#endif
80#ifdef TIM5 // if defined timer 5
81 else if(timer->Instance == TIM5)
82 return ADC_EXTERNALTRIGCONV_T5_TRGO;
83#endif
84#ifdef TIM6 // if defined timer 6
85 else if(timer->Instance == TIM6)
86 return ADC_EXTERNALTRIGCONV_T6_TRGO;
87#endif
88#ifdef TIM8 // if defined timer 8
89 else if(timer->Instance == TIM8)
90 return ADC_EXTERNALTRIGCONV_T8_TRGO;
91#endif
92 else
93 return _TRGO_NOT_AVAILABLE;
94}
95
96#endif