TIM4 is a master, TIM3 is a slave. Given the same values I expected their respective CCx IRQ to fire at about the same time.
Set up TIM4 to generate a hsync pulse of 2us RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4, ENABLE); TIM_Cmd(TIM4, DISABLE); TIM_TimeBaseInitTypeDef timerInitStructure; timerInitStructure.TIM_Prescaler = 0; timerInitStructure.TIM_CounterMode = TIM_...