Quality RTOS & Embedded Software

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




Loading

Running FreeRTOS with IAR v5.10

Posted by Sandra on August 3, 2007
I have currently upgrade my IAR from v4.40 to v5.10. I was able to run the Web sever demo with STR912x before with v4.40. After the upgrade, I was able to compile the code, but not being able to make it run. I have modified the linker file and several other assembly files, but still have no luck. Just wonder whether anyone has able to make it run with v5.10.

RE: Running FreeRTOS with IAR v5.10

Posted by Richard on August 3, 2007
I have a copy of V5 but have not yet installed it. From the marketing info it seems that there are several manual updates that are required to the system code, although I cannot remember what they are.

It sounds like you have got quite a way into this. When you modified the asm files, did you remember to ensure the kernel is started from Supervisor mode? Also that the IRQ and Supervisor stacks are setup?

Regards.

RE: Running FreeRTOS with IAR v5.10

Posted by Sandra on August 3, 2007
Here is what I have in the 91x_init.s file for setting up the stack

; Enter each mode in turn and set up the stack pointer

MSR CPSR_c, #Mode_FIQ|I_Bit|F_Bit ; No interrupts
LDR SP, =SFE(FIQ_STACK)

MSR CPSR_c, #Mode_IRQ|I_Bit|F_Bit ; No interrupts
LDR SP, = SFE(IRQ_STACK)

MSR CPSR_c, #Mode_ABT|I_Bit|F_Bit ; No interrupts
LDR SP, = SFE(ABT_STACK)

MSR CPSR_c, #Mode_UND|I_Bit|F_Bit ; No interrupts
LDR SP, = SFE(UND_STACK)

MSR CPSR_c, #Mode_SVC|I_Bit|F_Bit ; No interrupts
LDR SP, = SFE(SVC_STACK)

MSR CPSR_c, #Mode_SYS|I_Bit|F_Bit ; No interrupts
LDR SP, = SFE(USR_STACK)

; --- Set bits 17-18(DTCM/ITCM order bits)of the Core Configuration Control
; Register
MOV r0, #0x60000
MCR p15,0x1,r0,c15,c1,0

; --- Now change to supervise mode and set up User mode stack,
MSR CPSR_c, #Mode_SVC|I_Bit|F_Bit ; No interrupts
LDR SP, = SFE(CSTACK)


FreeRTOS, IAR v5.10, vTaskDelayUntil problem

Posted by Xaw on August 8, 2007
Hi,

First I must tell you that I use another board, but it doesnt really matter since I have the same problem than you.
I was running the uIP web server on my board using IAR 4.X and it works fine. Now I am using 5.10 and it doesnt go very well.

I had some data abort exception and this is where I went on this forum.
I saw your following post
; --- Now change to supervise mode and set up User mode stack,
MSR CPSR_c, #Mode_SVC|I_Bit|F_Bit ; No interrupts
LDR SP, = SFE(CSTACK)

And that helps me a bit.
I was running in system mode instead of supervisor mode.
Now I don't have the same problem.
I have stripped out the web server code and I tried to run FreeRTOS with only one task running ( a blinking led task).
When the task enter in vTaskDelayUntil, it never gets out of it.
The idle task seems to be the only one running.


Regards


[ 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