What are Arduino microcontrollers?

This post is about a short introduction for newbies about microcontrollers, especially about Arduino branded boards.

What is a microcontroller?

A microcontroller chip under a microscope
A microcontroller chip under a microscope

A microcontroller is basically a one chip computer, every component a computer needs to have in a single integrated circuit. It contains a processor core, memory, and many programmable IO (input and output) ports. They are used in embedded projects and mostly in automatically controlled devices like tools, automobiles, medical devices, remote controls, toys, microwaves, washing machine and so on. Basically we are surrounded with them almost everywhere.

Arduino microcontroller boards

An Arduino Uno R3 microcontroller board
An Arduino Uno R3 microcontroller board

These boards are ready made microcontrollers with all the needed electronics around them, out of the box, plug and play tools. You just simply plug into a usb port and upload the code on them. You dont have to worry about how the code will be uploaded to the board, no expensive code burning devices.

These boards are open source. I mean they are fully open source. Starting from the hardware to the code, from A till Z. You can get the source codes and the hardware schematics of the boards. As a result of this, a huge community is build upon these boards. You can find a lot of information, examples and videos about how they work.

In my words I describe them as, microcontroller boards for coders. They are perfect for starters who are interested in electronics and dont know where to start. They are simple, cheap and small.

How to use them?

In big lines, there are several input and output ports on these boards, both digital and analog. You write a specific program to control these I/O pins. For example to light up a LED or to read out a value of a thermometer. These output ports communicate with the outside word.  The programming language is pretty easy to use, there are many libraries already written that you can use. These boards can be coded in C/C++. So if you have experience in these languages you are almost ready to go.  More detailed about these my Arduino tutorial series will speak.


An example of an Arduino shield with buttons and a joystic

There`s no much fun without extending these boards with every kind of, as called “shields”. These shields expand the boards with sensors, motors, LEDs, displays, buttons which you can control with the microcontrollers. You can buy additional shields or build your own out of a few components laying around the house.