rtel wrote on Monday, June 06, 2005:
It sounds like your application might be starting in the wrong mode. The application should start in supervisor mode then switch to system mode when the first task starts. 0xaaaaaaaa is the value the R14 of each task is initialised with, but it sounds like the value is in the supervisor R14 rather than the system mode R14.
How did you generate your CrossStudio project?
The GCC/ARM7_AT91FR40008_GCC demo uses command line GCC. This requires a different startup file and linker script format to CrossStudio. I suspect this is causing your problem. There are also I think a couple of settings required in CrossStudio that you might not get using the GCC demo as a base.
Also did you modify the interrupt handling at all from that included in the FreeRTOS download. The interrupt handling routines have to be as per the download rather than as per the Atmel libraries.
There is a FreeRTOS demo that uses CrossStudio but on a Philips device, rather than an Atmel see the uIP demo. You might be better off using this as your starting point rather than the command line GCC example. Or at least looking at the startup and linker files as an example.
Let me know how you get on, I may be able to assist futher.