SAM4SD32C stripped down version for Rowley Crossworks


I have taken the Atmel Studio Version of FreeRTOS for the SAMS-EK2, stripped out an awful lot of stuff and compiled it to work with Rowley Crossworks. This frees you from a lot of the arcane and bloaty ASF nonsense, but is easy to add in if you wish to do so. 

It strips out all the compiler.c stuff and a lot of the other associated bloat that goes with trying to make it work for all Atmel processors and multiple compilers (although the annoyance is that is that although they support all the terrible IDEs such as Atmel studio and the expensive ones such a IAR), Crossworks, sadly, never seems to get a look-in.

The demo itself does almost nothing. It has two dummy threads and an LED flash to show that it basically works. I have taken a load of stuff from a SAM3S project and stitched a lot of it in easily that I have not [yet] included such as Chan FAT file. I want to tidy that up and get it working with long file names before I include it.  I will update this as and when I have done that.

With all that said, it's very easy, if you have FreeRTOS and SAM3/4 experience to add support for other peripherals.

Stripping out compiler.c meant I lost #defines for true and false, so I've added a defines.h file, define TRUE and FALSE and change that in the appropriate files as I believe such #defines should always be in capitals for clarity. This may not be to your tatse and can easily be modified of course.

There are twelve warnings that I can't get rid of and someone better at coding than me might well be able to banish those, but it does compile and work nicely.

Feel free to ask any other questions. I'll update the project as and when I have other peripherals reliably working. I have also had UART1 working in standard RS232 mode and a basic queue to get characters in and out. When I have tidied that up, I'll include that. This will get you going as a good starting point and save you you some considerable work for having the system run with Crossworks though.

Enjoy :)




Please sign in to leave a comment.