I am using STM32F446ZE Nucleo board. I wish to interface different sensors on the board, along with 5 encoders. However, using encoders with interrupts would be problematic as it would affect the operation of other parts and sensor readings. This application is highly time based. The encoders are to be read, but they aren't a priority. I wish to implement Input Capture mode along with Encoder mode, and would like to know what is Input Capture Indirect Mode, which isn't specified in datasheets and application notes.
Input Capture Mode can be used to analyze signals by feeding them to Microcontroller. In STM32 Microcontrollers, they have provided with Input Capture Direct Mode & Input Capture Indirect Mode. These two mode only differ in how input is taken. After reading the Timer Cookbook, TI1FP2 signals are fed to Channel 2 and TI2FP1 signals are fed to Channel 1. Similar can be said about Channel 3 and 4. (See attached image)
Further, I am adding the code snippet from HAL for STM32 Microcontrollers.
#define TIM_ICSELECTION_INDIRECTTI (TIM_CCMR1_CC1S_1)
/*!< TIM Input 1, 2, 3 or 4 is selected to be connected to IC2, IC1, IC4 or IC3, respectively */
Hence, Input Capture Indirect Mode can be used to feed signal to two channels internally.