Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem TCP & FAT




Loading

Simplicity Studio and GCC

Posted by ndunello on March 29, 2016

I downloaded the file 160318FreeRTOSSiLabs.zip and imported the project in Simplicity Studio IDE v3. First I had to correct the path of FREERTOS_ROOT variable in project settings.

When I build the project I get the following error: Field 'em23VregFullEn' could not be resolved in /RTOSDemo/SiLabsSource/emlib/ememu.c line 756 Semantic Error 'EMUEM23InitTypeDef' has no member named 'em23VregFullEn in /RTOSDemo/SiLabsSource/emlibememu.c line 756 C/C++ Problem

How to fix it?


Simplicity Studio and GCC

Posted by rtel on March 29, 2016

First I had to correct the path of FREERTOS_ROOT variable in project settings.

That should not be necessary - the variable is set to "${PROJECT_LOC}......", which is a path relative to the project directory, so unless you changed the directory structure, or didn't follow the import instructions provided on the website exactly, it should just work.

What did you need to change it to?

When I build the project I get the following error: Field 'em23VregFullEn' could not be resolved in /RTOSDemo/SiLabsSource/emlib/ememu.c line 756 Semantic Error 'EMUEM23InitTypeDef' has no member named 'em23VregFullEn in /RTOSDemo/SiLabsSource/emlibememu.c line 756 C/C++ Problem

What happens if you right click on the 'EMUEM23InitTypeDef' type in the source code (the location of which is part of the error message), then select "Open Declaration" from the pop up menu. In my set up I'm taken to the following definition:

~~~~ typedef struct { bool em23VregFullEn;/**< Enable full VREG drive strength in EM2/3 */ } EMUEM23InitTypeDef; ~~~~

which, as you see, does have a em23VregFullEn variable.

Note, the header file this extract is taken from is part of the Simplicity studio directory structure, it is not part of the FreeRTOS code. Have you installed support for the target you are trying to use in Simplicity Studio (either Giant or Pearl Gecko, I don't think you said which you were using). If not, that might be your problem.


Simplicity Studio and GCC

Posted by rtel on March 29, 2016

I have just updated the build instructions to include the following as the first step:

"Ensure you have Giant and/or Pearl Gecko starter kit support included in your Simplicity Studio installation, otherwise the project will fail to build. Support for additional EFM32 devices and starter kits can be installed using the Simplicity Studio menus."


Simplicity Studio and GCC

Posted by ndunello on March 29, 2016

Unfortunately I have the EFM32 STK3600 board.

I unpacked the 160318FreeRTOSSiLabs.zip file in the "C:UsersAntonelloSimplicityStudio". Attached images show list the problems I have.

I corrected the FREERTOS_ROOT variable to point to "C:UsersAntonelloSimplicityStudioFreeRTOSSiLabs".

The declaration of 'EMU_EM23 TypeDef Init' is the following:

~~~~ /** Energy Mode 2 and 3 initialization structure */ typedef struct { EMUEM23VregModeTypeDef em23Vreg; /**< Enable VREG in EM2/3 */ } EMUEM23InitTypeDef; ~~~~

What do you mean by ? > Support for additional EFM32 devices and starter kits can be installed using the Simplicity Studio menus.


Simplicity Studio and GCC

Posted by rtel on March 29, 2016

Please ensure the following the instructions on importing the project exactly - I see from the screen shot you have "copy projects into workspace" checked, which it should not be.


Simplicity Studio and GCC

Posted by ndunello on March 29, 2016

Ok, this resolve FREERTOSROOT variable problem! Remains the problem with EMUEM23Init, probably because I have not the STK3700 connected to the PC.

Be possible to compile For the STK3600? If yes, what are the steps to follow?


Simplicity Studio and GCC

Posted by rtel on March 29, 2016

Be possible to compile For the STK3600? If yes, what are the steps to follow?

That is becoming a tools issue, rather than a FreeRTOS support issue, but if the chip on the STK3600 is the same as that on the starter kit then I would guess the only change needed would be the pin used to toggle the LED.


Simplicity Studio and GCC

Posted by ndunello on March 30, 2016

Starting from the example for the STK3700 board I created a demo for STK3600 board. I attached the project that mast be unpacked in the folder "FreeRTOS_SiLabsfreeRTOSDemo".

I see the LED0 flashing.

It's can insert a kind of "task table" in Simplicity Studio ?


Simplicity Studio and GCC

Posted by rtel on March 30, 2016

If Simplicity Studio uses GDB then you should be able to use the Eclipse StateViewer plug-in available from the http://www.highintegritysystems.com website.


[ Back to the top ]    [ About FreeRTOS ]    [ Sitemap ]    [ ]




Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Latest News

FreeRTOS kernel V10 is available for immediate download. Now MIT licensed.


FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers

STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS