Microcontrollers are integrated circuits that are basically tiny computers which can run small simple software programs. They’re low powered enough that they can be powered by a battery for days. But they’re fast enough to process data much faster than any human being can think.
Arduino is a company in Italy that designs and sells circuit boards that make microcontrollers easy to use. They call these circuit boards ‘Arduino’ and there are a lot of different types of them. For example you’ve got simple arduino boards like the Arduino Uno, which is cheap and good enough for most projects. When people say they used an Arduino for their project they’re probably talking about the Arduino Uno.
You could use an Arduino Uno to control motors, lighting LEDs, turn on something remotely or even build a simple robot! And then you have fancier Arduinos with more powerful processors which have Wi-Fi, Ethernet and more. The company Arduino open sources all of their hardware designs which means that you don’t just have to buy from them. There are countless third-party companies that make their own variants of the Arduino hardware designs. They can’t call them arduinos but functionally they’re the same thing. There are also Arduino shields which are basically circuit boards that plug in to your main Arduino circuit board and let you do more stuff. For example Adafruit makes shields that let you control motors and servos without having to design motor control circuitry. And Sparkfun have shields that let you turn your Arduino into a simple cell phone or an mp3 player!
There’s also the Arduino software development environment and this is what makes Arduino good for beginners. If you wanted to program microcontrollers you’d have to type out a lot of binary and memorize a lot of hard to remember registers and instructions. You would have to use special programming hardware with custom-made cables to upload your program on to your microcontroller.
The Arduino Company got rid of all of that. They created software that works on Windows, Mac and Linux which makes uploading your code as simple as connecting a USB cable and clicking a button. They created a programming language that lets you configure all of the Arduino Hardware products in the same way. The Arduino software is one of the easiest programming experiences you’ll ever have.
You’ll often hear Arduino is being called microcontrollers. And that’s technically incorrect! Arduino circuit boards have microcontroller chips on them but they also have a lot of other stuff on there too.
In order to upload the software that you create for the main microcontroller, there’s actually another microcontroller. This chip is what lets you connect your USB cable to the Arduino board and communicate via USB. It lets you upload your programs onto the main microcontroller and once you have your program running, this chip is what allows you to send messages back and forth between your computer and your Arduino. And this is extremely important for debugging.
One great thing about Arduino that you can power them purely from your USB cable but if you don’t want your project always attached to a computer you can just use an external 9 volt DC power source with a barrel Jack.
Over here you have the power pins. If you want, you can connect wires here to other circuitry with 5 volts or 3.3 volts. Just make sure that whatever you power, doesn’t draw more than a few milliamps. A few LEDs is okay but a large motor? Nope!
TX and rx is for sending and receiving serial data. You could use this port to send and receive data from a GPS module, Bluetooth modules, Wi-Fi modules and more. Pins 2 to 13 are for digital inputs and outputs.
Once you are done installing, connect the Arduino to your computer with a USB cable. Next start up the Arduino development environment. The Arduino software has a ton of fantastic easy-to-follow demo programs and studying these is the best place to start learning how to code. Arduino calls them sketches which is just a fancy name for a program that you upload to your Arduino.
You want to know why do we use Arduino? Sometimes people ask me about in which cases they can use Arduino.
You surely are familiar with the term INFINITE, right? The Arduino has INFINITE applications, to do INFINITE numbers of things. For example: you can build a heartbeat sensor, fire alarm, fingerprint scanner as a door lock, remote controlled cars, drones, UAVs and even a multi-functional robot or a satellite orbiting around the earth!!
Image source: arduino.cc