arduino is an open-source platform used for building electronics projects. Arduino consists of both a physical programmable circuit board (often referred to as a microcontroller) and a piece of software, or IDE (Integrated Development Environment) that runs on your computer, used to write and upload computer code to the physical board
If you’re anything like me, tinkering with electronics is something you’d really like to do – in theory at least. In reality, time constraints and lack of knowledge inevitably prevent you from trying. It’s just too difficult. You like dissecting broken gadgets, but never do anything with the bits you find other than stash them away for a rainy day (a drawer full of microwave parts? Check).
The arduino is the answer to all that, and frankly anything that can be considered fun while learning is a truly revolutionary device in my opinion.
A pre-assembled arduino board includes a microcontroller, which is programmed using Arduino programming language and the Arduino development environment. In essence, this platform provides a way to build and program electronic components. Arduino programming language is a simplified from of C/C++ programming language based on what Arduino calls “sketches,” which use basic programming structures, variables, and functions. These are then converted into a C++ program
Software and Hardware:
Arduino is open source, both in its software and hardware specification so that hobbyists can assemble the simplest Arduino modules themselves by hand. More sophisticated pre-assembled arduino modules can be purchased and are modestly priced. The hardware comes in many format specifications, from a small wearable device to larger surface mounted modules. The primary mode of computer connection is via USB, though Bluetooth, serial and ethernet form factors also exist.
The arduino software is the free and open source. The programming platform is based on the popular Wiring language. The IDE is based on Processing, which is a well-known language among designers and prototypes. Unlike most microcontroller interfaces, Arduino is cross-platform; it can be run on Windows, Linux and Macintosh OS X.
The open source nature of Arduino has been the main reason for its rapid horizontal growth. Since it is an Open Source project, all the files related to hardware and software is available for personal or commercial use. The development cost of the hardware is very small as against the costly similar proprietary products by the industrial giants. The open source nature doesn’t require any licenses to develop, use, redistribute or even sell the product. But the Arduino name is trade mark protected (arduino™) i.e., you are free to sell the Arduino board under any other name however in order to sell it under the name “Arduino” you need to take permission from the founders and follow their quality terms.
Basically, the processor of the Arduino board uses the Harvard architecture where the program code and program data have separate memory. It consists of two memories such as program memory and data memory. Wherein the data is stored in data memory and the code is stored in the flash program memory. The Atmega328 microcontroller has 32kb of flash memory, 2kb of SRAM 1kb of EPROM and operates with a 16MHz clock speed.
How to program an Arduino?
The main advantage of the arduino technology is, you can directly load the programs into the device without the need of a hardware programmer to burn the program. This is done because of the presence of the 0.5KB of boot loader, that allows the program to be dumped into the circuit. The Arduino tool window contains a toolbar with a various buttons like new, open, verify, upload and serial monitor. And additionally it comprises of a text editor (employed to write the code), a message space (displays the feedback) like showing the errors, the text console, that displays the o/p & a series of menus just like the file, tool menu & edit.
- Programming into the Arduino board is called as sketches. Each sketch contains three parts such as Variables Declaration, Initialization, and Control code. Where Initialization is written in the setup function and Control code is written in the loop function.
- The sketch is saved with .ino and any operation like opening a sketch, verifying and saving can be done using the tool menu.
- The sketch must be stored in the sketchbook directory.
- Select the suitable board from the serial port numbers and tools menu.
- Select the tools menu and click on the upload button, then the bootloader uploads the code on the microcontroller.