ID.nl logo
Huis

Arduino programmeren met Arduino IDE: De basis

Een Arduino-bordje doet niets als er geen software op draait. In deze workshop zetten we de Arduino IDE-ontwikkelomgeving op, schrijven we wat code en uploaden we die naar het bordje zodat het een led doet knipperen. Dit zijn de basics van het Arduino programmeren.

De makers van Arduino produceren niet alleen de microcontrollerbordjes, maar ook de ontwikkelsoftware om er je eigen code op te draaien: de Arduino IDE. Die bestaat zowel voor Windows, Linux als macOS. Download de nieuwste versie (op het moment van schrijven was dat versie 1.8.8).

Voor Windows heb je de keuze tussen een exe- en een zip-bestand. De eerste is gemakkelijker, omdat dit een installatieprogramma is dat onmiddellijk ook de juiste driver voor de usb-verbinding met je Arduino installeert. De standaardinstellingen van het installatieprogramma zijn oké.

Arduino-schetsen

Een schets of ‘sketch’ is de naam die Arduino geeft aan een programma. Elke Arduino-schets bestaat uit twee functies: setup en loop. In die eerste zet je de code die je Arduino-bordje één keer dient uit te voeren, vlak nadat de microcontroller opgestart of gereset is. Daarna wordt de functie loop continu herhaald. De code die je in deze functie zet, draait dus zolang je Arduino ingeschakeld is, telkens opnieuw.

De Arduino IDE komt standaard al met talloze voorbeeldschetsen. Klik in het menu Bestand op Voorbeelden en kies dan in de categorie 01.Basics voor Blink. De code begint met een groot blok tekst tussen regels die beginnen met /* respectievelijk */. Daarmee geef je aan dat de tekst hiertussen commentaar is: de Arduino IDE negeert dit, zodat je hier zelf uitleg voor anderen kunt typen. De makers van de voorbeeldschets leggen hier uit wat de schets doet en verwijzen naar een webpagina met meer informatie. Het is aan te raden om je eigen Arduino-schetsen ook te beginnen met zo’n blok commentaar.

Daarna komen de twee verplichte Arduino-functies, setup en loop. We zien hier ook regels die beginnen met // en we zien ook in het midden van regels // met een tekst erachter. Dit is een tweede manier om commentaar in een Arduino-schets op te nemen: de Arduino IDE negeert alles vanaf // tot het einde van de regel.

Het is niet de bedoeling dat je in je eigen schetsen bij élke regel code commentaar zet zoals in dit voorbeeld, maar maak er wel een gewoonte van om wat complexere regels code van commentaar en uitleg te voorzien, zodat je ze nog begrijpt als je de code over enkele maanden opnieuw bekijkt.

©PXimport

Setup en loop

Laten we even naar de code van het voorbeeld Blink kijken. In de functie setup is er maar één regel code nodig:

pinMode(LED_BUILTIN, OUTPUT);

Hiermee stellen we de digitale pin met de naam LED_BUILTIN in als uitvoerpin, zodat we er later in de code een 0 of 1 naar kunnen schrijven. De naam LED_BUILTIN verwijst op alle Arduino-bordjes naar de ingebouwde led op het printplaatje, meestal pin 13. Door de voorgedefinieerde naam LED_BUILTIN te gebruiken, hoef je je code niet aan te passen als je ze op een ander bordje wilt draaien waar de ingebouwde led een ander pinnummer heeft.

In de functie loop willen we de ingebouwde led doen knipperen. Eerst schrijven we HIGH naar de juiste digitale pin:

digitalWrite(LED_BUILTIN, HIGH);

Omdat het om een digitale pin gaat, kunnen we twee mogelijke waardes naar de pin schrijven: HIGH (overeenkomend met 1) of LOW (overeenkomend met 0). Waarom heet de waarde hier HIGH en niet 1? Omdat dit de spanning is die op de pin gezet wordt: hoog. Je vindt de spanning van jouw Arduino-bordje in deze tabel met de specificaties in het begin van de kolom Operating/Input Voltage. Als jouw Arduino-bordje op 5 V werkt, komt HIGH hier overeen met een spanning van 5 V. Het gevolg? Er vloeit stroom door de ingebouwde led, die begint te branden.

Daarna wachten we een seconde met:

delay(1000);

