Making it easier to understand, some pins of this small chip can receive voltage stimulus. Those stimulus will then be processed accordingly to what you’ve embedded on the chip’s memories. The consequent outcome of the process will be a voltage stimulus comming out of the chip’s pins.
So for example, if you want to press a button for fading a led, you should connect it to an input pin of microcontroller and the led to an output pin of the microcontroller. Then you have to load some code into the chip so it can interact with both components. That’s it!
So, you’re still unsure about why you need to learn about these “black boxes”…
From automatic door systems, to washing machines, cars, cellphones, televisions, mp3s, alarm clocks, headphones and a lot more run on microcontrollers. So basically, you depend on these “black boxes” for your daily routines. If you want to design your own device, fix the existing ones, or simply enhance their behaviour, here’s your chance to learn how.
0.0 – ATMEL AVR
Atmel is an electronics company specialised in microcontrollers. So you can see it as an mcu manufacturer. The advantage of using mcus from Atmel is the fact that they have been producing the most recent technology, lowest-power consumption and easy-to-use interface for microcontroller units. Also, since the appearance of Arduino board, Atmel is getting a lot of attention from the maker community and as a consequence lots and lots of documentation is being added every day on the internet as well as source code and electronic schematics for the most different applications.
0.1 – ARCHITECTURE
And now you ask, “What does AVR stand for?”.
Some people think AVR is an acronym for “AdVanced Risc”, which fits like a glove to explain AVR, although it seams like the two founders never confirmed the true story about the name.
Even so, we will keep with the acronym. So AVR is an Atmel microcontroller technology based on a RISC architecture.
So you keep on asking, “what does RISC architecture stand for?”.
Before we can ask this question, you need to understand that there are two main theories on CPU architectures.
The first one is called CISC which stands for “Complex Instruction Set Computer”. Yes, this one is an acronym. So the CISC was the first CPU logic to appear and was mainly spread through all of our modern technologies, from cellphones to computers and laptops as it was obviously the first. The complex instructions set allowed for very complex tasks to be performed. But this positive aspect of the CISC architecture was also its main problem as some of the applications needed for the CPUs were really simple and shouldn’t require such a complex set of instructions and operations.
For that reason the RISC architecture started to emerge. RISC is another acronym for “Reduced Instruction Set Computer” and the name says it all. So its key adavantages are:
- low number of instruction sets (more efficient instructions),
- low energy consumption and
- diagram block optimized for faster operations.
This might sound like nothing at the beggining, so all you need to know is RISC has an overall better performance compared to the CISC architecture mainly for embedded applications. And this was just the beginning. RISC architecture now keeps being developed by Atmel under their highly pattented brands, being AVR one of them.
0.2 – PROGRAMMERS
If you are a newbie, this is probably the most dificult part to understand and implement. Unlike the Arduino boards, the Atmel AVR chips come with no code in it. So the first thing you need to do is find an interface for loading the code. That interface is called a programmer. There are many on the market for these Atmel devices, although our favourite one is the Atmel ICE.
0.2.1 – ATMEL ICE
Atmel ICE ISP programming pin out: