Arduino Due port (GCC SAM3X8E)
Posted: Sun Apr 14, 2013 5:12 am
Hi there. First of all, this is the git repro with my commits.
https://github.com/sam0737/chibios-rt-arduino-due
I have ported the SAM3X8E (Cortex M3), SAM3X8E platform, Arduino Due board. As well as a corresponding demo wire everything up.
My dev environment is Windows with the chaintool shipped with Arduino 1.5.x, which is CodeSourcery GCC.
So far there is only PAL LLD driver. It boots, the clock and systick is initialized, PIO is changable, LED blinks, nothing more. I will add more component if time's allowed.
I didn't try to generalize the SAM3X8E > SAM3X > SAM3 family. I have been working in C# much longer than embedded C and is too surprised it could work already =P, so I aimed to make it work first.
That would be a big TODO.
BTW, if someone is faimilar with this platform, could you please look at the Linker Script? In particular
0x20070000 doesn't sound so right to me. Shouldn't it be 0x20000000? But this is straight from linker script released by the Atmel, comes with their CMSIS implementation.
I hope these commits will be useful to the project.
P.S. Please feel free to re-phrase the copyright notice when merging. I am more than happy to transfer the copyright to the maintainer.
https://github.com/sam0737/chibios-rt-arduino-due
I have ported the SAM3X8E (Cortex M3), SAM3X8E platform, Arduino Due board. As well as a corresponding demo wire everything up.
My dev environment is Windows with the chaintool shipped with Arduino 1.5.x, which is CodeSourcery GCC.
So far there is only PAL LLD driver. It boots, the clock and systick is initialized, PIO is changable, LED blinks, nothing more. I will add more component if time's allowed.
I didn't try to generalize the SAM3X8E > SAM3X > SAM3 family. I have been working in C# much longer than embedded C and is too surprised it could work already =P, so I aimed to make it work first.
That would be a big TODO.
BTW, if someone is faimilar with this platform, could you please look at the Linker Script? In particular
Code: Select all
ram (rwx) : ORIGIN = 0x20070000, LENGTH = 0x00018000 /* sram, 96K */0x20070000 doesn't sound so right to me. Shouldn't it be 0x20000000? But this is straight from linker script released by the Atmel, comes with their CMSIS implementation.
I hope these commits will be useful to the project.
P.S. Please feel free to re-phrase the copyright notice when merging. I am more than happy to transfer the copyright to the maintainer.