Jump to content

Sinalco94

Members
  • Posts

    17
  • Joined

  • Last visited

Posts posted by Sinalco94

  1. Ok, Thanks.

    I could solve the build Error. I did the build clean before, but that didn't helped. So I did a full chip eraese. That worked.

    For the stacksize problem: Do I understand this right that I have to add the options Chibios_process_stacksize and exceptions_stacksize to my makefile and the option 'LDFLAGS' should be empty?

  2. Hello,

    I have got a question. My Project based on ugfx with ChibiOS runs on an STM32F407VG with the Embest Base Board. I was able to make it run. But now (I didn't changed anything in my Project) it returns an Error when I compile it with ChibiStudio. 

    It returns following error:

    .build/obj/GFXLIB/src/gfile/gfile.o:(.data+0x0): undefined reference to `FsROMVMT'

    I couldn't find anything on google about this error. So maybe someone can help me? 

    Another question is about my Linker Options:

    arm-none-eabi-gcc -Wl,--defsym=__process_stack_size__=0x0F00 -Wl,--defsym=__main_stack_size__=0x0F00 -Wl,--defsym=__process_stack_size__=0x400 -Wl,--defsym=__main_stack_size__=0x400 -mcpu=cortex-m4 -falign-functions=16 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fsingle-precision-constant -nostartfiles -mthumb -T../../chibios26/os/ports/GCC/ARMCMx/STM32F4xx/ld/STM32F407xG.ld -lm .build/obj/fakethumbfile.o -o .build/PowerSupply.elf
    .

    The question here is? Why is the process and main stack size declared two times?

    I declared it in my make file with 0x0F00, you can see it below

    #Makefile für UGFX Embest-STM32-DMSTF4BB
    
    
    #------------------------------------------------------------------------------
    # Haupteinstellungen
    #
    
    # Einstellungen
    	# Unter $(GFXLIB)/tools/gmake_scripts/readme.txt Liste der Variablen
    	OPT_OS					= chibios
    	OPT_THUMB				= yes
    	OPT_LINK_OPTIMIZE		= no
    	OPT_CPU					= stm32m4
    
    # uGFX Einstellungen
    	# Unter $(GFXLIB)/tools/gmake_scripts/library_ugfx.mk Liste der Variablen
    	GFXLIB					= ../../ugfx
    	GFXBOARD				= Embest-STM32-DMSTF4BB
    	GFXDEMO					= modules/gdisp/basics
    
    # ChibiOS Einstellungen
    ifeq ($(OPT_OS),chibios)
    	# Unter $(GFXLIB)/tools/gmake_scripts/os_chibios_x.mk Liste der Variablen
    	CHIBIOS				= ../../chibios26
    	CHIBIOS_VERSION		= 2
    	CHIBIOS_BOARD		=
    	CHIBIOS_PLATFORM	= STM32F4xx
    	CHIBIOS_PORT		= GCC/ARMCMx/STM32F4xx
    	CHIBIOS_LDSCRIPT	= STM32F407xG.ld
    endif
    
    ##############################################################################################
    # Weiteres für's Projekt
    #
    
    ARCH     = arm-none-eabi-
    SRCFLAGS = -ggdb -O2
    CFLAGS   =
    CXXFLAGS = -fno-rtti
    ASFLAGS  =
    LDFLAGS  = -Wl,--defsym=__process_stack_size__=0x0F00 -Wl,--defsym=__main_stack_size__=0x0F00
    SRC      =
    OBJS     =
    DEFS     =
    LIBS     =
    INCPATH  = 
    LIBPATH  =
    LDSCRIPT =
    
    #------------------------------------------------------------------------------
    # Includes immer am Ende einbinden
    #
    
    include $(GFXLIB)/tools/gmake_scripts/library_ugfx.mk
    include $(GFXLIB)/tools/gmake_scripts/os_$(OPT_OS).mk
    include $(GFXLIB)/tools/gmake_scripts/compiler_gcc.mk
    # *** Ende ***

    I would be very happy if anyone can help me :D

    Thank you.

  3. ok, i tried 0x1000 for stack

    file. That didn't worked.

    Here is my gfxconf file:

    /*
     * Copyright (c) 2012, 2013, Joel Bodenmann aka Tectu <joel@unormal.org>
     * Copyright (c) 2012, 2013, Andrew Hannam aka inmarket
     */
    
    #ifndef _GFXCONF_H
    #define _GFXCONF_H
    
    /* The operating system to use. One of these must be defined - preferably in your Makefile */
    //#define GFX_USE_OS_CHIBIOS	FALSE
    //#define GFX_USE_OS_WIN32		FALSE
    //#define GFX_USE_OS_LINUX		FALSE
    //#define GFX_USE_OS_OSX		FALSE
    
    /* GFX sub-systems to turn on */
    #define GFX_USE_GDISP			TRUE
    #define GFX_USE_GWIN			TRUE
    #define GFX_USE_GINPUT			TRUE
    #define GFX_USE_GEVENT			TRUE
    #define GFX_USE_GTIMER			TRUE
    #define GFX_USE_GQUEUE			TRUE
    
    /* Features for the GDISP sub-system. */
    #define GDISP_NEED_VALIDATION		TRUE
    #define GDISP_NEED_CLIP				TRUE
    #define GDISP_NEED_IMAGE			TRUE
    #define GDISP_STARTUP_COLOR			HTML2COLOR(0xC0C0C0)
    #define GDISP_NEED_CIRCLE		TRUE
    #define GDISP_NEED_TEXT			TRUE
    #define GDISP_NEED_MULTITHREAD	TRUE
    
    /* GDISP image decoders */
    //#define GDISP_NEED_IMAGE_NATIVE		TRUE
    //#define GDISP_NEED_IMAGE_GIF		TRUE
    #define GDISP_NEED_IMAGE_BMP		TRUE
    //#define GDISP_NEED_IMAGE_JPG		TRUE
    //#define GDISP_NEED_IMAGE_PNG		TRUE
    #define GFX_USE_GFILE				TRUE
    #define GFILE_NEED_ROMFS			TRUE
    //#define GFILE_NEED_NATIVEFS			TRUE
    
    /* GDISP fonts to include */
    #define GDISP_INCLUDE_FONT_UI2	TRUE
    
    /* Features for the GWIN subsystem. */
    #define GWIN_NEED_WINDOWMANAGER	TRUE
    #define GWIN_NEED_WIDGET		TRUE
    #define GWIN_NEED_SLIDER		TRUE
    #define GWIN_NEED_CONSOLE		TRUE
    
    /* Features for the GINPUT subsystem. */
    #define GINPUT_NEED_MOUSE		TRUE
    
    /* Features for the GQUEUE subsystem. */
    #define GQUEUE_NEED_ASYNC		TRUE
    
    #endif /* _GFXCONF_H */

    and my makefile:

    #Makefile für UGFX Embest-STM32-DMSTF4BB
    
    
    #------------------------------------------------------------------------------
    # Haupteinstellungen
    #
    
    # Einstellungen
    	# Unter $(GFXLIB)/tools/gmake_scripts/readme.txt Liste der Variablen
    	OPT_OS					= chibios
    	OPT_THUMB				= yes
    	OPT_LINK_OPTIMIZE		= no
    	OPT_CPU					= stm32m4
    
    # uGFX Einstellungen
    	# Unter $(GFXLIB)/tools/gmake_scripts/library_ugfx.mk Liste der Variablen
    	GFXLIB					= ../../ugfx
    	GFXBOARD				= Embest-STM32-DMSTF4BB
    	GFXDEMO					= modules/gdisp/basics
    
    # ChibiOS Einstellungen
    ifeq ($(OPT_OS),chibios)
    	# Unter $(GFXLIB)/tools/gmake_scripts/os_chibios_x.mk Liste der Variablen
    	CHIBIOS				= ../../chibios26
    	CHIBIOS_VERSION		= 2
    	CHIBIOS_BOARD		=
    	CHIBIOS_PLATFORM	= STM32F4xx
    	CHIBIOS_PORT		= GCC/ARMCMx/STM32F4xx
    	CHIBIOS_LDSCRIPT	= STM32F407xG.ld
    endif
    
    ##############################################################################################
    # Weiteres für's Projekt
    #
    
    ARCH     = arm-none-eabi-
    SRCFLAGS = -ggdb -O0
    CFLAGS   =
    CXXFLAGS = -fno-rtti
    ASFLAGS  =
    LDFLAGS  = -Wl,--defsym=__process_stack_size__=0x1000 -Wl,--defsym=__main_stack_size__=0x1000
    
    SRC      =
    OBJS     =
    DEFS     =
    LIBS     =
    INCPATH  = 
    LIBPATH  =
    LDSCRIPT =
    
    #------------------------------------------------------------------------------
    # Includes immer am Ende einbinden
    #
    
    include $(GFXLIB)/tools/gmake_scripts/library_ugfx.mk
    include $(GFXLIB)/tools/gmake_scripts/os_$(OPT_OS).mk
    include $(GFXLIB)/tools/gmake_scripts/compiler_gcc.mk
    # *** Ende ***

     

    The last line that was executed in the gfx files is: 

    i2cMasterTransmitTimeout(&I2CD1, STMPE811_ADDR, txbuf, 2, 0, 0, MS2ST(STMPE811_TIMEOUT));

    in the "gmouse_lld_STMPE811_board.h"

     

    Thanks for the help :)

  4. I just tested an existing example. The Debugger also stops in the _ginputInit() routine while mouse Initialization.

    void SVCallVector(void) {
      struct extctx *ctxp;
    
    #if CORTEX_USE_FPU
      /* Enforcing unstacking of the FP part of the context.*/
      SCB_FPCCR &= ~FPCCR_LSPACT;
    #endif
    
      /* Current PSP value.*/
      asm volatile ("mrs     %0, PSP" : "=r" (ctxp) : : "memory");
    
      /* Discarding the current exception context and positioning the stack to
         point to the real one.*/
      ctxp++;
    
      /* Restoring real position of the original stack frame.*/
      asm volatile ("msr     PSP, %0" : : "r" (ctxp) : "memory");
      port_unlock_from_isr();
    }

    The Debugger Stops after port_unlock_from_isr(); in the SVCalVector() Function. The Program doesn't jump to a hard fault handler.

    The actual stack size is:

    LDFLAGS  = -Wl,--defsym=__process_stack_size__=0x0800 -Wl,--defsym=__main_stack_size__=0x0800

    Do I have to change both, main_stack_size and process_stack_size. Is the stack size big enough?
     

  5. Sorry. I use the Embest-Base Board with the Touchscreen. I included all the board files and tried to implement the demo /gdisp/basics. Everything went fine. The dispaly worked. But then I tried to implement the Ginput. So I added to the gfxconf.h:

    ///////////////////////////////////////////////////////////////////////////
    // GINPUT                                                                //
    ///////////////////////////////////////////////////////////////////////////
    #define GFX_USE_GINPUT                               TRUE
    #define GINPUT_NEED_MOUSE                            TRUE

    Here is the full gfxconf.h:
     

    #ifndef _GFXCONF_H
    #define _GFXCONF_H
    
    /* The operating system to use. One of these must be defined - preferably in your Makefile */
    //#define GFX_USE_OS_CHIBIOS	FALSE
    //#define GFX_USE_OS_WIN32		FALSE
    //#define GFX_USE_OS_LINUX		FALSE
    //#define GFX_USE_OS_OSX		FALSE
    
    /* GFX sub-systems to turn on *
    #define GFX_USE_GDISP			TRUE
    
    /* Features for the GDISP sub-system. */
    #define GDISP_NEED_VALIDATION	TRUE
    #define GDISP_NEED_CLIP			TRUE
    
    ///////////////////////////////////////////////////////////////////////////
    // GINPUT                                                                //
    ///////////////////////////////////////////////////////////////////////////
    #define GFX_USE_GINPUT                               TRUE
    #define GINPUT_NEED_MOUSE                            TRUE
    
    #endif /* _GFXCONF_H */

    When I set GFX_USE_GINPUT and GINPUT_NEED_MOUSE to FALSE everything works again.

    But with both on TRUE the Debugger stops after port_unlock_from_isr(); in the "chcore_v7m.c" file.

    I didn't changed anything at the main.c from the gdisp/basics Demo.

    Do you need more Information?

  6. Hello everyone,

    I have got a problem. I just tried to implement ginput. There are no errors from the compiler, but the debugger always stops in the gfxinit() routine. I debbuged everything and got to the point where the debugger actual stops. 
    It stops always after: port_unlock_from_isr(); in the "chcore_v7m.c" file.

     

    I don't know why?
    Can anyone help me please?

     

  7. There is no hard-fault, it just stops there and i can't move to the next line.

    I tried to run threads and threads_advanced in the gos directory.

    Both return an error, here is the output for threads:
     

    make -j4 all 
    .
    Compiling ../../ugfx/demos/modules/gos/threads/main.c
    C Compiler Options....
    arm-none-eabi-gcc -c -ggdb -O0 -mcpu=cortex-m4 -falign-functions=16 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fsingle-precision-constant -fomit-frame-pointer -Wall -Wextra -Wstrict-prototypes -fverbose-asm -MMD -MP -MF .build/dep/fakethumbfile.o.d -I. -I../../ugfx -I../../ugfx/3rdparty/tinygl-0.4-ugfx/include -I../../ugfx/boards/base/Embest-STM32-DMSTF4BB -I../../ugfx/drivers/gdisp/SSD2119 -I../../ugfx/demos/modules/gos/threads -I../../chibios26/os/ports/common/ARMCMx/CMSIS/include -I../../chibios26/os/ports/common/ARMCMx -I../../chibios26/os/ports/GCC/ARMCMx -I../../chibios26/os/ports/GCC/ARMCMx/STM32F4xx -I../../chibios26/os/kernel/include -I../../chibios26/os/hal/include -I../../chibios26/os/hal/platforms/STM32F4xx -I../../chibios26/os/hal/platforms/STM32 -I../../chibios26/os/hal/platforms/STM32/GPIOv2 -I../../chibios26/os/hal/platforms/STM32/I2Cv1 -I../../chibios26/os/hal/platforms/STM32/OTGv1 -I../../chibios26/os/hal/platforms/STM32/RTCv2 -I../../chibios26/os/hal/platforms/STM32/SPIv1 -I../../chibios26/os/hal/platforms/STM32/TIMv1 -I../../chibios26/os/hal/platforms/STM32/USARTv1 -DGFX_USE_CHIBIOS=TRUE -DGFX_USE_OS_CHIBIOS=TRUE -DCORTEX_USE_FPU=TRUE -DUSE_FPU=hard -DTHUMB_PRESENT -DTHUMB_NO_INTERWORKING -mthumb -DTHUMB fakethumbfile.c -o .build/obj/fakethumbfile.o
    .
    Linker Options........
    In file included from ../../chibios26/os/kernel/include/ch.h:110:0,
                     from ../../ugfx/src/gos/gos_chibios.h:18,
                     from ../../ugfx/src/gos/gos.h:483,
                     from ../../ugfx/gfx.h:200,
                     from ../../ugfx/demos/modules/gos/threads/main.c:1:
    ./chconf.h:531:0: warning: "CORTEX_USE_FPU" redefined
     #define CORTEX_USE_FPU                  FALSE
     ^
    <command-line>:0:0: note: this is the location of the previous definition
    arm-none-eabi-gcc -Wl,--defsym=__process_stack_size__=0x0800 -Wl,--defsym=__main_stack_size__=0x0800 -Wl,--defsym=__process_stack_size__=0x400 -Wl,--defsym=__main_stack_size__=0x400 -mcpu=cortex-m4 -falign-functions=16 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fsingle-precision-constant -nostartfiles -mthumb -T../../chibios26/os/ports/GCC/ARMCMx/STM32F4xx/ld/STM32F407xG.ld -lm .build/obj/fakethumbfile.o -o .build/Embest.elf
    .
    ../../ugfx/demos/modules/gos/threads/main.c:13:3: warning: #warning "You must alter this demo to define a DEBUGWRITE macro for your platform." [-Wcpp]
      #warning "You must alter this demo to define a DEBUGWRITE macro for your platform."
       ^
    ../../ugfx/demos/modules/gos/threads/main.c:14:3: warning: #warning "Be careful of using C library functions as they sometimes crash if they are not expecting stack changes (if possible use a multi-thread aware C library)" [-Wcpp]
      #warning "Be careful of using C library functions as they sometimes crash if they are not expecting stack changes (if possible use a multi-thread aware C library)"
       ^
    ../../ugfx/demos/modules/gos/threads/main.c:15:3: warning: #warning "You might flash LED's instead if that is better for your platform." [-Wcpp]
      #warning "You might flash LED's instead if that is better for your platform."
       ^
    ../../ugfx/demos/modules/gos/threads/main.c:16:3: error: #error "--"
      #error "--"
       ^
    ../../ugfx/demos/modules/gos/threads/main.c: In function 'heartbeat1':
    ../../ugfx/demos/modules/gos/threads/main.c:24:6: warning: implicit declaration of function 'DEBUGWRITE' [-Wimplicit-function-declaration]
          DEBUGWRITE("thread 1\n");
          ^
    make: *** [.build/obj/GFXLIB/demos/modules/gos/threads/main.o] Error 1

    and here for threads_advanced:

    make -j4 all 
    .
    C Compiler Options....
    Compiling ../../ugfx/demos/modules/gos/threads_advanced/main.c
    arm-none-eabi-gcc -c -ggdb -O0 -mcpu=cortex-m4 -falign-functions=16 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fsingle-precision-constant -fomit-frame-pointer -Wall -Wextra -Wstrict-prototypes -fverbose-asm -MMD -MP -MF .build/dep/fakethumbfile.o.d -I. -I../../ugfx -I../../ugfx/3rdparty/tinygl-0.4-ugfx/include -I../../ugfx/boards/base/Embest-STM32-DMSTF4BB -I../../ugfx/drivers/gdisp/SSD2119 -I../../ugfx/demos/modules/gos/threads_advanced -I../../chibios26/os/ports/common/ARMCMx/CMSIS/include -I../../chibios26/os/ports/common/ARMCMx -I../../chibios26/os/ports/GCC/ARMCMx -I../../chibios26/os/ports/GCC/ARMCMx/STM32F4xx -I../../chibios26/os/kernel/include -I../../chibios26/os/hal/include -I../../chibios26/os/hal/platforms/STM32F4xx -I../../chibios26/os/hal/platforms/STM32 -I../../chibios26/os/hal/platforms/STM32/GPIOv2 -I../../chibios26/os/hal/platforms/STM32/I2Cv1 -I../../chibios26/os/hal/platforms/STM32/OTGv1 -I../../chibios26/os/hal/platforms/STM32/RTCv2 -I../../chibios26/os/hal/platforms/STM32/SPIv1 -I../../chibios26/os/hal/platforms/STM32/TIMv1 -I../../chibios26/os/hal/platforms/STM32/USARTv1 -DGFX_USE_CHIBIOS=TRUE -DGFX_USE_OS_CHIBIOS=TRUE -DCORTEX_USE_FPU=TRUE -DUSE_FPU=hard -DTHUMB_PRESENT -DTHUMB_NO_INTERWORKING -mthumb -DTHUMB fakethumbfile.c -o .build/obj/fakethumbfile.o
    .
    Linker Options........
    arm-none-eabi-gcc -Wl,--defsym=__process_stack_size__=0x0800 -Wl,--defsym=__main_stack_size__=0x0800 -Wl,--defsym=__process_stack_size__=0x400 -Wl,--defsym=__main_stack_size__=0x400 -mcpu=cortex-m4 -falign-functions=16 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fsingle-precision-constant -nostartfiles -mthumb -T../../chibios26/os/ports/GCC/ARMCMx/STM32F4xx/ld/STM32F407xG.ld -lm .build/obj/fakethumbfile.o -o .build/Embest.elf
    In file included from ../../chibios26/os/kernel/include/ch.h:110:0,
                     from ../../ugfx/src/gos/gos_chibios.h:18,
                     from ../../ugfx/src/gos/gos.h:483,
                     from ../../ugfx/gfx.h:200,
                     from ../../ugfx/demos/modules/gos/threads_advanced/main.c:41:
    ./chconf.h:531:0: warning: "CORTEX_USE_FPU" redefined
     #define CORTEX_USE_FPU                  FALSE
     ^
    <command-line>:0:0: note: this is the location of the previous definition
    .
    ../../ugfx/demos/modules/gos/threads_advanced/main.c:56:3: warning: #warning "You must alter this demo to define a DEBUGWRITE macro for your platform." [-Wcpp]
      #warning "You must alter this demo to define a DEBUGWRITE macro for your platform."
       ^
    ../../ugfx/demos/modules/gos/threads_advanced/main.c:57:3: warning: #warning "Be careful of using C library functions as they sometimes crash if they are not expecting stack changes (if possible use a multi-thread aware C library)" [-Wcpp]
      #warning "Be careful of using C library functions as they sometimes crash if they are not expecting stack changes (if possible use a multi-thread aware C library)"
       ^
    ../../ugfx/demos/modules/gos/threads_advanced/main.c:58:3: warning: #warning "You might flash LED's instead if that is better for your platform." [-Wcpp]
      #warning "You might flash LED's instead if that is better for your platform."
       ^
    ../../ugfx/demos/modules/gos/threads_advanced/main.c:59:3: error: #error "--"
      #error "--"
       ^
    ../../ugfx/demos/modules/gos/threads_advanced/main.c: In function 'Thread_function':
    ../../ugfx/demos/modules/gos/threads_advanced/main.c:73:3: warning: implicit declaration of function 'DEBUGWRITE' [-Wimplicit-function-declaration]
       DEBUGWRITE("Message from Thread\n");
       ^
    make: *** [.build/obj/GFXLIB/demos/modules/gos/threads_advanced/main.o] Error 1

     

  8. I tried the first tip I changed the stack_size to 0x0800, but now I got the info while debugging "Unable to match requested speed 8000 kHz, using 4000 kHz" So I changed the file back to default and I still get the message "Unable to match requested speed 8000 kHz, using 4000 kHz". 

    The Debugger alwas stops at "_gdispInit();".

    As I use ChibiOS V2 the first advice should be the right one. 
    But it still doesn't work.

     

     

  9. Update: I was able to fix the problem. I just added #include "board.c" in the "hal.c" file.
    Now everything compiles without any errors.

    But now I have got another Problem. After Compiling and Debugging the LCD turns white.
    I used the gfxdemo:

    GFXDEMO					= modules/gdisp/basics

     

    when i look at the main.c file I see that there should be something else instead of the white LCD Screen? 
    Do i miss something? Do I have to include the STMPE811 Controller Files and the SSD2119?

  10. I have been on holidays the last few weeks so I couldn't work on my project until now.
    I added the board.c and board.h file form \boards\base\Embest-STM32-DMSTF4BB\example_chibios_2.x to the compilation tree but it still doesn't work. How do I add it to the include path?

    My Compilation tree looks like this:

    Unbenannt.PNG.0fd838cec13724a950e68a4ef402e641.PNG

     

    I couldn't find any solution to fix this problem. Could you please help me?

  11. Sorry I couldn't make it the last few days.

    Here is the Complete Output.

     

    09:11:33 **** Incremental Build of configuration Default for project EmbestLCD ****
    make -j4 all 
    .
    C Compiler Options....
    Linking .build/EmbestLCD.elf
    arm-none-eabi-gcc -c -ggdb -O0 -mcpu=cortex-m4 -falign-functions=16 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fsingle-precision-constant -fomit-frame-pointer -Wall -Wextra -Wstrict-prototypes -fverbose-asm -MMD -MP -MF .build/dep/fakethumbfile.o.d -I. -I../../ugfx -I../../ugfx/3rdparty/tinygl-0.4-ugfx/include -I../../ugfx/boards/base/Embest-STM32-DMSTF4BB -I../../ugfx/drivers/gdisp/SSD2119 -I../../ugfx/demos/modules/gdisp/basics -I../../chibios26/os/ports/common/ARMCMx/CMSIS/include -I../../chibios26/os/ports/common/ARMCMx -I../../chibios26/os/ports/GCC/ARMCMx -I../../chibios26/os/ports/GCC/ARMCMx/STM32F4xx -I../../chibios26/os/kernel/include -I../../chibios26/os/hal/include -I../../chibios26/os/hal/platforms/STM32F4xx -I../../chibios26/os/hal/platforms/STM32 -I../../chibios26/os/hal/platforms/STM32/GPIOv2 -I../../chibios26/os/hal/platforms/STM32/I2Cv1 -I../../chibios26/os/hal/platforms/STM32/OTGv1 -I../../chibios26/os/hal/platforms/STM32/RTCv2 -I../../chibios26/os/hal/platforms/STM32/SPIv1 -I../../chibios26/os/hal/platforms/STM32/TIMv1 -I../../chibios26/os/hal/platforms/STM32/USARTv1 -DGFX_USE_CHIBIOS=TRUE -DGFX_USE_OS_CHIBIOS=TRUE -DCORTEX_USE_FPU=TRUE -DUSE_FPU=hard -DTHUMB_PRESENT -DTHUMB_NO_INTERWORKING -mthumb -DTHUMB fakethumbfile.c -o .build/obj/fakethumbfile.o
    .
    Linker Options........
    arm-none-eabi-gcc -Wl,--defsym=__process_stack_size__=0x400 -Wl,--defsym=__main_stack_size__=0x400 -mcpu=cortex-m4 -falign-functions=16 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -fsingle-precision-constant -nostartfiles -mthumb -T../../chibios26/os/ports/GCC/ARMCMx/STM32F4xx/ld/STM32F407xG.ld -lm .build/obj/fakethumbfile.o -o .build/EmbestLCD.elf
    .
    .build/obj/CHIBIOS/os/hal/src/hal.o: In function `halInit':
    C:\ChibiStudio\workspace26\EmbestLCD/../../chibios26/os/hal/src/hal.c:127: undefined reference to `boardInit'
    C:\ChibiStudio\workspace26\EmbestLCD/../../chibios26/os/hal/src/hal.c:128: undefined reference to `pal_default_config'
    collect2.exe: error: ld returned 1 exit status
    make: *** [.build/EmbestLCD.elf] Error 1
    
    09:11:39 Build Finished (took 6s.747ms)

    -> Yes I am sure that I use ChibiOS 2.6 but I don't know exactly what you mean with enabling all corresponding components. I didn't change anything in the halconfig.h

  12. Hello everyone,

    I have got a problem. I am trying to setup a new Chibistudio Project with integrated ugfx for the Embest STM32F4 Discovery Base Board LCD. 
    I followed the tutorial for "Using Chibistudio" on the Ugfx Website https://wiki.ugfx.io/index.php/Using_ChibiStudio

    I just took the Embest Board files instead of the Mikromedia...

    Now i tried to compile everything and I get two Errors:

    undefined reference to `boardInit' '
    undefined reference to 'pal_default_config'

    I found out that there is a missing link in the makefile to the boardfile but I couldn't find where it is missing.
    Here is my makefile:

    # Possible Targets:	all clean Debug cleanDebug Release cleanRelease
    
    ##############################################################################################
    # Settings
    #
    
    # General settings
    	# See $(GFXLIB)/tools/gmake_scripts/readme.txt for the list of variables
    	OPT_OS					= chibios
    	OPT_THUMB				= yes
    	OPT_LINK_OPTIMIZE		= no
    	OPT_CPU					= stm32m4
    
    # uGFX settings
    	# See $(GFXLIB)/tools/gmake_scripts/library_ugfx.mk for the list of variables
    	GFXLIB					= ../../ugfx
    	GFXBOARD				= Embest-STM32-DMSTF4BB
    	GFXDEMO					= modules/gdisp/basics
    
    # ChibiOS settings
    ifeq ($(OPT_OS),chibios)
    	# See $(GFXLIB)/tools/gmake_scripts/os_chibios_x.mk for the list of variables
    	CHIBIOS				= ../../chibios26
    	CHIBIOS_VERSION		= 2
    	CHIBIOS_BOARD		=
    	CHIBIOS_PLATFORM	= STM32F4xx
    	CHIBIOS_PORT		= GCC/ARMCMx/STM32F4xx
    	CHIBIOS_LDSCRIPT	= STM32F407xG.ld
    endif
    
    ##############################################################################################
    # Set these for your project
    #
    
    ARCH     = arm-none-eabi-
    SRCFLAGS = -ggdb -O0
    CFLAGS   =
    CXXFLAGS = -fno-rtti
    ASFLAGS  =
    LDFLAGS  =
    
    SRC      =
    OBJS     =
    DEFS     =
    LIBS     =
    INCPATH  =
    LIBPATH  =
    LDSCRIPT =
    
    ##############################################################################################
    # These should be at the end
    #
    
    include $(GFXLIB)/tools/gmake_scripts/library_ugfx.mk
    include $(GFXLIB)/tools/gmake_scripts/os_$(OPT_OS).mk
    include $(GFXLIB)/tools/gmake_scripts/compiler_gcc.mk
    # *** EOF ***


    Can anyone help me with this?

    Thank you.

×
×
  • Create New...