Advice on 16 and 32 bit MCU's

Go To Last Post
4 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi, 

I've recently been using the arduino Uno board and the Arduino IDE at work.

I'm at a point where i feel the atmega328 ( 8 bit MCU's more generally) are not sufficient enough for my applications and that the arduino IDE is not suitable for professional development as it offers no debugging capabilities.  

A simple application that I was doing recently for example, microstepping a stepper motor with precise timing and simulatenously reading its feedback encoder (SSI interface) to detect missed steps, stretches the microcontroller's capabilities to their max ( 2 or 3 timer interrupts active, any additional piece of code inside the timer's ISR would screw up the timing) . 

I want to advance my embedded system design skills and use more professional development hardware and software tools but I don't know where to starts. 

I work as a mechatronics R&D engineer, so most of my embedded applications consists of reading sensors, controlling actuators (Steppers, servos) and LED's, designing user interfaces on a touch screen display. I might need to develop app controlled applications in the future.  

I know that Atmel has some 16 and 32 bit MCU's and their own Atmel Studio. Should I try to play with 16 bit MCU's first? Should I try ARM based MCU's?

In any case, what development boards do you recommend?  which IDE? which in system debugger? etc..

I'm aware that the choice of the MCU highly depends on the application, but in my case - working in R&D -  it doesn't matter since my prototypes won't go to production and are for demo only. I prefer to use an overkill MCU platform that I know could do the job most of the time. ( if that is a bad approach for advancing my skills in embedded systems please let me know)

Any ideas and tips would be appreciated. 

Regards 

 

Last Edited: Tue. Jan 10, 2017 - 02:32 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Unfortunately, you're spoiled for choice. There are a zillion ARM based micros from all the major (and minor) vendors that range from AVR 8 bit performance to significantly more and with dev boards from a few $$$ upwards. I'd suggest ST boards are better value than Atmel's. As for the IDE, most of the free offerings are based on GCC and Eclipse - Atmel is based on GCC and Visual Studio.  There are also paid offerings like IAR where the IDE sucks, but the compiler and debugger make it worth $3000+ USD a seat. There's also the choice on online services like MBED that support a variety of vendor's boards.

One thing of note is that most dev boards have the debugger on them, so there is not an extra cost. Some of them aren't the fastest, but they're more than adequate. The ST Nucleo boards are $10..$25 USD, so they're not going to break the bank.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

haythamhakla wrote:
... and that the arduino IDE is not suitable for professional development as it offers no debugging capabilities.
Visual Micro is an Arduino IDE on Microsoft Visual Studio that has debugging (GDB) for Arduino Zero.

http://www.visualmicro.com/page/User-Guide.aspx?doc=Arduino-gdb-In-Brief.html

https://www.arduino.cc/en/Main/ArduinoBoardZero

http://playground.arduino.cc/Code/VisualMicro

Edit : Playground URL

 

"Dare to be naïve." - Buckminster Fuller

Last Edited: Wed. Jan 11, 2017 - 02:46 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Atmel has a a bunch of low cost development boards with built in debug interfaces for their arm line.  I would recommend trying out one of those.  They are very capable processors and there is a great community resources available.  Some other vendors require the use of tools that are quite expensive or limited for the free version.  Atmel studio is free and full featured.  There's also good offerings from ST and NXP but I stick with atmel because the documentation is usually pretty good, the tools are free and the community is awesome.