/********************************************************************* * * LCD_X_DisplayDriver * * Function description: * This function is called by the display driver for several purposes. * To support the according task the routine needs to be adapted to * the display controller. Please note that the commands marked with * 'optional' are not cogently required and should only be adapted if * the display controller supports these features. * * Parameter: * LayerIndex - Index of layer to be configured * Cmd - Please refer to the details in the switch statement below * pData - Pointer to a LCD_X_DATA structure * * Return Value: * < -1 - Error * -1 - Command not handled * 0 - Ok */ int LCD_X_DisplayDriver(unsigned LayerIndex, unsigned Cmd, void * pData) { int r; (void) LayerIndex; (void) pData; switch (Cmd) { case LCD_X_INITCONTROLLER: { // // Called during the initialization process in order to set up the // display controller and put it into operation. If the display // controller is not initialized by any external routine this needs // to be adapted by the customer... // // ... /* initialize the ili9320 drive */ ili9320_init(); return 0; } default: r = -1; } return r; }
int DoILI9320(int argc, char * const argv[]) { uint32_t i; ili9320_init(); ili9320_clear(RED); return 0; }
int main(void) { uint8_t i; DelayInit(); GPIO_QuickInit(HW_GPIOE, 6, kGPIO_Mode_OPP); UART_QuickInit(UART0_RX_PD06_TX_PD07, 115200); printf("flexbus lcd test\r\n"); ili9320_init(); printf("controller id:0x%X\r\n", ili9320_get_id()); while(1) { i++; i%= ARRAY_SIZE(ColorTable); ili9320_clear(ColorTable[i]); GPIO_ToggleBit(HW_GPIOE, 6); DelayMs(500); } }
int main(void) { DelayInit(); GPIO_QuickInit(HW_GPIOE, 6, kGPIO_Mode_OPP); UART_QuickInit(UART0_RX_PD06_TX_PD07, 115200); printf("OV7620 test\r\n"); ili9320_init(); SRAM_Init(); /* 摄像头速度非常快 把FLexbus 总线速度调到最高 */ SIM->CLKDIV1 &= ~SIM_CLKDIV1_OUTDIV3_MASK; SIM->CLKDIV1 |= SIM_CLKDIV1_OUTDIV3(0); OV7620_Init(); SCCB_Init(); while(1) { GPIO_ToggleBit(HW_GPIOE, 6); DelayMs(500); } }
static rt_err_t rt_lcd_init (rt_device_t dev) { return ili9320_init(); }
void GUI_DriverInit(void) { ili9320_init(); }