Go Down

Topic: Cortex M3 Assembly Files on the Due (Read 2446 times) previous topic - next topic


I've just upgraded from the Uno to the Due yesterday and have ran into a few problems. I've been using an FFT library in a project I've been working on and jumped to the Due for more storage and speed. What slipped my mind is although my code transferred fine, the library was mostly written for AVR, making it useless on this ARM chip. Now I'm on the hunt for a new library. I found the following site which has exactly what I need written for the Cortex M3 chips:
http://www.embeddedsignals.com/ARM.htm            Namely FFTCM3.s
The problem is I have no idea how to interface with a .s file. Before I was using a .h , and if I try including the .s in my sketch and try to use any functions the terminal lights up in errors. Am I using the right approach on this, is this file usable for me? Any help is greatly appreciated, if you couldn't already tell, I'm new at this  :P


There are a couple of FFT routes on Due, see http://arduino.cc/forum/index.php/topic,150539.0.html and other topics.

Yes most Uno code will not work as they used alot of AVR specific code to get it working fast enough.


Thanks for the reply. Ya, I found a couple of different libraries in the meantime, but like you said, 90% of them use AVR assembly for speed. I did however run into this:
Apparently we have access to an almost complete CMSIS/DSP_Lib, you just have to follow the instructions above to be able to access it. For what I need to do it's working pretty well, but definitely check that library out, it's got a ton of useful functions in it.


Using inline ASM is a real pain. You should be able to link-in a .S file (certainly I've done that in the LPCXpresso environment, very easy), but I don't know how/if you could do it under the IDE.

Rob Gray aka the GRAYnomad www.robgray.com

Go Up