Arduinoa ohjelmoidaan c- ja c++-kieliin perustuvalla ohjelmointikielellä. Ohjelmoinnissa on kaksi pääfunktiota, setup() ja loop(). Setup()-funktiossa määritellään tarvittavat muuttujat, kirjastot ja muut vastaavat esitiedot, ja loop()-funktiota pyöritetään jatkuvasti setup()-funktion suorittamisen jälkeen. Varsinainen toiminnallisuus sijoitetaan loop()-funktioon.