Hello,
I would like to use FreeRTOS on a SAM3S4A chip. I see that there is 2 demo for the board of Atmel, but I could not modify it to work on a other Microcontroler that the SAM3SD8C. Do you know if it exist a demo project on atmel for generic processeur, or a specific one foe SAM3S4?
Thanks in advance.
The FreeRTOS Cortex-M port will run on any Cortex-M chip that has enough RAM. To get the kernel running it should just be a matter of ensuring the linker script is correct for the device being used. Getting a demo application running may require different start up code (if the chip family is changed), adding or removing demo tasks if the amount of RAM available is different, and updating FreeRTOSConfig.h settings that set the CPU speed and amount of heap available. A page is provided that includes information on doing this http://www.freertos.org/porting-a-freertos-demo-to-different-hardware.html - were you able to follow the instructions there? If not then you will need to provide information on the actual problem you are having in order for somebody to be able to suggest a solution.
I tried to start from the ATSAM3S-EK2 demo, and I get this error when I tried to run :
Atmel Studio was unable to start your debug session.
Please verify device selection, interface settings, target power and connections to the target device.
I don’t think your problem is connected to FreeRTOS at all, it is simply that you are telling Atmel Studio that you are connecting to a SAM3SD8C when you are actually connecting to a SAM3S4A. Change the device setting in the project.
Thanks a lot Dave.
You were right about the project target.
But now my demo blinking LED does not compile on RTOS (it compile and blink if I do it manually on the main) because it need too much RAM:
Error 2 Program Memory Usage : 19800 bytes 7,6 % Full
Data Memory Usage : 50736 bytes 103,2 % Full (Memory Overflow) RTOSDemo 0 0 RTOSDemo
Does someone can give me a clue on how reduce the size of the RAM, my soft is pretty simple, I need a lightest heart as possible.
Ok,
I appology for needing so much jelp, but thanks to your doc I succeed to reduce my ram consumption.
Now the soft compile and run on my board, but stay stuck in the
xPortStartScheduler( void )
function, more precisely in the
prvPortStartFirstTask();
It could be a issue with portmap, but I can not figure what I should change to make it work.