rusEFI
The most advanced open source ECU
Loading...
Searching...
No Matches
knock_config.h
Go to the documentation of this file.
1/**
2 * @file knock_config.h
3 */
4
5#pragma once
6
7// Knock is on ADC3
8#define KNOCK_ADC ADCD3
9
10// knock 1 - pin PF4
11#define KNOCK_PIN_CH1 Gpio::F4
12
13// knock 2 - pin PF5
14#define KNOCK_HAS_CH2 true
15#define KNOCK_PIN_CH2 Gpio::F5
16
17// Sample rate & time - depends on the exact MCU
18#if defined(STM32H7XX)
19 // H7
20 #define KNOCK_ADC_CH1 9
21 #define KNOCK_ADC_CH2 4
22
23 #define H7_KNOCK_OVERSAMPLE 4
24 #define KNOCK_SAMPLE_TIME ADC_SMPR_SMP_8P5
25 #define KNOCK_SAMPLE_RATE (STM32_ADC3_CLOCK / (H7_KNOCK_OVERSAMPLE * (8 + 8)))
26#else
27 // F4/F7
28 #define KNOCK_ADC_CH1 ADC_CHANNEL_IN14
29 #define KNOCK_ADC_CH2 ADC_CHANNEL_IN15
30
31 #define KNOCK_SAMPLE_TIME ADC_SAMPLE_84
32 #define KNOCK_SAMPLE_RATE (STM32_PCLK2 / (4 * (84 + 12)))
33#endif