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
Review Xiaomi Redmi Note 15 Pro Plus – Verrassende doorbijter
© Wesley Akkerman
Huis

Review Xiaomi Redmi Note 15 Pro Plus – Verrassende doorbijter

Als we naar de specificaties van de Xiaomi Redmi Note 15 Pro Plus kijken en daar de prijs aan koppelen, dan lijkt het erop dat je veel voor een acceptabel bedrag krijgt. Maar is dit ook een praktische smartphone die gemakkelijk een dag doorkomt?

Goed
Conclusie

De Xiaomi Redmi Note 15 Pro+ blinkt uit door zijn fenomenale batterijduur en razendsnelle oplaadtijden, waarmee hij z’n concurrenten achter zich laat. Hoewel de prestaties stabiel zijn en het toestel tegen een stootje kan, blijven de camera’s en de softwareondersteuning achter bij de top van dit segment. Gelukkig is dit wel een betrouwbaar apparaat voor intensieve gebruikers die media consumeren en duurzaamheid waarderen. Desondanks raden we toch aan even te wachten tot een prijsdaling, dan haal je pas echt een scherpe deal in huis.

Plus- en minpunten
  • Luxe uitstraling en gevoel
  • Heel robuust
  • Prachtig scherm
  • Indrukwekkende batterijduur
  • Laadt lekker snel op
  • Geen gamemachine
  • Camerasysteem laat het soms afweten
  • Veel vooraf geïnstalleerde apps

Processor: Snapdragon 7s Gen 4 (max. 2,7 GHz)

Scherm: 6,83-inch AMOLED, 1,5K resolutie, 120 Hz en 3200 nits helderheid

Geheugen: Tot 12 GB RAM en 512 GB opslag

Hoofdcamera: 200 MP met optische beeldstabilisatie (OIS)

Selfiecamera: 32 MP

Batterij: 6500 mAh met 100W snelladen

Waterdichtheid: IP68-certificering

Software: Xiaomi HyperOS 2 met geïntegreerde Google Gemini AI

De Xiaomi Redmi Note 15 Pro Plus volgt moderne trends met een stevig ontwerp en platte zijkanten. De variant die wij testen (Mocha Brown) valt op door een achterkant van vegan leer, dat voor extra grip en een luxe gevoel zorgt. Zeker in vergelijking met de doorgaans glazen ruggen van concurrenten. Met 207 gram is hij niet zwaar, maar andere midrangers kunnen gemiddeld genomen lichter zijn. Verder is de IP69K-certificering indrukwekkend, waardoor het toestel bestand is tegen stof, water, hogedrukspuiten (!) én hoge watertemperaturen.

Het toestel is uitgerust met een fors 6,83-inch amoledpaneel dat vrijwel de hele voorkant vult. En met de hoge resolutie (1280 x 2772 pixels) en een verversingssnelheid van 120 Hz oogt alles scherp en vloeiend. Het display overtuigt verder met diepe zwartwaarden, felle kleuren en een indrukwekkende piekhelderheid van 3200 nits. Dit maakt het scherm goed afleesbaar in direct zonlicht. Dankzij de Gorilla Glass Victus 2-beschermlaag beschikt het apparaat tot slot over uitstekende bescherming tegen krassen en valschade.

©Wesley Akkerman

©Wesley Akkerman

©Wesley Akkerman

Vooral vlot en stabiel

Onder de motorkap vinden we de Snapdragon 7s Gen 4-chip, die zorgt voor een stabiele en vlotte gebruikservaring zonder haperingen. Als je de chipset door de benchmark-tools zou halen, legt hij het wellicht af tegen prijsgenoot Pixel 9a, maar toch doet het toestel het in de praktijk meer dan prima. Hij blijft koel en responsief, ook wanneer je gaat multitasken. Voor zware games is de Xiaomi Redmi 15 Pro Plus wat minder geschikt, en daar verandert de hoeveelheid werkgeheugen van 8 GB helaas niets aan. Dit is geen goede Android-gamemachine.

De ster van de show is de gigantische batterij van 6500 mAh, een capaciteit die we in dit prijssegment zelden zien. Bij intensief gebruik houdt het toestel het moeiteloos twee dagen vol, helemaal als je het gamen links laat liggen. Met de 100W-snellaadfunctie laad je hem in slechts 40 minuten helemaal vol, mits je de juiste (Xiaomi-)lader gebruikt. Draadloos opladen ontbreekt helaas, maar het enorme uithoudingsvermogen en de indrukwekkende laadsnelheid maken dat voor de meeste gebruikers meer dan goed.

4x zoom.
2x zoom.

Walkietalkiefunctie