De 1000 staat voor 1000 milliseconden. In de volgende regel schrijven we LOW naar de digitale pin. Dat komt overeen met een spanning van 0 V. Daardoor vloeit er geen stroom door de ingebouwde led, die daarop uitdooft. Daarna wachten we weer een seconde. We komen nu aan het einde van de functie loop, die daarna weer herhaald wordt: het knipperen begint weer van voren af aan. En op deze manier blijft de ingebouwde led continu knipperen tot de Arduino geen stroom meer krijgt.

Code uploaden

We hebben nu uitgelegd hoe de code werkt uit het voorbeeld Blink, maar je hebt de led nog niet zien knipperen. De code moet eerst geüpload worden naar de Arduino om hem te laten werken. De instructies om met een Arduino-bordje aan de slag te gaan hangen af van het type bordje. Ga via deze link naar de pagina Getting Started with Arduino and Genuino products en klik met rechts op de link die bij je bordje hoort. We tonen in deze workshop hoe dit verloopt met de Arduino Nano, omdat we dit door zijn kleine afmetingen een handig bordje vinden voor heel wat toepassingen.

©PXimport

Steek de ene kant van de mini-usb-naar-usb-kabel in de mini-usb-connector op je Arduino Nano. Sluit de andere kant aan op een usb-poort van je pc. Klik in het menu Hulpmiddelen van Arduino IDE op Board en selecteer in het lange submenu dat verschijnt Arduino Nano. Controleer of er bij Poort een seriële poort vermeld staat, zoals COM1 op Windows of /dev/ttyUSB0 op Linux. Als alles correct lijkt, klik dan linksboven op het knopje met het pijltje naar rechts.

Arduino IDE compileert nu je schets naar machinecode voor de microcontroller en uploadt je code naar het bordje. De voortgang krijg je in het zwarte tekstveld onderaan te zien. Als alles goed gaat (en je dus geen foutmeldingen in rode letters te zien krijgt in het tekstveld onderaan), begint de ingebouwde led van je Arduino te knipperen. Dat werkt ook als je naderhand je Arduino rechtstreeks van een voedingsadapter van stroom voorziet: de code blijft opgeslagen tot je die met een nieuwe schets overschrijft.

▼ Volgende artikel
Bloober Team kondigt horrorspel Layers of Fear 3 aan
Huis

Bloober Team kondigt horrorspel Layers of Fear 3 aan

De Poolse ontwikkelaar heeft Layers of Fear 3 aangekondigd, een nieuw deel in diens horrorgamefranchise.

Bloober Team hintte al een tijdje naar een nieuwe aankondiging - er was geruime tijd een timer te zien die afliep naar Valentijnsdag afgelopen weekend. Die timer bleek dus voor Layers of Fear 3 te zijn.

Er is nog geen gameplay van het spel getoond, maar er werd wel een live-action teaserfilmpje online geplaatst waarin een man het gericht 'The Sick Rose' van William Blake voorleest. Meer info over de game werd niet gegeven.

Watch on YouTube

In de eerste Layers of Fear-game uit 2016 besturen spelers een schilder die in een Victoriaans landhuis probeert zijn meesterwerk af te maken, terwijl het landhuis geheimen over zijn verleden onthult. Er kwam een vervolg uit, alsmede een remake uit 2023 die simpelweg 'Layers of Fear' heet en de verhalen van de eerste twee games combineert en nieuw materiaal toevoegt.

Bloober Team heeft de laatste jaren flink aan de weg getimmerd als leverancier van horrorspellen. Naast de Layers of Fear-games heeft het bedrijf ook de remake van Silent Hill 2 gemaakt, alsmede Cronos: The New Dawn, Blair Witch en The Medium. Het bedrijf werkt samen met Konami ook aan een remake van de eerste Silent Hill.

▼ Volgende artikel
Mixen, pureren en hakken? Deze Philips handmixer is dé keukenfavoriet van 2025
© Philips
Huis

Mixen, pureren en hakken? Deze Philips handmixer is dé keukenfavoriet van 2025

De Philips HR3781/20 Handmixer is door consumenten uitgeroepen tot Best Reviewed van het Jaar 2025. En dat is niet zonder reden: deze alleskunner overtuigt in prestaties, gemak en veelzijdigheid - en dat zie je terug in de reviews.

