Ok so I am Very New at the whole electric prototyping scene. What I don't understand is why do I need to buy a microcontroller like a atmega328, when I can just use my arduino Uno. I am starting my first project a very simple (because I'm very new) 3x3x3 LED Cube, maybe 4x4x4 if its not much harder. I planned on using an arduino UNO but the more I research on arduino projects the more I see microcontrollers. So when should I use a microcontroller, and when is a arduino necessary?
Welcome.
You don't need to buy an ATmega328P, there's already one in your Uno.
The Uno is just a development/prototyping platform for the ATmega328P. It makes things easier in that all the necessary support circuitry is already there for you. If you started with just a raw ATmega328P microcontroller, you'd have to provide that circuitry.
Does that help?
So when would it be appropriate to use a microcontroller?
So when would it be appropriate to use a microcontroller
The Arduino IS a microcontroller. If you mean a bare chip, then you will need a good deal of electronic knowledge to wire it up. MUCH harder is mastering a devlopment environment like Atmel Studio. Nothing wrong with the product, it just happens to be aimed at professionals. That's why the Arduino was invented.
Atmel studio & chips are generally used by professional designers who a building an "intelligent" appliance, a auto dashboard, a scientific instrument, etc.
The UNO is inappropriate when it is too big or expensive for the project. Other Arduino's and clones are sold for this purpose, such as the Pro Mini. I buy 10 at a time on eBay for $5 apiece.
Ok so let me see if I understand:
- Arduino: For beginners like me, Use an appropriate sized arduino for the project
- AVR, ARM, etc: For professionals, better for projects that need to look professional and such
Am I correct?
Bresser:
Ok so let me see if I understand:
- Arduino: For beginners like me, Use an appropriate sized arduino for the project
- AVR, ARM, etc: For professionals, better for projects that need to look professional and such
Am I correct?
Mostly. The ATmega328P microcontroller in the Uno is an AVR microcontroller (MCU).
There are a lot of tutorials and cookbooks that can help wire up a bare chip. It's not that tough, but understanding what you are doing will require some knowledge of electronics. If you don't understand what you're doing, then you will be lost when something goes wrong.
The UNO is inappropriate when it is too big or expensive for the project. Other Arduino's and clones are sold for this purpose, such as the Pro Mini. I buy 10 at a time on eBay for $5 apiece.
Or design your own custom circuit board. I do this a lot; I consider it fairly economical given the inexpensive PCB fabs available. Of course this involves knowing how to wire up a bare MCU from scratch. But this approach is well within the reach of a knowledgeable hobbyist.
I have some knowledge on electric prototyping. I'm sure to you guy's knowledge it seems basic. But I know about voltage regulation, resistors, pots(not sure I quite understand these tho), digital outputs, multiplexing, capacitors. Can you point me to an article or something about when to use a bare chip, and how to wire one up?
You have to decide the when. If it's not jumping out at you, then you have some learning to do and should stick to the Uno or other pre-manufactured board until such time as it does.
As for the how, Google is your friend but here are a couple links.
Yeah, sort of.
Arduino Uno (the blue PCB with all the connectors and an Atmega 328 microcontroller at its core) is ready to go. It has various supporting devices which allow it to be easily programmable, simply interface with a PC, have its own power supply, have headers in which you can plug stuff in etc. However this comes at a cost. Both in terms of money and required space. It also draws more current than the 328 chip alone, so while it has some very interesting advantages, in some cases it is just too clumsy.
Standalone Atmega 328 or a similar microcontroller not only is significantly cheaper and physically smaller, but it also allows for more usable resources since in Arduino a part of the chip's memory is taken up by the software necessary for Arduino to communicate with a PC (it's called bootloader).
You certainly need not to be a professional to use a standalone 328. You can use your Uno to program it using the same interface as with Uno itself, but you will need to provide some additional components (just a few capacitors and an optional crystal, plus make sure your power supply is adequate). However to make a proper job of it you'll need to make a PCB, since using a breadboard would be just as expensive, fragile and clumsy as an Uno (for a final project that is, it's perfectly OKfor prototyping).
The original 328 and similar microcontrolers were indeed meant for people with better knowledge, but Arduino (and other similar platforms) changed the scene dramatically. There are many hobbyists and tinkerers out there who would have never considered using a microcontroller a couple of years ago, but now are using it without any issues.
My colleague, for example, was working with electronics for years, but it was all analogue. Then one day, a couple of years ago when we were working on a small project, he came with some really complicated multi level PCB that did very little and needed to do about six time more. I suggested we do it with a microcontroller and at first he was really skeptical, but a quick breadboard prototype, a fraction of a size and cost of his design convinced him. Now whenever we are doing something new he asks me if I can do it with my little blue thing. I try to teach him the basics, but he says he's too old to learn programming. There may be some truth to it so I do the conceptual design and software and have him worry about the hardware.
All that being said, keep in mind that a few years ago I was in your place asking the same questions. You'll quickly learn the basics and be able to finish a project by yourself.
Welcome to the board.