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
Motorola brengt edge 60 fusion uit met drie nieuwe moto AI-functies
Huis

Motorola brengt edge 60 fusion uit met drie nieuwe moto AI-functies

Motorola heeft de edge 60 fusion aangekondigd, een premium smartphone die een elegant ontwerp combineert met geavanceerde AI-functies. Het toestel is het eerste Motorola-model dat standaard is uitgerust met geïntegreerde moto AI-functionaliteit.

De smartphone beschikt over een uniek quad-curve edge display met door Pantone gevalideerde kleuren. Het scherm is beschermd met Corning Gorilla Glass 7i, dat twee keer betere val- en krasbestendigheid biedt dan voorgaande versies. 

Geïntegreerde moto ai

Na een eerder bètaprogramma is de motorola edge 60 fusion het eerste toestel waarbij moto ai direct is geïntegreerd. De smartphone bevat AI-functies zoals Pay Attention (voor het opnemen, noteren en samenvatten van audio), Remember This (om live momenten of informatie vast te leggen) en Magic Canvas (voor het genereren van afbeeldingen op basis van tekstinstructies). 

Innovatief display en robuust ontwerp

Het toestel heeft volgens Motorola 's werelds eerste quad-curve edge display met door Pantone gevalideerde kleuren. Het ontwerp omvat hoogwaardige materialen, waaronder een op leer geïnspireerde coating en canvas-achtige afwerkingen in zorgvuldig samengestelde kleuren.

De motorola edge 60 fusion is niet alleen stijlvol maar ook robuust gebouwd. De telefoon voldoet aan militaire standaarden (MIL-STD 810H) voor duurzaamheid en heeft zowel IP68 als IP69 certificeringen voor waterbescherming. Het toestel kan onderdompeling in zoet water tot 1,5 meter diepte gedurende maximaal 30 minuten weerstaan. Dankzij Water Touch-technologie blijft het touchscreen werken, zelfs als het nat is. 

Camera met Sony-sensor

De hoofdcamera heeft een 50MP Ultra Pixel sensor, gecombineerd met een geavanceerde Sony LYTIA 700C sensor en optische beeldstabilisatie (OIS). Hierdoor maakt de camera ook bij weinig licht goede foto's. De ultrabrede lens met ingebouwde macrovisie biedt een gezichtsveld van 122 graden en kan tot 3 cm inzoomen voor extreme close-ups . 

De 32MP selfiecamera gebruikt Quad Pixel-technologie voor betere prestaties bij minder licht. Een 3-in-1 lichtsensor kalibreert automatisch de lichtgevoeligheid voor optimale belichting en kleur.

Entertainment en batterij

Het 6,67 inch pOLED-scherm heeft een Super HD (1220p) resolutie en een verversingssnelheid van 120Hz. Het display is zowel Pantone als Pantone SkinTone gevalideerd voor een natuurgetrouwe kleurweergave. Voor audio is het toestel uitgerust met Dolby Atmos, twee stereoluidsprekers en een Hi-Res gecertificeerd geluidssysteem.

De motorola edge 60 fusion wordt aangedreven door de MediaTek Dimensity 7300 processor, heeft tot 8GB RAM en tot 256GB opslag. De 5200mAh batterij ondersteunt 68W TurboPower opladen, waarmee gebruikers na slechts 8 minuten opladen een volle dag vooruit kunnen.

De smartphone draait op Android 15 en bevat Moto Secure en ThinkShield voor extra beveiliging, evenals Hello UX voor aanpassingsopties. De motorola edge 60 fusion is vanaf half april verkrijgbaar voor een adviesprijs van 329,99 euro.

Bekijk hier andere Motorola-modellen op Kieskeurig.nl:

▼ Volgende artikel
Wat is een VPN kill switch, en heb jij die nodig?
© Foto-Ruhrgebiet
Huis

Wat is een VPN kill switch, en heb jij die nodig?

Steeds meer mensen kiezen voor een VPN om veilig te internetten. Een kill switch helpt om die veiligheid te garanderen. Je leest er alles over in dit artikel.

