ChibiOS limitation is that only channels #1 and #2 could be used for input capture Could this be unified with getConfigForPin() method?
122 {
123 switch (hwPin) {
125 RETURN_ICU5(ICU_CHANNEL_1);
126 return false;
128 RETURN_ICU2(ICU_CHANNEL_2);
129 RETURN_ICU5(ICU_CHANNEL_2);
130 return false;
132 RETURN_ICU9(ICU_CHANNEL_1);
133 return false;
135 RETURN_ICU9(ICU_CHANNEL_2);
136 return false;
138 RETURN_ICU2(ICU_CHANNEL_1);
139 return false;
141 RETURN_ICU3(ICU_CHANNEL_1);
142 RETURN_ICU13(ICU_CHANNEL_1);
143 return false;
145 RETURN_ICU3(ICU_CHANNEL_2);
146 RETURN_ICU14(ICU_CHANNEL_1);
147 return false;
149 RETURN_ICU1(ICU_CHANNEL_1);
150 return false;
152 RETURN_ICU1(ICU_CHANNEL_2);
153 return false;
155 RETURN_ICU2(ICU_CHANNEL_1);
156 return false;
158 RETURN_ICU2(ICU_CHANNEL_2);
159 return false;
161 RETURN_ICU3(ICU_CHANNEL_1);
162 return false;
164 RETURN_ICU3(ICU_CHANNEL_2);
165 return false;
167 RETURN_ICU4(ICU_CHANNEL_1);
168 return false;
170 RETURN_ICU4(ICU_CHANNEL_2);
171 return false;
173 RETURN_ICU10(ICU_CHANNEL_1);
174 return false;
176 RETURN_ICU11(ICU_CHANNEL_1);
177 return false;
179 RETURN_ICU12(ICU_CHANNEL_1);
180 return false;
182 RETURN_ICU12(ICU_CHANNEL_2);
183 return false;
185 RETURN_ICU3(ICU_CHANNEL_1);
186 RETURN_ICU8(ICU_CHANNEL_1);
187 return false;
189 RETURN_ICU3(ICU_CHANNEL_2);
190 RETURN_ICU8(ICU_CHANNEL_2);
191 return false;
193 RETURN_ICU4(ICU_CHANNEL_1);
194 return false;
196 RETURN_ICU4(ICU_CHANNEL_2);
197 return false;
199 RETURN_ICU9(ICU_CHANNEL_1);
200 return false;
202 RETURN_ICU9(ICU_CHANNEL_2);
203 return false;
205 RETURN_ICU1(ICU_CHANNEL_1);
206 return false;
208 RETURN_ICU1(ICU_CHANNEL_2);
209 return false;
211 RETURN_ICU1(ICU_CHANNEL_4);
212 return false;
214 RETURN_ICU10(ICU_CHANNEL_1);
215 return false;
217 RETURN_ICU11(ICU_CHANNEL_1);
218 return false;
220 RETURN_ICU13(ICU_CHANNEL_1);
221 return false;
223 RETURN_ICU14(ICU_CHANNEL_1);
224 return false;
226 RETURN_ICU12(ICU_CHANNEL_1);
227 return false;
229 RETURN_ICU12(ICU_CHANNEL_2);
230 return false;
232 RETURN_ICU5(ICU_CHANNEL_1);
233 return false;
235 RETURN_ICU5(ICU_CHANNEL_2);
236 return false;
238 RETURN_ICU8(ICU_CHANNEL_1);
239 return false;
241 RETURN_ICU8(ICU_CHANNEL_2);
242 return false;
243
244 default:
245 return false;
246 }
247
248 return false;
249}