Jump to content
Lgbeno

Playing with Atmel SAMD11

Recommended Posts

Hi Everyone,

 

I've been away from the forum for quite some time now. We just welcomed a third child to the family and work has also been very busy. People probably notice that analog.io has been sort of on the decline as well since I haven't been doing my best to keep up with all of the things changing inside Google Chrome.

 

Anyway, personal update is not the purpose of this post. I've always been a big fan of MSP430G2553 and Energia. I was recently forced to branch out and try Atmel SAMD11 using this kit: https://www.mattairtech.com/index.php/development-boards/mt-d11.html

 

At first it was a real struggle to get started. I loaded a bunch of examples in Atmel Studio and just stared at them puzzled. Their abstractions IMO are just over the top for configuring periphrials, I much prefer interacting with registers with the syntax that TI uses.

 

After about 3 days of cursing and scratching my head I finally think that I'm ramped up on the part and am now pretty excited about it. The experience has caused me to dig into the innards of Arduino more than I ever have in the past.

 

So with the pain behind me, There is so much about this part that is superior to old trusty G2553.

48MHz vs 16MHz

4k sram vs 512 bytes

USB

More serial channels (SERCOMS)

Multi channel DMA

Analog DAC

Faster ADC with decimation to get up to 16bit res

 

This interesting (at first frustrating) concept of an event system to route events between periphrials without CPU.

 

All of this and the price is lower or about equivalent to G2553.

 

On one hand I'm sad to move to a new goto part, on the other, I'm excited. Has anyone else gave it a try?

Share this post


Link to post
Share on other sites

At first it was a real struggle to get started. I loaded a bunch of examples in Atmel Studio and just stared at them puzzled. Their abstractions IMO are just over the top for configuring periphrials, I much prefer interacting with registers with the syntax that TI uses.

 

On one hand I'm sad to move to a new goto part, on the other, I'm excited. Has anyone else gave it a try?

 

A project for work had me looking for more power than the current AVRs could offer. (actually newer AVRs contain the event system too, which is cool) So I've been digging deep into the SAMD20/D21 lineup.

 

If you know what you're doing, you can configure things at a register level if you want. In fact sometimes API's don't let you do everything a peripheral might have to offer.

 

The Event system is actually one of the reasons this MCU will fit so well with my current project. I've only just started the system design, and have just finished routing a PCB. So I'm not deep into the programming just yet.

The SERCOMs are also very interesting. I2C, SPI, UART all in the one module, and you can select which one you want for each instance.

Share this post


Link to post
Share on other sites

Yeah don't get me wrong, the event system is super cool, I'm sure with timers and ADCs and DAC you could construct some very clever systems that don't even need the CPU running.

 

My thing was that My first task was to use the timer for input capture. It took me awhile to wrap my head around needing to configure 3 separate peripherals to do this when I was anchored how how it was all built into the MSP430 timer.

 

For the record to do this you need to:

Configure the PORT to mux the pin to the EXINT controller

Configure EXINT controller to "generate" an event

Config EVSYS to route the event to the TC1 module

Configure the TC1 module to capture on this event

 

But with time there will be plenty of stack overflows on this topic. Right now it is early days.

 

Maybe there is a future where a chip like this replaces some of the hard logic components like SPI ADCs/DACs because it is cheaper and can be configures to sweep up a lot of stuff.

Share this post


Link to post
Share on other sites

My thing was that My first task was to use the timer for input capture.

 

This is actually what my system needs to do!

 

Yeah, it's alittle overwhelming, the datasheet does a pretty decent job I thought of showing the module configuration steps.

It's true it's not baked into the timer module like the MSP, but in some ways it makes it much more flexible. not only with which pins can cause a timer capture (all of them!) but other perhepials could too, like a UART receive or DMA transfer.

 

I still love the MSP, but these ATMEL parts just fit the needs of this particular project better.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...