Published on 31 Jul 2017. Written by Vasanth Vidyakar
Arduino is an open-source hardware platform that is being used by people around the globe for building electronics projects. It is an integrated platform which contains both a physical programmable circuit otherwise known as microcontroller and a software (or IDE) that you can run on your computer to write and upload the code onto the physical board
Arduino Board is quite popular among many people who want to get started with electronics, and unlike other embedded system boards Arduino does not require any additional hardware to upload the code (generally known as programmer). The Arduino Program can be written and uploaded using the Arduino IDE that needs just an USB cable to connect. Since the interface is simple and complicacies are less, Arduino is preferred by most of the aspiring engineers.
Here, we will try to understand the Arduino Architecture and its functionalities.
In the recent years the Arduino has been the microcontroller (or the Brain) for most of the projects. This is possible due to the simplified technology and user friendly interface that Arduino provides to the makers, from students, hobbyists to the professionals.
Arduino technology is more focused on fast prototyping, aimed at the amateurs who want to get started in electronics and projects. Over the years, Arduino has transformed from simple 8-bit board to an integrated part of wearable, IoT (Internet of Things) & other advanced technologies. Arduino interface is easy to use for the amateurs and yet provides the flexibility to do advanced projects.
The Arduino has been integrated with 3 different types of memory which makes the Arduino technology user friendly. Those memories are,
The processor of the Arduino Board uses Harvard Architecture for which the program code and program data have separate memory. The memory of it is divided into two namely program memory and data memory. The data will be stored in the data memory whereas the programme code will be stored in the flash program memory.
For ex; The Atmega328 microcontroller has 32kb of flash memory, 2kb of SRAM, 1kb of EPROM and operates at 16MHz clock speed. Some of the other basic functions of Arduino are:
The Arduino Software (IDE) runs on Windows, Macintosh OSX and Linux Operating Systems. But most microcontroller system software requirements are limited to Windows only. The Arduino Software is provided as an open source tool for the beginners and students to write and upload the program onto the microcontroller. It is similar to the processing programming environment so you can get used to the interface immediately.
The Arduino programming language can be extended to multiple C++ libraries and you can also use AVR-C programming on this system. With this, you will be able to add AVR-C code onto the Arduino Programme directly.
‘Sketches’ is the term used to denote the programming of the Arduino Board. Each sketch contains three parts - Variables Declaration, Initialization and Control code. Following are the steps to programme the Arduino Board:
Since it runs on Mac, Windows and Linux, it is used by large number of communities for building projects. Arduino can be used to build simple scientific projects that would prove some chemistry & physics principles or it can also be used to build electronics and robotics projects that involve programming. Builders, Architects, Designers, Musicians, Artists, Engineers use this technology to build interactive prototypes to experimental musical instruments etc,.
Although there are many other microcontrollers available, many prefer Arduino as this particular platform provides a much simpler interface and also writing & uploading the programme onto the microcontroller is very much simplified. Some of the projects that you can build using Arduino technology are,