Software

Legacy IDE

Mediul integrat de dezvoltare Arduino (Arduino IDE) este o aplicație multiplatformă (Windows, macOS, Linux), bazată pe Processing IDE și scrisă în Java. Folosește API-ul Wiring ca stil de programare și include un editor de cod cu funcții precum evidențierea sintaxei, indentare automată, căutare și înlocuire, precum și butoane pentru compilarea și încărcarea rapidă a programelor pe plăci Arduino. Codul sursă al IDE-ului este disponibil sub licența GNU GPL v2.

Arduino IDE acceptă limbajele C și C++, oferind o bibliotecă software din proiectul Wiring pentru funcții comune de intrare/ieșire. Programele includ doar două funcții principale — inițializarea și bucla principală — care sunt compilate cu suita GNU toolchain. Programul avrdude convertește codul executabil într-un fișier hexadecimal încărcat ulterior în placa Arduino. Inițial dedicat plăcilor Atmel AVR, IDE-ul este acum compatibil și cu alte platforme precum PIC, STM32, TI MSP430 și ESP32.

UI Legacy
Legacy IDE conținând codul pentru funcția Blink

IDE 2.0

O versiune alfa a noului Arduino IDE a fost lansată pe 18 octombrie 2019 sub numele Arduino Pro IDE, urmată de versiunea beta pe 1 martie 2021, redenumită IDE 2.0. Versiunea stabilă a fost publicată pe 14 septembrie 2022.

Noul IDE folosește în continuare Arduino CLI, dar aduce un mediu de dezvoltare modern, completare automată și o interfață bazată pe Eclipse Theia. Printre noile funcții se numără: manageri noi pentru plăci și biblioteci, explorator de proiecte, verificare a sintaxei, monitor serial cu grafic, mod întunecat, versiune pe 64 de biți și funcționalitate de depanare (debugging).

Depanarea permite execuție pas cu pas, breakpoints și vizualizarea memoriei, necesitând un cip și o sondă de debug. Placa Arduino Zero oferă suport nativ, iar alte plăci, precum cele SAMD21, pot fi depanate cu dispozitive precum SEGGER J-Link sau Atmel-ICE. IDE-ul 2.0 permite și depanarea plăcilor terțe compatibile cu GDB și OPENOCD, inclusiv modele bazate pe ATMega328P și CH32 RISC-V.

UI IDE 2.0
IDE 2.0 conținând codul pentru funcția Blink

Sketch

O schiță (sketch) este un program scris în mediul Arduino IDE. Schițele sunt salvate pe calculatorul de dezvoltare ca fișiere text cu extensia .ino, iar versiunile mai vechi ale IDE-ului (anterioare 1.0) foloseau extensia .pde.

Un program minimal în C/C++ pentru Arduino conține doar două funcții principale:

Arduino este o platformă de hardware open-source, cu designuri distribuite sub licența Creative Commons Attribution Share-Alike 2.5. Deși hardware-ul și software-ul sunt disponibile gratuit, numele „Arduino” este rezervat produselor oficiale, iar lucrările derivate ar trebui să evite folosirea acestuia fără permisiune. Multe produse compatibile Arduino folosesc denumiri care se termină în „-duino”.

Plăcile Arduino folosesc, de obicei, microcontrolere Atmel 8-bit AVR (de exemplu, ATmega8, ATmega328, ATmega2560) cu caracteristici variabile. Arduino Due, care folosește microcontrolerul 32-bit Atmel SAM3X8E, a fost introdus în 2012. Plăcile au pini pentru o conectare ușoară la module suplimentare numite shield-uri, care pot fi stivuite și controlate printr-o magistrală serială I²C. Unele plăci, cum ar fi LilyPad , nu au regulator de tensiune din motive de design specific.

Placă cu codul pentru Blink
Placă folosind funcția Blink