Een VPN gebruik je voor de veiligheid en je privacy. Een kill switch is daarom een logische toevoeging: want daarmee zorg je ervoor dat je altijd beschermd bent. In dit artikel lees je: 🛡️ Hoe een VPN kill switch werkt 🛡️ Welke apps je wel laat afsluiten en welke niet 🛡️ Voor wie een VPN kill switch nuttig is

Lees ook: Wat is VPN en waarom heb je het nodig?

Je gebruikt een Virtual Private Network (VPN) voor anonimiteit, veilige bestandsoverdracht en/of het omzeilen van geografische blokkades. Hoewel een kill switch optioneel is bij een (VPN), hoort het er eigenlijk wel echt bij: het is een soort extra slot op de deur om die zaken te garanderen.

©Funtap

Zo werkt een VPN kill switch

Een kill switch controleert continu of je VPN nog in gebruik is. Wordt er vastgesteld dat dat niet het geval is? Dan blokkeert een kill switch de verbinding van je internet. Je bent dan dus ook niet meer verbonden. Een goede kill switch zorgt er ook voor dat je automatisch weer verbonden wordt met het internet als de problemen verholpen zijn.

Blokkeren: je complete apparaat of bepaalde toepassingen

Een kill switch gebruiken is helemaal niet moeilijk. Je stelt het allemaal gewoon in via je VPN-applicatie. Daarin bepaal je ook of je pc of laptop volledig van het internet losgekoppeld wordt als de VPN-verbinding wegvalt of dat alleen bepaalde applicaties worden afgesloten. De eerste optie is duidelijk: het apparaat is dan helemaal niet meer verbonden met het internet.

Specifieke applicaties de toegang ontzeggen

In sommige situaties is het niet handig dat je helemaal geen internet meer hebt als de VPN-verbinding wegvalt. Bijvoorbeeld wanneer je in een belangrijk gesprek zit via Zoom of Microsoft Teams. Voor die gevallen kun je een kill switch applicatie-specifiek de verbinding laten verbreken. Je kunt dan bijvoorbeeld wel doorgaan met videobellen of browsen, terwijl je torrent client geen internettoegang meer heeft.

©Ģirts Raģelis

Welke apps laat je wel afsluiten en welke niet?

Sommige online bezigheden brengen meer risico's met zich mee dan andere wanneer het gaat om je privacy of de beveiliging van je persoonlijke informatie. Misschien gebruik je je VPN alleen om een serie op Netflix te kijken die in Nederland niet beschikbaar is. In dat geval wil je niet dat je hele internetverbinding wegvalt als de VPN uitvalt. Maar bij privacygevoelige taken, zoals internetbankieren, het versturen van e-mails, het werken in de cloud of het downloaden van torrents, wil je juist voorkomen dat je zonder VPN online gaat. Je kunt de kill switch dan zo instellen dat alleen je browser, e-mailapp, cloudopslag en torrentclient worden geblokkeerd, terwijl andere apps gewoon verbinding houden.

Lekker tijdens het Netflixen

🍿🍿🍿🍿🍿 Popcorn!

VPN kill switches zijn een logische toevoeging aan VPN's en zijn daarom standaard beschikbaar bij de bekendste aanbieders. Meestal staan ze automatisch aan, maar je kunt de functie eenvoudig in- of uitschakelen via de instellingen.

Voor wie is een VPN kill switch nuttig?

Eigenlijk heeft iedereen die waarde hecht aan privacy baat bij een VPN-provider met kill switch. In Nederland is er sprake van weinig censuur en zijn er amper internetblokkades. Maar alsnog zijn VPN's hier erg populair. Als je torrents downloadt, is het handig om ervoor te zorgen dat je IP-adres beschermd is, want dat downloaden is in veel gevallen illegaal. Gevoelige informatie of belangrijke (werkgerelateerde) documenten kun je beter ook niet zomaar versturen. Met een VPN met kill switch zijn je gegevens en bestanden beter beschermd. Zit je vaak op een open wifi-netwerk? Dan is het zonder meer verstandig om te kiezen voor een VPN met kill switch. Want openbare netwerken hebben een slechte reputatie op het gebied van veiligheid en zijn regelmatig het doelwit van hackers.