Jump to content


  • Content Count

  • Joined

  • Last visited

About cpu20

  • Rank
    IDE Specialist

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Sorry for the late response. It has been a while that I looked into this. You need to add #include "gfx.h" at the top of your board file "board_ILI9225.h".
  2. This is indeed an IDE feature. It's called the Indexer in Eclipse. The indexer will search through all files you tell it to search through in the settings and tries to warn you when something is missing/might be wrong. You can completely configure the error and warning levels of the indexer. But if the indexer gives an error/warning this does not mean that the project won't build. The compiler and indexer can be configured independently of eachother. You should read this to understand how the compiler and the linker work. In short, the compiler produces object files for each source f
  3. Just commenting out the _init() function does the trick for me:
  4. Does the error change after you comment the _init() function in stm32f439i_raw32_ugfx.c? Anyway you should do a clean build to make sure there are no old binary files that get linked in. Can you give the compiler output? I doubt that the IDE is buggy. It's based on Eclipse which is a well known and widely used IDE. It can just be tricky to initially set up the project. If you post your project I can take a look to see if something is wrongly configured.
  5. I should have looked closer.The compiler says exactly where it found the second defenition of the init function. The gnu arm libraries already contain an _init function. Just delete the _init() function from the stm32f439i_raw32_ugfx.c file.
  6. The type name gU32 is defined in "gfx_types.h". You should include this in your build.
  7. Everything you did look OK to me. Could it be that something is wrong in the file stm32l1152RE_raw32_ugfx.c? Can you attach it here?
  8. In the last image you sent inidcates that you haven't correctly included the gdisp configuration file. Adding files to be included in the build is done in the Properties window of your project. Go to: C/C++ General > Paths and Symbols > Includes In that window you need to add all the folders that contain .h files that need to be included in your project for example the folder containing the "gdisp_lld_config.h". Sorry for my late reply. If you have any questions don't hesitate to ask.
  9. With Makefile approach do you mean using the Makefile system provided by uGFX? Because then you need to make a Makefile project in Eclipse. When you create a C project in Eclipse, it will create a Makefile for you depending on how you configured the project. When you create a Makefile project, Eclipse will not generate any makefiles and use the Makefile you provide. What you are currently doing is manually configuring the whole Eclipse project to compile correctly. That is a very difficult process, but I think it is possible.
  10. uGFX is a graphics library that makes abstraction from the hardware that you use. So you can write a prom that uses the uGFX library to draw things on the screen, reads user input etc.. without knowing what hardware you are using (in theorie). To make the program work with your specific hardware setup, a gdisp driver must be written for your hardware setup. All existing drivers can be found in drivers/gdisp (take a look there to get an idea). The display driver file is called gdisp_lld_xxx.c So in order to make uGFX work with your EPaper display you need to write a driver for it. An exa
  11. From your screenshots it seems that you included all the sources correctly. Not only the uGFX folder has to be included under "Paths and Sybmols", but also your gdisp driver folder. In your case you need to add the drivers/gdisp/ILI9341 folder to your "Paths and Symbols". This should fix the error.
  12. I would start by increasing the stack size of your intialization thread: osThreadDef(defaultTask, StartDefaultTask, osPriorityNormal, 0, 128); 128bytes might not be enough to initialize everything.
  13. This is most likely caused because you don't have any file that implements the memory system calls. These calls are system dependent and normally the manufacturer of your platform provides these functions. You can also let µGFX handle memory management by setting GFX_OS_HEAP_SIZE to a non zero value.
  14. cpu20

    Completely stuck

    In your board file, you drive the chip select pin of your display. You should not keep that line constantly low or anything because that can lead to unwanted situations. The chip select line should be lowered and raised in the acquire and release bus functions. Other than that I have no idea if the ST7735 driver is functional. Last time it came up there were some issues with it.
  • Create New...