88 {
89 .circular = true,
92 .error_cb = nullptr,
93 .cfgr = ADC_CFGR_EXTEN_0 | (4 << ADC_CFGR_EXTSEL_Pos),
94 .cfgr2 = (H7_ADC_OVERSAMPLE - 1) << ADC_CFGR2_OVSR_Pos |
96 ADC_CFGR2_ROVSE,
97 .ccr = 0,
98 .pcsel = 0xFFFFFFFF,
99
100 .ltr1 = 0, .htr1 = 0, .ltr2 = 0, .htr2 = 0, .ltr3 = 0, .htr3 = 0,
101 .awd2cr = 0,
102 .awd3cr = 0,
103 .smpr = {
104
105 ADC_SMPR1_SMP_AN0(ADC_SAMPLING_SLOW) |
106 ADC_SMPR1_SMP_AN1(ADC_SAMPLING_SLOW) |
107 ADC_SMPR1_SMP_AN2(ADC_SAMPLING_SLOW) |
108 ADC_SMPR1_SMP_AN3(ADC_SAMPLING_SLOW) |
109 ADC_SMPR1_SMP_AN4(ADC_SAMPLING_SLOW) |
110 ADC_SMPR1_SMP_AN5(ADC_SAMPLING_SLOW) |
111 ADC_SMPR1_SMP_AN6(ADC_SAMPLING_SLOW) |
112 ADC_SMPR1_SMP_AN7(ADC_SAMPLING_SLOW) |
113 ADC_SMPR1_SMP_AN8(ADC_SAMPLING_SLOW) |
114 ADC_SMPR1_SMP_AN9(ADC_SAMPLING_SLOW),
115 ADC_SMPR2_SMP_AN10(ADC_SAMPLING_SLOW) |
116 ADC_SMPR2_SMP_AN11(ADC_SAMPLING_SLOW) |
117 ADC_SMPR2_SMP_AN12(ADC_SAMPLING_SLOW) |
118 ADC_SMPR2_SMP_AN13(ADC_SAMPLING_SLOW) |
119 ADC_SMPR2_SMP_AN14(ADC_SAMPLING_SLOW) |
120 ADC_SMPR2_SMP_AN15(ADC_SAMPLING_SLOW) |
121 ADC_SMPR2_SMP_AN16(ADC_SAMPLING_SLOW) |
122 ADC_SMPR2_SMP_AN17(ADC_SAMPLING_SLOW) |
123 ADC_SMPR2_SMP_AN18(ADC_SAMPLING_SLOW) |
124 ADC_SMPR2_SMP_AN19(ADC_SAMPLING_SLOW)
125 },
126 .sqr = {
127
128
129 ADC_SQR1_SQ1_N(16) |
130 ADC_SQR1_SQ2_N(17) |
131 ADC_SQR1_SQ3_N(14) |
132 ADC_SQR1_SQ4_N(15),
133 ADC_SQR2_SQ5_N(18) |
134 ADC_SQR2_SQ6_N(19) |
135 ADC_SQR2_SQ7_N(3) |
136 ADC_SQR2_SQ8_N(7) |
137 ADC_SQR2_SQ9_N(9),
138 ADC_SQR3_SQ10_N(5) |
139 ADC_SQR3_SQ11_N(10) |
140 ADC_SQR3_SQ12_N(11) |
141 ADC_SQR3_SQ13_N(12) |
142 ADC_SQR3_SQ14_N(13),
143 ADC_SQR4_SQ15_N(4) |
144 ADC_SQR4_SQ16_N(8)
145 },
146};
static void adc_callback(ADCDriver *adcp)
constexpr size_t slowChannelCount