2019-04-15 09:28 AM
Hey guys,
i got a strange problem with stemwin.
I'm currently migrating my project from an F103 to an F413.
On the F103 Stmwin worked fine. On my F413 i'm just getting a blank screen.
Let's assume the actuel LCD_Write/Read are still working. Could you give me some hint's where to check?
My EmWin Initialisation looks like this:
void LCD_X_Config(void) {
ERROR_LOGGER_T error_logger = {0};
error_logger.error_type = error_types_display_stemwin;
GUI_DEVICE * pDevice;
CONFIG_FLEXCOLOR Config = {0};
GUI_PORT_API PortAPI = {0};
//
// Set display driver and color conversion
//
pDevice = GUI_DEVICE_CreateAndLink(GUIDRV_FLEXCOLOR, GUICC_565, 0, 0);
//
// Display driver configuration, required for Lin-driver
//
LCD_SetSizeEx (0, XSIZE_PHYS , YSIZE_PHYS);
LCD_SetVSizeEx(0, VXSIZE_PHYS, VYSIZE_PHYS);
//
// Orientation
//
Config.Orientation = GUI_MIRROR_X;
GUIDRV_FlexColor_Config(pDevice, &Config);
//
// Set controller and operation mode
//
PortAPI.pfWrite16_A0 = LcdWriteReg;
PortAPI.pfWrite16_A1 = LcdWriteData;
PortAPI.pfWriteM16_A1 = LcdWriteDataMultiple;
PortAPI.pfReadM16_A1 = LcdReadDataMultiple;
GUIDRV_FlexColor_SetFunc(pDevice, &PortAPI, GUIDRV_FLEXCOLOR_F66714, GUIDRV_FLEXCOLOR_M16C0B16);
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
//do something
return 0;
}
//no other cases
default:
{
r = -1;
break;
}
}
return r;
}
Do i have to add extra cases here?
Does Stemwin provide any debugging options? Can i somehow check what's wrong or does somebody have an idea whats missing?
Again: It all Worked on my F1. The SPI Communication and the Config are still the same on the F4.
The emwin library version is the same. however it's a libary version compiled with a floating point unit.
I'd be very glad for any suggestions :)