ATSAM3S, SAM3S - how good are these ARM micros? - Page 1
Forum section: electronics / general

author: Artlav
author_rank: Frequent Contributor
timestamp: November 13, 2014, 12:28:56 pm
content: I wanted to learn to use ARM microcontrollers, and at the end of the cost/availability/solderability search was ATSAM3S4B in a TQFP64 package.It sounded like a good chip, easy to get started with - especially embedded USB, with programming support over it.The pinout in the datasheet is in the worst possible form - a list of pin numbers with functions.A shame, considering they done normal pinouts for AVRs.I had to compile the pinout manually:After that the chip itself didn't took long to wire up, clock and get an LED.Then, the software.Good god... And i thought Microchip's one was bloated.The ASF libraries are a shock to look at, and are quite nearly unusable.Several Mb of sources to produce a 4 kb binary to blink an LED?You can fly a quadrotor on 4 Kb of code!Into the recycle bin it goes.And the very fact of needing gigabytes of IDE to program a microcontroller is an insult.But once i got the tools in order/made, it's still a nice chip.The huge amount of registers feels overwhelming at first, but they actually make quite a lot of sense.So, the question is - how good is it, actually?I know no other ARM micros to compare it to, and searching for SAM3S, SAM3, ATSAM, etc on this or other forums produce about 10 results total, while STM32 generates pages and pages.I wonder why is it so?

author: dannyf
author_rank: Super Contributor
timestamp: November 13, 2014, 01:23:16 pm
content: QuoteAs mcus get bigger and bigger, you should care less about how much space it takes, and more on how long (thus money) it takes you to develope the code.Those libraries are meant to reduce your development time, not to reduce code space - no one gives a rat's rear-end about flash space.QuoteAtmel Studio is bloated. Alternatively, you can always do command line, use a more featured editor, or other IDEs, like CoIDE.QuoteDepending on what you just "good" by.

author: c4757p
author_rank: Super Contributor
timestamp: November 13, 2014, 01:26:06 pm
content: Quote from: Artlav on November 13, 2014, 12:28:56 pm4kB is fairly typical for ARM, you get a lot of overhead. It's just overhead though. As for the size of the source and IDE - who cares? Storage is cheap now. Get more.However, the IDE sucks just because it's sucky, not because it's big. Atmel Studio is a turd. GCC + Makefile + your favorite editor?

author: Artlav
author_rank: Frequent Contributor
timestamp: November 13, 2014, 06:21:09 pm
content: Quote from: dannyf on November 13, 2014, 01:23:16 pmHm, can't honestly disagree with that.I guess i'm not used to hard deadlines.Some like to make things, some need to get things done, and tools are made for the latter?Quote from: dannyf on November 13, 2014, 01:23:16 pmBetter phrased question - how does it compare?Are there tasks where it would perform better/worse?Is their pin remapping scheme actually useful in practice (are there similar schemes in STM32 ones?)?Is there a noticeable difference in how you program them (i.e. separate registers for setting and clearing pins), and do they matter?Etc. Just off the top of my head.Basically, why one is widely discussed, and the other is relatively unknown?Quote from: c4757p on November 13, 2014, 01:26:06 pmWell, GCC + Makefile does it in 360 bytes.Quote from: c4757p on November 13, 2014, 01:26:06 pmWindows problems perhaps, but i like tools that are portable and automateable.Run a single script, the program is built and uploaded. No need to start IDEs, go through a lot of flashes, etc.No installation, just run whereever.A huge IDE with aninstallerjust itches my sense of aesthetics.

author: paulie
author_rank: Frequent Contributor
timestamp: November 13, 2014, 09:58:06 pm
content: Don't you understand that bigger is better. What's wrong with you? Some misdirected souls think minimal tools actually serve a purpose. This nut case for example:https://www.eevblog.com/forum/microcontrollers/one-dollar-one-minute-arm-development/

author: c4757p
author_rank: Super Contributor
timestamp: November 13, 2014, 10:21:13 pm
content: Quote from: Artlav on November 13, 2014, 06:21:09 pmInteresting, itshouldbe running a similar compile sequence. Maybe you can change the settings to include fewer things?QuoteAgreed there, I'd much rather scriptable things too - but that doesn't really mean anything for the disk space.

author: dannyf
author_rank: Super Contributor
timestamp: November 13, 2014, 11:04:33 pm
content: QuoteDepending what you are comparing it against and what you are comparing.I actually think there is very little difference between ARM vs. other 32-bit chips, as long as you code it in a high level language.What makes a chip interesting is the peripherals. There, unfortunately, the comparison is highly application specific.

author: westfw
author_rank: Super Contributor
timestamp: November 14, 2014, 07:34:08 am
content: QuoteYou might enjoy the "one-dollar-one-minute ARM" thread; it turns out that you can program you ARMs with about 10M worth of downloads. As long as you use assembler :-)https://www.eevblog.com/forum/microcontrollers/one-dollar-one-minute-arm-development/I haven't heard anything awful about the Atmel ARM chips, though they seldom seem to be one of the top vendors (ST, NXP, TI ("stellaris/Tiva") and Freescale usually show up on top.) No one likes ASF much, but it seems on-par with other standard library environments (ST Peripheral Library, Tivaware, CMSIS...)Atmel Studio does seem to be particularly ... slow (but: free!) Keil and Imagecraft IDEs start up MUCH faster, for example. And there's always Emacs and Makefiles...