Hello
I have searched around the net for days for the solution to my issues and very few people have the actual issue without any resolution being posted.
Here’s the situation.
I just use on a standard (non LCD driver enabled) MCU connected to a LCD panel(TFT) such as the ones with SPI connectivity and the LCD driver and with non readable displays.
GUI config code: void GUI_X_Config(void) { // // 32 bit aligned memory area // static U32 aMemory[GUI_NUMBYTES / 4]; // // Assign memory to emWin // GUI_ALLOC_AssignMemory(aMemory, GUI_NUMBYTES); GUI_ALLOC_SetAvBlockSize(GUI_BLOCKSIZE); }
LCD config code: void LCD_X_Config(void) { // // Set display driver and color conversion for 1st layer // GUI_DEVICE_CreateAndLink(GUIDRV_BITPLAINS, COLOR_CONVERSION, 0, 0); // // Display driver configuration, required for Lin-driver // if (LCD_GetSwapXY()) { LCD_SetSizeEx (0, YSIZE_PHYS, XSIZE_PHYS); LCD_SetVSizeEx(0, YSIZE_PHYS, XSIZE_PHYS); } else { LCD_SetSizeEx (0, XSIZE_PHYS, YSIZE_PHYS); LCD_SetVSizeEx(0, XSIZE_PHYS, YSIZE_PHYS); } // // Initialize VRAM access off driver // LCD_SetVRAMAddrEx(0, (void *)&_VRAM_Desc); }
int LCD_X_DisplayDriver(unsigned LayerIndex, unsigned Cmd, void * p) { int r;
switch (Cmd) { // // Required // 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... // LCD_X_Init(); //not emwin code return 0; } default: r = -1; } return r; }
MainTask code: __task void MainTask(void) { GUI_Init();
GUI_SetBkColor(GUI_BLUE); GUI_DispStringHCenterAt("http://www.keil.com", 20, 20);
while (1) { os_dly_wait(1); } }
I found GUI_Init run well! but GUI_SetBkColor and GUI_DispStringHCenterAt didn't work as i think, bk is not blue and string did not show in lcd.
what shall i do? Could anybody show me the way please!