Quality RTOS & Embedded Software

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


In Application programming with freeRTOS

Posted by bones23 on March 5, 2008
I am using an str912 and am trying to have stmicro's in-application programming with uart load freeRTOS. The example binarys provided with IAP can load and run just fine but the binary I create with the freeRTOS project does not run. Has anybody gotten this to work for them? If so what changes did you need to make to the freeRTOS project?

RE: In Application programming with freeRTOS

Posted by Richard on March 5, 2008
I have successfully used bootloaders on Atmel parts and don't recall anything special that needed to be done. When you start the application through the bootloader, does main() get called from Supervisor mode? Also, how are the interrupt vectors handled?


RE: In Application programming with freeRTOS

Posted by bones23 on March 5, 2008
Yes the main does get called from supervisor mode. According to the in-application programmer documentation you should not have to do anything special with interrupts because bank0 is software remapped to address 0x00.

RE: In Application programming with freeRTOS

Posted by Cristina Robles on March 6, 2008
I have the same problem with FreeRtos. You cannot depure it because it crashes. I guess the solution is to make just one task and see if it works.

RE: In Application programming with freeRTOS

Posted by bones23 on April 11, 2008
I have tried commenting out everything from the freeRTOS main function and popped in my own led flashing program. This worked with the stmicro bootloader. Adding back the freeRTOS stuff I found that the program stops working when I add back prvSetupHardware function. I thought this might be because of the FMI_BankRemapConfig call inside of the prvSetupHardware function but commenting that out did not fix the problem. Does anybody have any ideas about what could be causing this?

RE: In Application programming with freeRTOS

Posted by arm_user on April 18, 2008
Hello Everybody.

I have had the same problem like you.

I fixed it with these 4 steps:

- cut the PLL configuration code lines in prvSetupHardware from the main application in BANK 0
and paste it into a start sequence in the bootloader (main() of IAP) in BANK 1.

- also cut and paste the FMI_Config(xx) command in the same way.

- The FMI configuration (the lines with the 0x540000XX Registers)
of FREERTOS init (asssembler) file must change (or maybe could deleted?) to the right size and address

- Comment or delete the FMI_BankRemapConfig command in prvSetupHardware.

NOTE: The FREERTOS will not run if bootbank = bank0 !!

It works, but why? Why is it not possible to config pll after using a bootloader with bank-address-switch.
Have anybody a clue?

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

Copyright (C) 2004-2010 Richard Barry. Copyright (C) 2010-2016 Real Time Engineers Ltd.
Any and all data, files, source code, html content and documentation included in the FreeRTOSTM distribution or available on this site are the exclusive property of Real Time Engineers Ltd.. See the files license.txt (included in the distribution) and this copyright notice for more information. FreeRTOSTM and FreeRTOS.orgTM are trade marks of Real Time Engineers Ltd.

Latest News:

FreeRTOS V9.0.0 is now available for download.

Free TCP/IP and file system demos for the RTOS

Sponsored Links

⇓ Now With No Code Size Limit! ⇓
⇑ Free Download Without Registering ⇑

FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

Renesas Electronics Gold Alliance RTOS Partner.jpg

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers

Atmel RTOS partner supporting ARM Cortex-M3 and AVR32 microcontrollers

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

Xilinx Microblaze and Zynq partner

Silicon Labs low power RTOS partner

Altera RTOS partner for Nios II and Cortex-A9 SoC

Freescale Alliance RTOS Member supporting ARM and ColdFire microcontrollers

Infineon ARM Cortex-M microcontrollers

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

Cypress RTOS partner supporting ARM Cortex-M3

Fujitsu RTOS partner supporting ARM Cortex-M3 and FM3

Microsemi (previously Actel) RTOS partner supporting ARM Cortex-M3

Atollic Partner

IAR Partner

Keil ARM Partner

Embedded Artists