Quality RTOS & Embedded Software

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


Integrating freeRTOS to an existing project

Posted by bou6 on July 16, 2016

i am attempting to integrate freeRTOS to my application that run on AT32UC3A0512. I downloaded a freeRTOS project example for EVK1100 (it Supports the AT32UC3A) and try to include the kernel source files, so my application hierarchy looks like :

~~~ src |ASF |APP_FOLDER |freertos |freertos-7.0.0 |source ~~~

I solved some compilation errors due to unrecognized paths and remove exception.s from freertos folder since i have this file already under ASFavr32driversintc, in this stage the project compiles.

The strange thing is that with the kernel folder included in the project, the twimasterread cause blocking, notice that i don't make any call to the kernel functions nor include it's header in any of my project files, the kernel folder is just present physically.

However if i exclude the kernel folder from the project all works well.

The question is : is there any redefinition (clocks, pins,..) in the kernel sources that lead to this behaviour, i really can't see the problem, so if someone have any suggestion don't hesitate to comment.

Thanks in advance

Integrating freeRTOS to an existing project

Posted by bou6 on July 16, 2016

In port.c i come to the function initstartup in the comment it's said that its " Low-level initialization routine called during startup, before the main function.", could this function be the source of the problem ? , is there other functions that i should pay attention at ?

Integrating freeRTOS to an existing project

Posted by heinbali01 on July 16, 2016

What do you mean with these :

~~~~ freertos freertos-7.0.0 ~~~~

What is in that first directory?

It would also be interesting to see the source code of that twi_master_read, to know if it is influenced by port.h

Integrating freeRTOS to an existing project

Posted by bou6 on July 17, 2016

Thanks for the feedback, i edited the question, freertos-7.0.0 is under the folder freertos, ASF stand for Atmel Software Framework it contains drivers for the peripherals, twi_master_read is a blocking read operation, it waits a flag twi_busy to become false in order to unblock, twi_busy becomes false using twi interruption, what i come to conclude today is that including freeRTOS folder has changed the interrupt controller behaviour. Even the timer interrupt are not working due to the inclusion of this folder.

Integrating freeRTOS to an existing project

Posted by bou6 on July 17, 2016

After passing few hours debugging i find that the interrupt controller behaviour is changed due to calls to the function sprintf, before calling sprintf the timer interrupts works well and only after calling sprintf function the timer ISR becomes unreacheable, so sprintf + freeRTOS folder in my project causes problems i don't why ?

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

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

Latest News

NXP tweet showing LPC5500 (ARMv8-M Cortex-M33) running FreeRTOS.

Version 10.1.1 of the FreeRTOS kernel is available for immediate download. MIT licensed.

View a recording of the "OTA Update Security and Reliability" webinar, presented by TI and AWS.


FreeRTOS and other embedded software careers at AWS.

FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

Espressif ESP32

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

Xilinx Microblaze and Zynq partner