Om een Arduino iets te laten doen zullen we een programma moeten maken (het programmeren) en overbrengen (laden) in onze Arduino hardware. De Arduino processor wordt bestuurd met simpele opdrachten (instructies): dit heet de machinetaal (assembly language).
Een programma is een verzameling opdrachten (instructies) die een computer vertellen wat hij moet doen. Bijvoorbeeld lees de waarde van een ingang en afhankelijk van de gelezen waarde stuur een uitgang aan: hiermee kan een Led aangestuurd worden. Met wat meer opdrachten kan je ook de Led laten knipperen.
Wij schrijven een programma niet in de machinetaal maar in een 'hogere orde' programmeertaal. Deze is voor ons beter begrijpbaar. Later wordt dit programma vertaald naar de machinetaal (compileren). Er zijn in de wereld vele verschillende talen waarvan Basic en C misschien wel de bekendste zijn. Voor een overzicht zie Wikipedia. Voor het programmeren de Arduino wordt een versie van C gebruikt.
Over het programmeertaal zelf later meer. Wat we verder nog nodig hebben is een omgeving op onze computer om het programma te maken, te vertalen naar de Arduino machinetaal en uiteindelijk laden in ons Arduino processorbord. Deze ontwikkelomgeving wordt ook wel een IDE (Integrated Development Environment) genoemd, zie ook Wikipedia. Er zijn meerdere mogelijkheden.
Nadat we een programma gemaakt is moet het getest worden. Meestal zijn er fouten aanwezig die we moeten zien op te lossen. Dit proces noemen we debuggen (ontvlooien). Hier komen we later nog op terug.
Het mooie van de Arduino wereld is dat er al heel veel kant en klare software geschreven is voor allerlei toepassingen. Deze bibliotheken ondersteunen veel hardware die op een Arduino aangesloten kan worden, zoals displays, servo motoren, etc. Zo'n bibliotheek is standaard al aanwezig of kan eenvoudig toegevoegd worden. Elke bibliotheek heeft een aantal kant en klare voorbeelden die als basis kunnen dienen voor je eigen toepassingen. Voor meer uitleg over hoe je bibliotheken kunt toevoegen en voorbeelden van een aantal bibliotheken is te vinden in een aparte pagina.
Via de site Project Hub zijn vele volledig uitgewerkte toepassingen te vinden, zeker waard om eens door te snuffelen. Het is wel in het Engels, als dat een probleem is wil ik wel helpen. Vaak kan de gebruikte code (bibliotheken met voorbeelden) via de site GitHub gedownload worden. Hier wordt dan naar verwezen in de projecten. Deze site wordt door allerlei ontwikkelaars gebruikt voor het opslaan, beheren en beschikbaar stellen van hun programmatuur.
Standaard is er voor de Arduino ontwikkelingen een eenvoudige IDE beschikbaar. Deze kan worden gedownload via de officiële Arduino website. Deze site is Engelstalig. In het menu SOFTWARE vind je de keuzes ONLINE TOOLS en DOWNLOADS
Er zijn nu twee mogelijkheden:
Voor de meer gevorderden en voor grotere programma's kan je er ook voor kiezen om Microsoft's Visual Studio te gebruiken. Hier heb je dan veel meer mogelijkheden voor onder andere het creëren van Classes en het bekijken van de onderliggende code. Voor het testen kan nu ook gebruik gemaakt worden van een aanwezige debugger.
Ik gebruikte de Visual Studio Community Versie 2015, die gratis gebruik mag worden. Er is wel een plug-in (de Arduino IDE voor Visual Studio) nodig voor de ondersteuning van de Arduino. Ik gebruik nu de laatste versie Visual Studio Community Versie 2019.
Zie de volgende pagina: IDE Visual Studio
Het testen van een gemaakt programma is niet altijd makkelijk. Het gebeurt zelden dat een programma gelijk goed werkt, wat dan? Zie de volgende pagina voor meer informatie Testen van programma's
..