Partnerbijdrage - in samenwerking met Philips

De publieksfavoriet volgens échte gebruikers

De Best Reviewed van het Jaar-award draait niet om mooie verkooppraatjes, maar om ervaringen van mensen die het product echt hebben gebruikt. Op Kieskeurig.nl delen duizenden consumenten hun mening over apparaten, gebaseerd op hoe die in de praktijk bevallen. Die ongefilterde reviews vormen de basis voor de jaarlijkse awards. Alleen producten die consequent goed scoren op gebruiksgemak, prestaties en tevredenheid komen in aanmerking. De Philips HR3781/20 handmixer heeft zich een jaar lang bewezen in keukens door het hele land - en dat leverde hem een plek op als publieksfavoriet van het jaar.

Een mixer die méér kan

De Philips HR3781/20 is geen gewone handmixer. Deze krachtpatser uit de 5000-serie levert 500 watt vermogen, wat bovengemiddeld is in deze productcategorie. Of je nu luchtig beslag mixt, brooddeeg kneedt of een warme soep pureert - dit apparaat draait er zijn hand niet voor om.

Wat de set echt compleet maakt, zijn de meegeleverde accessoires: naast gardes en deeghaken krijg je ook een staafmixer-opzetstuk, een hakmolen én een maatbeker met slimme opbergfunctie. Alles past netjes in elkaar en is makkelijk op te bergen.

Ook aan het gebruiksgemak is gedacht. Dankzij het ergonomische ontwerp ligt de mixer prettig in de hand, en het antispat-ontwerp zorgt ervoor dat je keuken schoon blijft - zelfs bij het mengen van vloeibare ingrediënten. Met vijf snelheden en een turbofunctie pas je de kracht eenvoudig aan je bereiding aan.

©Philips

Waarom gebruikers deze mixer aanraden

Wat gebruikers vooral waarderen aan de Philips HR3781/20, is hoe veelzijdig en compleet hij is. Velen geven aan dat de mixer in korte tijd onmisbaar is geworden. Zo noemt iemand het "een multifunctionele handmixer, niet meer weg te denken uit de keuken door de vele opties en manieren van gebruik." Van beslag kloppen tot soep pureren en groenten hakken: alles werkt soepel, en de opzetstukken klik je eenvoudig vast. Een gebruiker schrijft: "Ik gebruik hem voor simpele dingen zoals beslag maken of slagroom kloppen, maar ook voor soep pureren en groenten hakken. De accessoires werken goed en klikken makkelijk vast."

Ook de krachtige motor maakt indruk: "Zelfs bij het kneden van zwaardere brooddegen houdt hij zich goed staande," merkt een reviewer op. Het antispat-ontwerp valt eveneens in de smaak, met name door de slimme softstartfunctie: "Daardoor zit niet de hele keuken onder de spetters als je begint met mixen." Daarnaast krijgt ook het opbergsysteem veel lof. Zoals iemand opmerkt: "De accessoires klik je gewoon vast in het deksel. Zo ligt er niets los rond en dat bespaart echt veel ruimte."

Al met al is de toon in de reviews overtuigend positief: een krachtige, praktische mixer die aanvoelt alsof je meerdere apparaten in één keer in huis haalt.

©Philips

Een eerlijk oordeel

Natuurlijk is geen enkel apparaat zonder minpunten. Sommige gebruikers vinden het snoer aan de korte kant, wat vooral in keukens met minder gunstig geplaatste stopcontacten wat behelpen kan zijn. Ook wordt genoemd dat de mixer bij langdurig gebruik wat zwaar in de hand kan liggen. En bij heel stevig deeg moet je soms even doorzetten. Toch blijken dit voor de meeste mensen geen dealbreakers. Ze roemen vooral de kracht, veelzijdigheid en het gemak waarmee je de mixer gebruikt én weer opbergt. Daardoor wegen de kleine nadelen niet op tegen de dagelijkse voordelen. Of je nu een fanatieke thuisbakker bent of gewoon een handige hulp zoekt die meerdere apparaten vervangt: de Philips HR3781/20 is een slimme, doordachte keuze - en dat zie je terug in de enthousiaste beoordelingen.

©Philips

De Philips 5000 Series HR3781/20 handmixer

Ontdek hem