De Xiaomi Redmi Note 15 Pro+ draait daarnaast op HyperOS 2.0, gebaseerd op Android 15. De interface voelt modern en vloeiend aan, met snelle animaties en met de inmiddels bekende AI-toevoegingen van Google (zoals Circle to Search). Hoewel Xiaomi vier jaar aan Android-updates belooft (wat netjes is voor deze prijsklasse), zul je na de eerste installatie wel even wat tijd willen besteden aan het verwijderen van de nodige vooraf geïnstalleerde bloatware-apps. Een unieke toevoeging is de nieuwe Offline Communication, waardoor je Xiaomi-toestel een soort walkietalkie wordt en gratis communiceert met andere Xiaomi's.

De eyecatcher achterop is de 200MP-hoofdcamera, die dankzij de grote sensor fijne en scherpe foto's met veel detail maakt. Een dedicated zoomlens ontbreekt, maar er zijn meer dan genoeg megapixels waardoor je prima digitaal kunt inzoomen (of croppen) zonder al te veel kwaliteitsverlies (tot 4x).

De 8MP-groothoeklens is helaas een minder sterk punt en presteert vooral bij weinig licht matig. Video-opnames zijn stabiel en zien er in 4K goed uit, al blijft de framerate beperkt tot 30 fps. Voor selfies is er een upgrade naar 32MP; dat resulteert in heldere portretten die ideaal zijn voor sociale media en videobellen.

1x.
0,5x.

Xiaomi Redmi Note 15 Pro Plus kopen?

De Xiaomi Redmi Note 15 Pro+ blinkt uit door zijn fenomenale batterijduur en razendsnelle oplaadtijden, waarmee hij z’n concurrenten achter zich laat. Hoewel de prestaties stabiel zijn en het toestel tegen een stootje kan, blijven de camera’s en de softwareondersteuning achter bij de top van dit segment. Gelukkig is dit wel een betrouwbaar apparaat voor intensieve gebruikers die media consumeren en duurzaamheid waarderen. Desondanks raden we toch aan even te wachten tot een prijsdaling, dan haal je pas echt een scherpe deal in huis.

▼ Volgende artikel
Warner Bros.-overname door Netflix ligt onder vergrootglas in VS
© Koray - stock.adobe.com
Huis

Warner Bros.-overname door Netflix ligt onder vergrootglas in VS

Het Amerikaanse ministerie van Justitie gaat onderzoeken of Netflix een monopoliepositie krijgt wanneer het Warner Bros. daadwerkelijk overneemt.

Netflix en Warner Bros. hebben vorig jaar een overeenkomst gesloten waarbij eerstgenoemde streamingbedrijf het filmproductiebedrijf overneemt. Als dit doorgaat, zal Netflix de films van Warner Bros. in handen krijgen, alsmede concurrerende streamingdienst HBO Max.

The Wall Street Journal meldt nu dat het ministerie in gesprek is met concurrenten om er achter te komen of het bedrijf nu al concurrenten buitensluit of misbruik maakt van de prominente plek die het heeft binnen de maatschappij. Dit om er achter te komen of de overname van Warner Bros. door Netflix wel verantwoord is.

Onderzoek is gebruikelijk

Het is vrij gebruikelijk dat wanneer twee grote bedrijven uit vergelijkbare sectoren fuseren, of één bedrijf de ander overneemt, dit wordt getoetst door waakhonden waar de bedrijven vandaan komen. Het hoeft niet te betekenen dat de overname geblokkeerd wordt, maar het kan afhankelijk van de bevindingen wel een optie zijn.

Overigens onderzoekt het ministerie ook of het verantwoord is dat Paramount Warner Bros. overneemt. Ook Paramount wil dat namelijk doen, al lijken Netflix en Warner Bros. vooral met elkaar in zee te willen.

Onlangs gaf een topman bij Netflix onlangs al aan dat mensen die Netflix te duur zouden vinden worden mocht het gecombineerd worden met HBO, een simpele actie kunnen uitvoeren: hun abonnement met één klik opzeggen.

Nieuw op ID: het complete plaatje

Misschien valt het je op dat er vanaf nu ook berichten over games, films en series op onze site verschijnen. Dat is een bewuste stap. Wij geloven dat technologie niet stopt bij hardware; het gaat uiteindelijk om wat je ermee beleeft. Daarom combineren we onze expertise in tech nu met het laatste nieuws over entertainment. Dat doen we met de gezichten die mensen kennen van Power Unlimited, dé experts op het gebied van gaming en streaming. Zo helpen we je niet alleen aan de beste tv, smartphone of laptop, maar vertellen we je ook direct wat je erop moet kijken of spelen. Je vindt hier dus voortaan de ideale mix van hardware én content.