I have ported ESD project to STM32. I can see labels, uttons, sliders etc. but I cant see ESD Image Widget or Image Buttons. I have a image named "down" and ESD 4.8 created this for it:
Ft_Esd_BitmapInfo down__Info = {
.Width = 75,
.Height = 105,
.Format = ARGB1555,
.Stride = 150,
.Size = 15750,
.FlashAddress = 0x0800C000;//.File = "down.bin",
.GpuHandle = {
.Id = MAX_NUM_ALLOCATIONS,
.Seq = 0
},
.BitmapHandle = ~0,
.AdditionalFile = 0,
.AdditionalInfo = 0,
.PaletteFile = 0,
.PaletteGpuHandle = {
.Id = MAX_NUM_ALLOCATIONS,
.Seq = 0
},
.Cells = 1,
.Compressed = 1,
.Persistent = 0,
.Flash = 1,//0,
.PreferRam = 0,
.CoLoad = 0,
};
I changed flash parts because I put my image's bin file to STM flash memory at 0x0800C000. This binary file is also created by ESD 4.8 . Binary file's size is 2241 bytes but in the config struct above size is 15750. This is my first problem.
There are these functions:
bool EVE_Util_loadRawFile(EVE_HalContext *phost, uint32_t address, const char *filename);
bool EVE_Util_loadInflateFile(EVE_HalContext *phost, uint32_t address, const char *filename);
bool EVE_Util_loadImageFile(EVE_HalContext *phost, uint32_t address, const char *filename, uint32_t *format);
Should I use one of those before widgets initialized? If yes, how? Those functions are all reading from file, I can handle that part to read from flash but I dont know what should I put for *phost and address. How can I solve these problems? or is there any reference ESD project which displays images? Thank you.