/**************************************************************************//** * @brief Configure EBI/TFT interrupt * @param[in] flags Interrupt flags for EBI to enable *****************************************************************************/ void TFT_IRQEnable(uint32_t flags) { /* Disable interrupts */ EBI_IntDisable(_EBI_IF_MASK); /* Clear previous interrupts */ EBI_IntClear(_EBI_IF_MASK); /* Enable required interrupt */ EBI_IntEnable(flags); NVIC_ClearPendingIRQ(EBI_IRQn); NVIC_EnableIRQ(EBI_IRQn); }
void EnableVsyncInterrupt(void) { /* Disable all EBI interrupts */ EBI_IntDisable(_EBI_IF_MASK); /* Clear previous interrupts */ EBI_IntClear(_EBI_IF_MASK); /* Enable VSYNC interrupt */ EBI_IntEnable(EBI_IF_VFPORCH); /* Enable EBI interrupts in core */ NVIC_ClearPendingIRQ(EBI_IRQn); NVIC_EnableIRQ(EBI_IRQn); }
void LCD_X_InitDriver(void) { /* Set up Direct Drive and configure display controller */ TFT_DirectInit(&tftInit); /* Enable the interrupt on VSYNC, generated from Direct Drive */ /* Disable all EBI interrupts */ EBI_IntDisable(_EBI_IF_MASK); /* Clear previous interrupts */ EBI_IntClear(_EBI_IF_MASK); /* Enable VSYNC interrupt */ EBI_IntEnable(EBI_IF_VSYNC); /* Enable EBI interrupts in core */ NVIC_ClearPendingIRQ(EBI_IRQn); NVIC_EnableIRQ(EBI_IRQn); }