{"id":60854,"date":"2024-04-07T15:38:14","date_gmt":"2024-04-07T19:38:14","guid":{"rendered":"https:\/\/www.engineersgarage.com\/?p=60854"},"modified":"2024-04-22T01:11:04","modified_gmt":"2024-04-22T05:11:04","slug":"articles-getting-started-with-arduino-uno-and-arduino-ide","status":"publish","type":"post","link":"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/","title":{"rendered":"Arduino compatible coding 02: Getting started with Arduino"},"content":{"rendered":"<p><span data-preserver-spaces=\"true\"><strong>Arduino<\/strong> are single-board microcontrollers that are easily programmable through a USB connection. They are used with electronics to design embedded system prototypes, the Internet-of-Things (IoT), and electronic gadgets.\u00a0<\/span><\/p>\n<p><span data-preserver-spaces=\"true\">Much like other microcontrollers, Arduino provides software-backed computing and embedded control to basic electronics applications. That means getting started with Arduino is no different than with other systems.\u00a0<\/span><\/p>\n<p><strong><span data-preserver-spaces=\"true\">The setup<br \/>\n<\/span><\/strong><span data-preserver-spaces=\"true\">While working on Arduino, users can learn and work on electronics. To begin, an electronics workbench is recommended and a PC or laptop. For tips on setting up an electronics workbench, check out this tutorial:\u00a0<\/span><a class=\"_e75a791d-denali-editor-page-rtfLink\" href=\"https:\/\/www.engineersgarage.com\/tutorials\/articles-beginners-guide-to-setup-electronics-lab\/\" target=\"_blank\" rel=\"noopener noreferrer\"><em><span data-preserver-spaces=\"true\">Beginners Guide To Set up An Electronics Lab<\/span><\/em><\/a><span data-preserver-spaces=\"true\">.<\/span><\/p>\n<p><span data-preserver-spaces=\"true\">Ideally, these tools or equipment will also be needed:<\/span><\/p>\n<p><span data-preserver-spaces=\"true\"><strong>1.<\/strong> <strong>Breadboards, Micro or Mini Breadboards<\/strong> \u2013 to prototype circuits.<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>2.<\/strong> <strong>Breadboard Power Supply<\/strong> (Optional) \u2013 to supply power to breadboards through adaptor or USB.<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>3.<\/strong> <strong>Male-to-Male Jumper Wires<\/strong> \u2013 to make connection of Arduino pins with Breadboard and make connections between components on Breadboard.<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>4.<\/strong> <strong>Connecting Wires<\/strong> \u2013 to make connections between components on Breadboards.<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>5. Bug Strip Connectors<\/strong> \u2013 to make connections of PCB modules on breadboard.<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>6. Wire Stripper<\/strong> \u2013 to strip connecting wires.<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>7. Wire Cutter<\/strong> \u2013 to cut wires and trim bug strip connectors.<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>8. Set of Tweezers <\/strong>\u2013 to hold components, and place or remove components on breadboard. It will be best to get a set of electrostatic tweezers.<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>9. Precision Screwdrivers<\/strong> \u2013 to calibrate pots, remove components on breadboards etc.<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>10. Protoboards or PCBs<\/strong> \u2013 to make permanent a breadboard circuit. Perf Boards or Strip boards can be used to quickly finalize a prototype design. For better finishing, a PCB can be designed for the prototype using a PCB design software and the entire circuit can be transferred to it.<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>11. Soldering Iron and Solder<\/strong> \u2013 to solder components on Protoboards or PCBs, or to solder bug strip connectors on PCB modules. Leaded or Lead-free solder can be used. Though leaded solder is easy and handy to use, lead-free solder is safe for health.<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>12. Soldering Pump<\/strong> \u2013 to fix soldering errors.<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>13. PCB Holder<\/strong> \u2013 to hold PCBs while soldering.<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>14. Tip Tinner<\/strong> \u2013 to keep soldering tip clean.<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>15. Copper Sponge<\/strong> &#8211; To clean soldering tip.<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>16. Assortment Kit<\/strong> of 1\/4-Watt resistors,<\/span><span data-preserver-spaces=\"true\"> electrolyte and ceramic capacitors, <\/span><span data-preserver-spaces=\"true\">potentiometer and variable resistors, and<\/span><span data-preserver-spaces=\"true\">\u00a0push buttons<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>17.<\/strong> LEDs<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>18. Multimeter<\/strong> \u2013 to measure voltage, current and resistance.<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>19. Bench Power Supply<\/strong> (Optional) \u2013 to power breadboard circuits. The breadboard circuits can be supplied 3.3 and 5V power from Arduino. For a power supply greater than 5V, a battery pack in with voltage regulator ICs can be used. Power adaptors or a USB power supply with breadboard power supply can also be used to power breadboard circuits that require a supply of greater than 5V.\u00a0\u00a0<\/span><\/p>\n<p><span data-preserver-spaces=\"true\">In addition to the above tools, users will also need:<\/span><\/p>\n<p><span data-preserver-spaces=\"true\"><strong>1.<\/strong> Arduino boards of choice<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>2.<\/strong> USB cable for programming Arduino boards<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>3.<\/strong> Computer (PC or Laptop) to run Arduino IDE or any other competitive programming environment.<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>4.<\/strong> Power supply for Arduino \u2013 Arduino boards can be supplied power through a USB, power adaptor, or battery pack. These boards have an on-board voltage regulator, so there\u2019s no need of external voltage regulator.\u00a0<\/span><\/p>\n<p><span data-preserver-spaces=\"true\">For advanced testing of circuits and signals, users may have oscilloscope and logic analyzer. However, these are unnecessary. It\u2019s possible to get display devices, sensors, actuators, application-specific modules, and Arduino shields based on preferences.\u00a0<\/span><\/p>\n<p><span data-preserver-spaces=\"true\">Here are some commonly used display devices in embedded electronics and gadgets:<\/span><\/p>\n<ul>\n<li><span data-preserver-spaces=\"true\">LED(s)<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">RGB LED(s)<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">SSD(s)<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">LED Boards<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Character LCD<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Graphic LCD\/OLED<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Touch Screens\u00a0 \u00a0\u00a0<\/span><\/li>\n<\/ul>\n<p><span data-preserver-spaces=\"true\">Here are the more popular sensors popular for electronics hobbyists:<\/span><\/p>\n<ul>\n<li><span data-preserver-spaces=\"true\">Thermistor<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">TMP36 Temperature Sensor<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">LM35 Temperature Sensor<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">DHT-11\/DHT-22 Digital Temperature Sensor<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Analog Microphone<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Digital Microphone<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Photoresistor (LDR)<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">GUVA &#8211; S12SD Ultraviolet Light Sensor<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">TCS34725 RGB Color Sensor<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Passive Infrared (PIR) Sensor\u00a0<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">BMP-080\/BMP180\/BMP280 Barometric Pressure Temperature and Altitude Sensor<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">MCP9808 High Accuracy I2C Temperature Sensor<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">ADXL335 Accelerometer Sensor\u00a0<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">HC-SR04 Ultrasonic Distance Sensor<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">IR Sensors<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Active\/Passive Buzzers<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Soil Moisture Sensor<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">MPU-6050 3-Axis Accelerometer &amp; Gyro Sensor<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">MQ-9, MQ-8, MQ-7, MQ-6, MQ-5, MQ-4, MQ-3, MQ-2, MQ 135 Gas Sensors<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Proximity Sensors<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">PH Sensors<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Load Cells<\/span><\/li>\n<\/ul>\n<p><span data-preserver-spaces=\"true\">These actuators typically used for controlling mechanical systems:\u00a0<\/span><\/p>\n<ul>\n<li><span data-preserver-spaces=\"true\">Brushed DC Motors<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Brushless DC Motors<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Micro Gear Motors<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Servo Motors<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Stepper Motors\u00a0<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Gear Motors<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">AC Motors<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Linear Actuators<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Air Pumps<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Water Pumps<\/span><\/li>\n<\/ul>\n<p><span data-preserver-spaces=\"true\">Some of the popular application-specific modules include the following &#8211;\u00a0<\/span><\/p>\n<ul>\n<li><span data-preserver-spaces=\"true\">RFID Readers<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Fingerprint Scan Modules<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Camera Modules<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">GSM-GPRS Modules<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">GPS Modules<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">QR Code Scanning Modules<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">RTC DS1307\u00a0<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Wi-Fi Modules<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Bluetooth Modules<\/span><\/li>\n<\/ul>\n<p><span data-preserver-spaces=\"true\">Some of the popular Arduino Shields include:<\/span><\/p>\n<ul>\n<li><span data-preserver-spaces=\"true\">1Ethernet Shield<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Relay Shield<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">L293D Motor Driver Shield<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">GPS Shield<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Data-logging Shield<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">CAN Shield<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Proto Shield<\/span><\/li>\n<\/ul>\n<p><span data-preserver-spaces=\"true\">There are other thousands of sensors, sensor modules, actuators, application-specific modules, and custom-build shields. Engineers and hobbyists can choose based on the project requirement.\u00a0<\/span><\/p>\n<p><span data-preserver-spaces=\"true\">Most of the sensors or sensor modules operate on TTL voltages, which means they can easily interface with Arduino boards. The sophisticated modules, such as RFID or GPS, have serial communication interfaces that also communicate effortlessly with Arduino boards. Several actuators operate on higher voltages, however, which may lead to damaged control circuitry. So, they typically require additional external circuits or shields when controlled by the Arduino.\u00a0<\/span><\/p>\n<p><span data-preserver-spaces=\"true\">The Arduino shields are designed to fit in Arduino boards and may be providing a connectivity solution or ready-to-use embedded solution. Before beginning an Arduino journey, a few pre-requisite skills are necessary.\u00a0<\/span><\/p>\n<p><span data-preserver-spaces=\"true\">For example:\u00a0\u00a0<\/span><\/p>\n<ul>\n<li><span data-preserver-spaces=\"true\">Assembling and prototyping circuits on Breadboards.\u00a0<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Familiar using Multimeter to measure voltage, current, and resistance.\u00a0<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Comfortable using Multimeter to test basic electronic components, such as testing continuity, diodes, and transistors.\u00a0<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Soldering components and connectors on Protoboards and PCBs.\u00a0<\/span><\/li>\n<\/ul>\n<p><span data-preserver-spaces=\"true\">These skills are unnecessary but will provide an advantage:\u00a0<\/span><\/p>\n<ul>\n<li><span data-preserver-spaces=\"true\">Designing PCBs using a PCB design software<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Etching and making PCBs<\/span><\/li>\n<li><span data-preserver-spaces=\"true\">Using Oscilloscopes and Logic Analyzer for testing circuits and signals<\/span><\/li>\n<\/ul>\n<p><strong><span data-preserver-spaces=\"true\">Arduino UNO<\/span><\/strong><span data-preserver-spaces=\"true\"><br \/>\n<\/span><span data-preserver-spaces=\"true\">There are many Arduino and Arduino Pro boards. The most documented and used board is Arduino UNO. \u201cUno\u201d means one in Italian and it is the first-ever Arduino board designed and supported by the company.\u00a0<\/span><\/p>\n<p><span data-preserver-spaces=\"true\">UNO uses AVR ATmega328P as the sitting microcontroller, which is clocked by a 16 MHz ceramic resonator. The major components on this microcontroller board are indicated in this image.\u00a0<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-60855 aligncenter\" src=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Arduino-300x200.jpg\" alt=\"\" width=\"597\" height=\"399\" srcset=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Arduino-300x200.jpg 300w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Arduino-768x512.jpg 768w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Arduino-357x238.jpg 357w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Arduino-600x400.jpg 600w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Arduino.jpg 787w\" sizes=\"auto, (max-width: 597px) 100vw, 597px\" \/><\/p>\n<p>Arduino UNO has two microcontrollers on-board, the ATmega328P and ATmega16UC. The Atmel ATmega16UC is an SMD microcontroller that\u2019s only used to manage USB communications between ATmega328P and the computer. It cannot be used for controlling embedded electronics.<\/p>\n<p>The Arduino can be easily programmed via USB cable using Arduino IDE. It also has ICSP header pins for programming both controllers using an external programming device. The ATmega32P on Arduino UNO can be replaced if damaged. It should be noted, however, that the replacement microcontroller may not come with a bootloader. In that case, the bootloader can be burned to the controller from Arduino IDE. The ATmega328P is clocked by a 16MHz crystal.<\/p>\n<p>The board can be powered by USB cable, AC-to-DC adaptor, or battery pack. The same USB cable that\u2019s used to program the Arduino also supplies power to it. So, Arduino can be powered through a USB of a computer while programmed and the design is under testing.<\/p>\n<p>Once programmed, it will need to be installed elsewhere. For instance, it can be powered through an AC-to-DC adapter or a battery pack. The adaptor or battery pack can be connected through a power connector of the board. The Arduino comes with an on-board voltage regulator, so it requires zero external voltage regulation circuit or device if it&#8217;s powered by a battery pack.<\/p>\n<p>The Arduino UNO requires an operating voltage of 5V, although it can be input in a DC voltage ranging from 7 to 12V. It\u2019s highly recommended to supply a voltage to the Arduino that\u2019s close to its operating voltage, however, as any excess power supply will be wasted by the on-board voltage regulator.<\/p>\n<p>In addition to the voltage regulator, Arduino has two capacitors to clean up any excess voltage.<\/p>\n<p>Arduino UNO is equipped with these hardware features:<\/p>\n<p><strong>1. Digital Input\/Output<\/strong> \u2013 Arduino UNO has 14 digital I\/O pins. Its analog input pins can also be used for digital I\/O. So, there are 20 pins on UNO that can be used for digital input and output. All of these pins operate on TTL logic. The pins sense any input signal level between 2 and 5V as logical HIGH and any input signal level between 0 and 0.8V as logical LOW. Similarly, the pins output a voltage between 2.7 to 5V for logical HIGH and a voltage between 0 to 0.5V for logical LOW. Unconnected pins on the Arduino are in a hanging or floating state.<\/p>\n<p><strong>2. Analog Output<\/strong> \u2013 Arduino does not output any analog signal. Instead, it can output Pulse Width Modulated (PWM) signals that approximate to analog signals. Out of the 14 digital I\/O pins, six pins (marked by tilde sign) can output PWM signals on the UNO. These pins are connections to six PWM channels of ATmega328P microcontroller.<\/p>\n<p><strong>3. Analog Input<\/strong> \u2013 There are six Analog Input pins on Arduino UNO. These pins can be used to sense analog voltages from sensors and sensor modules. The ATmega328P has 8-channel, 10-bit ADC, so the pins can sense analog voltages at 10-bit resolution.<\/p>\n<p><strong>4. Communication Interfaces<\/strong> \u2013 The ATmega328P microcontroller supports programmable serial USART (for peer-to-peer serial communication with a single device), two-wire serial interface (I2C\/TWI for half-duplex serial communication with multiple devices) and master\/slave SPI serial interface (for full-duplex serial communication with multiple devices). The digital I\/O pins can also be used for peer-to-peer serial communication using a software serial that emulates the functioning of a hardware serial port.<\/p>\n<p><strong>5. ATmega328P Built-in Features<\/strong> \u2013 The ATmega328P microcontroller housed in Arduino UNO is a RISC (Reduced Instructions Set Computer) with an instruction set of 131 instructions, most of which have single-clock execution. It has 32, 8-bit registers and an On-chip, two-cycle multiplier. The microcontroller has 32 Kb in-system self-programmable flash memory that supports 10,000 write\/erase cycles. It has 1Kb EEPROM that supports 100,000 write\/erase cycles and 2Kb SRAM. The controller has two 8-bit Timer\/Counters with separate prescaler and compare mode; one 16-bit Timer\/Counter with separate prescaler, compare and capture mode; programmable watchdog timer with a separate On-chip oscillator, On-chip analog comparator and support for external interrupts at two pins.<\/p>\n<p><strong><span data-preserver-spaces=\"true\">Fritzing<\/span><\/strong><span data-preserver-spaces=\"true\"><br \/>\n<\/span><span data-preserver-spaces=\"true\">Fritzing is an open-source hardware initiative that allows documenting prototypes. It can be used to design paper sketches, schematics, and PCB layouts of electronic circuits including circuits that involve Arduino. Once a design is final on Arduino, users can either document or make it permanent. It\u2019s quite handy to design paper sketches and schematics using Fritzing.\u00a0<\/span><\/p>\n<p><span data-preserver-spaces=\"true\">Interestingly, the application simultaneously generates the PCB layouts as well. The final designs can be transferred to protoboards or PCBs as required.\u00a0<\/span><\/p>\n<p><strong><span data-preserver-spaces=\"true\">Arduino IDE<\/span><\/strong><span data-preserver-spaces=\"true\"><br \/>\n<\/span><span data-preserver-spaces=\"true\">Arduino became so popular, thanks to two of its aspects:\u00a0<\/span><\/p>\n<p><span data-preserver-spaces=\"true\"><strong>1.<\/strong> The ease of uploading programs to the microcontroller via a USB cable<br \/>\n<\/span><span data-preserver-spaces=\"true\"><strong>2.<\/strong> A free programming environment<\/span><\/p>\n<p><span data-preserver-spaces=\"true\">This means even novice or non-engineers can productively use Arduino. Its programs can be written on any text editor or programming environment, provided they are saved as \u201c.ino\u201d files. The Arduino programs are called sketches as they\u2019re meant as temporary firmware programs that can be replaced by others.\u00a0<\/span><\/p>\n<p><span data-preserver-spaces=\"true\">In fact, the Arduino can be loaded with sketches thousands of times. ATmega328P supports 10,000 write\/erase cycles of flash memory. The ideal editor and programming environment for programming Arduino is the Arduino IDE.\u00a0<\/span><\/p>\n<p><span data-preserver-spaces=\"true\">The setup for Arduino IDE can be downloaded from the official website of Arduino (arduino.cc). The IDE is available for Microsoft Windows, Mac OS X, and Linux platforms. After installing the IDE, when it is launched, it looks like this\u2026\u00a0<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-60856 aligncenter\" src=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Sketch-example-300x206.jpg\" alt=\"\" width=\"666\" height=\"457\" srcset=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Sketch-example-300x206.jpg 300w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Sketch-example-768x527.jpg 768w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Sketch-example-347x238.jpg 347w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Sketch-example.jpg 1004w\" sizes=\"auto, (max-width: 666px) 100vw, 666px\" \/><\/p>\n<p>At the top, it has main menus. Below the menus, there are function buttons, which serve to verify the sketch for syntax errors, upload a sketch to Arduino, create a new sketch, open or save a sketch, or open the serial monitor.<\/p>\n<p>There\u2019s also an editor area where users can write their Arduino sketches. At the bottom, there\u2019s a debug console, where messages and errors are displayed when verifying or uploading the sketch.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-60857 aligncenter\" src=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Verify-and-upload-example-300x112.jpg\" alt=\"\" width=\"586\" height=\"219\" srcset=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Verify-and-upload-example-300x112.jpg 300w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Verify-and-upload-example-768x288.jpg 768w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Verify-and-upload-example-368x138.jpg 368w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Verify-and-upload-example.jpg 883w\" sizes=\"auto, (max-width: 586px) 100vw, 586px\" \/>In the files menu, the most important one is the preferences:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-60858 aligncenter\" src=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Sketch-example-2-265x300.jpg\" alt=\"\" width=\"549\" height=\"621\" srcset=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Sketch-example-2-265x300.jpg 265w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Sketch-example-2-210x238.jpg 210w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Sketch-example-2.jpg 607w\" sizes=\"auto, (max-width: 549px) 100vw, 549px\" \/>In the preferences, users can:<\/p>\n<ul>\n<li>Choose a storage location for the sketches<\/li>\n<li>Set the editor language, font size, and interface scale<\/li>\n<li>Pick a theme for the IDE<\/li>\n<li>Select the output on compilation and upload via the debug console<\/li>\n<li>Decide on the type of compiler warnings to be shown in the debug console<\/li>\n<li>Use the checkboxes to display line numbers, enable code folding, verify code after upload, use the external editor, check for updates via the startup, save when verifying or uploading, or use the accessibility features.<\/li>\n<\/ul>\n<p>At the bottom, users can specify URLs for additional board managers.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-60859 aligncenter\" src=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Preferences-300x183.jpg\" alt=\"\" width=\"607\" height=\"370\" srcset=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Preferences-300x183.jpg 300w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Preferences-768x469.jpg 768w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Preferences-368x225.jpg 368w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Preferences.jpg 822w\" sizes=\"auto, (max-width: 607px) 100vw, 607px\" \/>If \u201cdisplay line numbers\u201d is checked, line numbers will be visible in the editor area. It\u2019s recommended this checkbox is selected as it will track programming errors by the line numbers. If \u201cenable code folding\u201d is checked, functions can be minimized in the editor area. This feature is useful to view the relevant parts of code. If \u201cuse external editor\u201d is checked, sketches can be written using an external text editor, such as sublime text.<\/p>\n<p>\u201cVerify code after upload\u201d should be checked as it will verify if the program is properly uploading to the microcontroller. If \u201cSave when verifying or uploading\u201d is checked, the sketch will automatically be saved when it is uploaded or verified, which is important.<\/p>\n<p>In the network tab of the preferences, users can also specify network settings so that Arduino IDE can connect with the Internet. By default, Arduino\u2019s auto-detect proxy settings for Internet connectivity are on. Through the file menu, users can also access the sketchbook (this is the folder where the sketches are saved) and several sketch examples.<\/p>\n<p>The edit menu has all of the options to edit code in the editor. The keyboard shortcuts for all of these editing operations are also indicated in the menu buttons. In the sketch menu, buttons to verify\/compile sketch, upload sketch, upload using programmer, export compiled binary, show sketch folder, add file, and include library submenu are available. Simply open the library manager from the &#8216;\u201dInclude library\u201d submenu and search for libraries if available for a component or solution when required.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-60860 aligncenter\" src=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Sketch-example-3-267x300.jpg\" alt=\"\" width=\"550\" height=\"618\" srcset=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Sketch-example-3-267x300.jpg 267w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Sketch-example-3-212x238.jpg 212w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Sketch-example-3.jpg 630w\" sizes=\"auto, (max-width: 550px) 100vw, 550px\" \/><\/p>\n<p>The tools menu has lots of useful features. Using \u201cAuto Format,\u201d users can automatically indent code. The \u201cArchive Sketch\u201d saves the sketch to an archive. If copying code from other sources, the \u201cFix Encoding &amp; Reload\u201d button will fix any encoding problems due to the code being written in a different programming environment.<\/p>\n<p>From the tools menu, users can also open a serial monitor or serial plotter. It\u2019s possible to select the target Arduino board. By default, the IDE automatically detects the board when it\u2019s connected to the computer via a USB cable.<\/p>\n<p>In the tools menu, it\u2019s also possible to select the port that the Arduino board is connected to. By default, this is also automatically detected by the IDE when the Arduino board is connected to a computer. The tools menu also lets users select a programmer if uploading sketches through an external programming device.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-60861 aligncenter\" src=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Sketch-4-257x300.jpg\" alt=\"\" width=\"549\" height=\"641\" srcset=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Sketch-4-257x300.jpg 257w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Sketch-4-204x238.jpg 204w, https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Sketch-4.jpg 611w\" sizes=\"auto, (max-width: 549px) 100vw, 549px\" \/><\/p>\n<p>To write a new sketch, it\u2019s necessary to first create a new file. You can write the Arduino code and save it as \u201c.ino file.\u201d Any programming errors can be detected by pressing the \u201cVerify\u201d function button.<\/p>\n<p>To upload the sketch to a target board, simply connect the board via a USB cable and click on the \u201cUpload\u201d function button. As the sketch will be uploaded on a target board, it will start executing. The boards can be reset to the start of the program execution by pressing the reset button on them.<\/p>\n<p><strong>The datasheets<br \/>\n<\/strong>While working on Arduino, you will be experimenting on a number of components and modules. To start with any electronic component or module, the first thing is to check out its datasheet. The datasheets are well-documented sources of information about a component.<\/p>\n<p>It\u2019s essential to look for the operating requirements, functioning, and applications of a component from its datasheet before using it in a circuit.<\/p>\n<p>The Arduino UNO has ATmega328P as the sitting microcontroller. Start the habit of reading datasheets from the datasheet of ATmega328P microcontroller itself. Simply download the datasheet and check out the microcontroller specifications, operating conditions, and features. It\u2019s interesting to inspect the built-in registers of the ATmega328P. And yes, there are 32 8-bit registers in ATmega328P.<\/p>\n<p><em>In the <a href=\"https:\/\/www.engineersgarage.com\/microcontroller-projects\/articles-basics-of-arduino-sketches-arduino-c\/\" target=\"_blank\" rel=\"noopener noreferrer\">next tutorial,<\/a> we will look at the basic structure of Arduino sketches and get through the basics of embedded C for the Arduino platform.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Arduino are single-board microcontrollers that are easily programmable through a USB connection. They are used with electronics to design embedded system prototypes, the Internet-of-Things (IoT), and electronic gadgets.\u00a0 Much like other microcontrollers, Arduino provides software-backed computing and embedded control to basic electronics applications. That means getting started with Arduino is no different than with other&hellip;<\/p>\n","protected":false},"author":387,"featured_media":60855,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_genesis_hide_title":false,"_genesis_hide_breadcrumbs":false,"_genesis_hide_singular_image":false,"_genesis_hide_footer_widgets":false,"_genesis_custom_body_class":"","_genesis_custom_post_class":"","_genesis_layout":"","footnotes":""},"categories":[32,9],"tags":[1175],"class_list":{"2":"type-post","10":"entry","11":"has-post-thumbnail"},"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.2 (Yoast SEO v25.2) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Arduino compatible coding 02: Getting started with Arduino<\/title>\n<meta name=\"description\" content=\"Learn how to set up arduino and use in electronics to design embedded system prototypes, the Internet-of-Things (IoT), and electronic gadgets.\u00a0\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Arduino compatible coding 02: Getting started with Arduino\" \/>\n<meta property=\"og:description\" content=\"Learn how to set up arduino and use in electronics to design embedded system prototypes, the Internet-of-Things (IoT), and electronic gadgets.\u00a0\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/\" \/>\n<meta property=\"og:site_name\" content=\"Engineers Garage\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/engineersgarage\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Arduino.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"787\" \/>\n\t<meta property=\"og:image:height\" content=\"525\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Nikhil Agnihotri\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@EngineersGarage\" \/>\n<meta name=\"twitter:site\" content=\"@EngineersGarage\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Nikhil Agnihotri\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"14 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/\"},\"author\":{\"name\":\"Nikhil Agnihotri\",\"@id\":\"https:\/\/www.engineersgarage.com\/#\/schema\/person\/3c71105e3b40a1fd12c79c15602914b6\"},\"headline\":\"Arduino compatible coding 02: Getting started with Arduino\",\"datePublished\":\"2024-04-07T19:38:14+00:00\",\"dateModified\":\"2024-04-22T05:11:04+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/\"},\"wordCount\":2758,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.engineersgarage.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Arduino.jpg\",\"keywords\":[\"Arduino\"],\"articleSection\":[\"Arduino Projects\",\"Tutorials\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/\",\"url\":\"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/\",\"name\":\"Arduino compatible coding 02: Getting started with Arduino\",\"isPartOf\":{\"@id\":\"https:\/\/www.engineersgarage.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Arduino.jpg\",\"datePublished\":\"2024-04-07T19:38:14+00:00\",\"dateModified\":\"2024-04-22T05:11:04+00:00\",\"description\":\"Learn how to set up arduino and use in electronics to design embedded system prototypes, the Internet-of-Things (IoT), and electronic gadgets.\u00a0\",\"breadcrumb\":{\"@id\":\"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/#primaryimage\",\"url\":\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Arduino.jpg\",\"contentUrl\":\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Arduino.jpg\",\"width\":787,\"height\":525},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.engineersgarage.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Arduino compatible coding 02: Getting started with Arduino\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.engineersgarage.com\/#website\",\"url\":\"https:\/\/www.engineersgarage.com\/\",\"name\":\"Engineers Garage\",\"description\":\"Electronic Projects, Electrical Engineering Resources, Makers Articles and Product News\",\"publisher\":{\"@id\":\"https:\/\/www.engineersgarage.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.engineersgarage.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.engineersgarage.com\/#organization\",\"name\":\"Engineer's Garage - WTWH Media\",\"url\":\"https:\/\/www.engineersgarage.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.engineersgarage.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2019\/08\/EGlogo.png\",\"contentUrl\":\"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2019\/08\/EGlogo.png\",\"width\":372,\"height\":52,\"caption\":\"Engineer's Garage - WTWH Media\"},\"image\":{\"@id\":\"https:\/\/www.engineersgarage.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/engineersgarage\",\"https:\/\/x.com\/EngineersGarage\",\"https:\/\/www.youtube.com\/channel\/UC0VITh11JSYk-UW7toLebUw\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.engineersgarage.com\/#\/schema\/person\/3c71105e3b40a1fd12c79c15602914b6\",\"name\":\"Nikhil Agnihotri\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.engineersgarage.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/d26b31563fa36169891c8c7d312e9b33de8a0e3da1340ec14ef2de84d5c43497?s=96&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/d26b31563fa36169891c8c7d312e9b33de8a0e3da1340ec14ef2de84d5c43497?s=96&r=g\",\"caption\":\"Nikhil Agnihotri\"},\"url\":\"https:\/\/www.engineersgarage.com\/author\/nikhil-agnihotri\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Arduino compatible coding 02: Getting started with Arduino","description":"Learn how to set up arduino and use in electronics to design embedded system prototypes, the Internet-of-Things (IoT), and electronic gadgets.\u00a0","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/","og_locale":"en_US","og_type":"article","og_title":"Arduino compatible coding 02: Getting started with Arduino","og_description":"Learn how to set up arduino and use in electronics to design embedded system prototypes, the Internet-of-Things (IoT), and electronic gadgets.\u00a0","og_url":"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/","og_site_name":"Engineers Garage","article_publisher":"https:\/\/www.facebook.com\/engineersgarage","og_image":[{"width":787,"height":525,"url":"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Arduino.jpg","type":"image\/jpeg"}],"author":"Nikhil Agnihotri","twitter_card":"summary_large_image","twitter_creator":"@EngineersGarage","twitter_site":"@EngineersGarage","twitter_misc":{"Written by":"Nikhil Agnihotri","Est. reading time":"14 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/#article","isPartOf":{"@id":"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/"},"author":{"name":"Nikhil Agnihotri","@id":"https:\/\/www.engineersgarage.com\/#\/schema\/person\/3c71105e3b40a1fd12c79c15602914b6"},"headline":"Arduino compatible coding 02: Getting started with Arduino","datePublished":"2024-04-07T19:38:14+00:00","dateModified":"2024-04-22T05:11:04+00:00","mainEntityOfPage":{"@id":"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/"},"wordCount":2758,"commentCount":0,"publisher":{"@id":"https:\/\/www.engineersgarage.com\/#organization"},"image":{"@id":"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/#primaryimage"},"thumbnailUrl":"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Arduino.jpg","keywords":["Arduino"],"articleSection":["Arduino Projects","Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/","url":"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/","name":"Arduino compatible coding 02: Getting started with Arduino","isPartOf":{"@id":"https:\/\/www.engineersgarage.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/#primaryimage"},"image":{"@id":"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/#primaryimage"},"thumbnailUrl":"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Arduino.jpg","datePublished":"2024-04-07T19:38:14+00:00","dateModified":"2024-04-22T05:11:04+00:00","description":"Learn how to set up arduino and use in electronics to design embedded system prototypes, the Internet-of-Things (IoT), and electronic gadgets.\u00a0","breadcrumb":{"@id":"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/#primaryimage","url":"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Arduino.jpg","contentUrl":"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Arduino.jpg","width":787,"height":525},{"@type":"BreadcrumbList","@id":"https:\/\/www.engineersgarage.com\/articles-getting-started-with-arduino-uno-and-arduino-ide\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.engineersgarage.com\/"},{"@type":"ListItem","position":2,"name":"Arduino compatible coding 02: Getting started with Arduino"}]},{"@type":"WebSite","@id":"https:\/\/www.engineersgarage.com\/#website","url":"https:\/\/www.engineersgarage.com\/","name":"Engineers Garage","description":"Electronic Projects, Electrical Engineering Resources, Makers Articles and Product News","publisher":{"@id":"https:\/\/www.engineersgarage.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.engineersgarage.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.engineersgarage.com\/#organization","name":"Engineer's Garage - WTWH Media","url":"https:\/\/www.engineersgarage.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.engineersgarage.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2019\/08\/EGlogo.png","contentUrl":"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2019\/08\/EGlogo.png","width":372,"height":52,"caption":"Engineer's Garage - WTWH Media"},"image":{"@id":"https:\/\/www.engineersgarage.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/engineersgarage","https:\/\/x.com\/EngineersGarage","https:\/\/www.youtube.com\/channel\/UC0VITh11JSYk-UW7toLebUw"]},{"@type":"Person","@id":"https:\/\/www.engineersgarage.com\/#\/schema\/person\/3c71105e3b40a1fd12c79c15602914b6","name":"Nikhil Agnihotri","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.engineersgarage.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/d26b31563fa36169891c8c7d312e9b33de8a0e3da1340ec14ef2de84d5c43497?s=96&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d26b31563fa36169891c8c7d312e9b33de8a0e3da1340ec14ef2de84d5c43497?s=96&r=g","caption":"Nikhil Agnihotri"},"url":"https:\/\/www.engineersgarage.com\/author\/nikhil-agnihotri\/"}]}},"featured_image_src":"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Arduino.jpg","featured_image_src_square":"https:\/\/www.engineersgarage.com\/wp-content\/uploads\/2020\/03\/Arduino.jpg","author_info":{"display_name":"Nikhil Agnihotri","author_link":"https:\/\/www.engineersgarage.com\/author\/nikhil-agnihotri\/"},"_links":{"self":[{"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/posts\/60854","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/users\/387"}],"replies":[{"embeddable":true,"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/comments?post=60854"}],"version-history":[{"count":0,"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/posts\/60854\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/media\/60855"}],"wp:attachment":[{"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/media?parent=60854"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/categories?post=60854"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.engineersgarage.com\/wp-json\/wp\/v2\/tags?post=60854"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}