Hallo en welkom bij de blog van vandaag post.
Onze blogposts en eBooks zijn voornamelijk gericht op beginners.
Er is echter ook een zeer actief deel van onze gemeenschap met hooggekwalificeerde professionals, amateur radio operators, ingenieurs, software ontwikkelaars, enz.
Mensen die al vele jaren professioneel werken in onderzoek en ontwikkeling, en die blindelings tools zoals Atmel Studio beheersen, of zelfs vrijwillig Eclipse gebruiken als codeeditor.
De Arduino IDE is zeer geschikt om aan de slag te gaan. De meeste klanten beginnen de IDE, voegen een voorbeeldcode in via Copy & Paste, passen eventueel nog een paar regels aan en laden het hele ding op je microcontroller.
Maar als u grotere projecten wilt uitvoeren, bereikt u snel de grenzen van de IDE. Dit begint met het ontbreken van versiebeheer, het gebrek aan functies zoals code voltooiing, en ten laatste wanneer u werkt aan meerdere projecten die verschillende versies van dezelfde bibliotheek vereisen, wordt het frustrerend.
Vandaag willen we u kennis laten maken met waarschijnlijk het populairste alternatief op dit moment: PlatformIO.
Degenen die nog maar kort geleden zijn begonnen met het werken met microcontrollers, naar de kant van de fabrikant, zullen waarschijnlijk eerst worden afgeschrikt. Er wordt gesproken over 'IoT', 'ecosysteem', 'frameworks'. Dan komt een lijst van functies, en overbelastscreenshots.
Als je er nog niet door bent afgeschrikt en naar "PlatformIO Now installeren" gaat, krijg je twee opties aangeboden: Atom of VSCode.
Ik kan me voorstellen dat velen hebben gemaakt om deze site, en dan dacht :"dit is niet voor mij - ik geef de voorkeur om te verblijven met de Arduino IDE".
Dat is jammer, want PlatformIO is veel krachtiger dan de Arduino IDE.
1. De beginner
Deze sectie is bedoeld voor mensen die tot nu toe weinig of helemaal niet geprogrammeerd, en waarvan de voorkeur programma voor het bewerken van teksten en het opslaan van screenshots is MS Word.
Misschien vraag je je af waarom je je eigen "code editor" nodig hebt?
Op een normale pc zijn er meestal verschillende programma's om een tekst te maken:
- Kladblok
- Wordpad
- Word (Office) of Writer (LibreOffice/OpenOffice)
Als u een brief wilt schrijven, met briefhoofd, kop- en voettekst, enz., neemt u meestal uw toevlucht tot een tekstverwerker als Word. Een tekstverwerker is een krachtig hulpmiddel en biedt een verscheidenheid aan functies en opties, zoals spellingcontrole. Het is daarom zinvol dat een dergelijk tekstdocument een tekstverwerker neemt.
Natuurlijk kun je de brief ook in Kladblok schrijven. Kladblok is geen tekstverwerker, maar een teksteditor. Dit wordt meestal gebruikt om configuratiebestanden te bewerken. Zodra iemand echter een brief in Kladblok probeert te schrijven, bereik je snel de grenzen.
Hetzelfde geldt voor een code editor. U eenvoudig een programma voor de Arduino in Kladblok schrijven en opslaan. Hier ziet u dezelfde code in zowel een eenvoudige teksteditor als in de Arduino IDE:
Het meest opvallend is het feit dat de arduino IDE de broncode in kleur weergeeft. Echter, de Arduino IDE biedt een aantal handige tools die niet beschikbaar zijn in de eenvoudige teksteditor. Het is bijvoorbeeld mogelijk om een tekstgebied met de muis te selecteren en het hele tekstblok in te voeren met de TAB-toets. In de opties kunnen we ook lijnnummering inschakelen en het vouwen van code inschakelen om eenvoudig logische gerelateerde broncodesecties zoals klassen of methoden weer te geven en te verbergen.
Deze functionaliteit maakt het werken met broncode veel gemakkelijker. Echter, er zijn een heleboel andere redacteuren die dwerg de Arduino IDE.
2. De Code Editor
Het bereik van teksteditors is nogal verwarrend. Op de vraag welke het meest geschikt is voor het programmeren van uw microcontroller, zal iedereen antwoord op je iets anders. Ik maakte mijn eerste pogingen tot programmeren in een editor genaamd "vi" op Solaris. Jarenlang was ik ervan overtuigd dat ik nooit meer een teksteditor nodig zou hebben, omdat ik alles veel sneller kan doen in de "vi" dan in deze "klickibunti" alternatieven. In de tussentijd ben ik blij als ik voor het eerst proberen om een configuratiebestand te bewerken in vi Editor zonder het invoegen van een ongewenste regel te breken, durven de verandering en het openen van het bestand weer.
Omdat we PlatformIO willen gebruiken, hebben we de keuze tussen de Atom Editor of VSCode. Beide zijn zeer populaire en krachtige redacteuren. Als u atom editor al gebruikt en leuk vindt, zult u er vrijwel zeker bij willen blijven en de PlatformIO-extensie voor Atom installeren. Echter, voor al diegenen die afkomstig zijn van de Arduino IDE, adviseer ik het installeren van VSCode.
Er zijn 2 argumenten die ik hoor over en weer als het gaat om VSCode:
- vs staat voor visuele studio en ik wil geen visuele studio gebruiken
- VSCode komt van Microsoft
VSCode staat voor Visual Studio Code en is een gratis, open source programma. De naam is enigszins ongelukkig gekozen omdat het een nieuw ontwikkeld product is, en deelt alleen de naam met de bestaande Visual Studio producten. Hoewel Microsoft gebruikt om te glimlachen naar de open source idee moe, en heeft niet de beste reputatie in de open source gemeenschap, het bedrijf is actief op dit gebied sinds 2004. Een lijst van alle open source releases is te vinden onder https://opensource.microsoft.com/. Microsoft is actief betrokken geweest bij een verscheidenheid van open source projecten door de jaren heen.
Microsoft zelf adverteert de editor met de volgende hoogtepunten:
- het maakt gebruik van IntelliSense - Kleur syntaxis markeren en automatisch aanvullen
- uitgebreide foutopsporingsfuncties
- Versiebeheermedium Git
- uitbreidbaar via extensies
De eerste drie hoogtepunten beschrijven precies de functies die we missen in de Arduino IDE. En het vierde hoogtepunt, de integratie van extensies, stelt ons in staat om PlatformIO te gebruiken.
3. VSCode installeren
Eerst gaan we naar de site https://code.visualstudio.com/, downloaden en installeren van de nieuwste versie.
Na de download installeren we de software. Er is niets om in gedachten te houden over de installatie-opties. U ze naar wens aanpassen of altijd op 'Volgende' klikken:
Na de eerste start verschijnen er rechtsonder een paar berichten. De eerste maakt de installatie van een taalpakket mogelijk. We gaan naar "Installeren en opnieuw opstarten".
Na de herstart ontvangt u een bericht dat Git niet is geïnstalleerd. Git is een versietool en moet op dit punt worden geïnstalleerd door op "Git down" te klikken.
Er wordt een browservenster geopend met de Git-pagina. Via de link "Download 2.18.x voor Windows" kunnen we de huidige versie downloaden en de installatie starten.
Er zijn een paar opties om te overwegen bij het installeren van Git. Daarom documenteer ik de volledige installatie met behulp van screenshots:
In dit venster selecteren we Visual Studio Code als editor. Als het veld 'Volgende >' grijs blijft, ga dan naar "< Terug" en dan moet het verder gaan.
Na het opnieuw opstarten van VSCode moet het volgende scherm worden weergegeven.
Nu hebben we een krachtige teksteditor geïnstalleerd, maar het brengt ons niet veel in zijn huidige vorm. Als ik mijn Arduino-code invoeg, ziet het er niet veel anders uit dan in het kladblok.
Er is geen manier om de code samen te stellen, bibliotheken te installeren of een microcontroller te selecteren. Dit is waar de extensies komen in: PlatformIO breidt VSCode met deze functies.
3. Installeer de PlatformIO-extensie
Er zijn 5 pictogrammen aan de linkerkant van het VSCode-venster. Het laagste symbool (vierhoekig) opent het paneel om de extensies te beheren.
In het zoekvak voeren we nu PlatformIO in en installeren we de nieuwste versie van het PlatformIO IDE door op "Installeren" te klikken.
Na een paar ogenblikken verandert de knop in "Opnieuw opstarten". Na de herstart wordt de "Microsoft C/C++ Extensie voor VS-code" automatisch geïnstalleerd. Een beetje geduld is hier vereist.
Het bericht "PlatformIO Core installeren..." wordt weergegeven in de uitvoer. Afhankelijk van het systeem zal de installatie enige tijd in beslag nemen.
Wacht tot het bericht "PlatformIO IDE is met succes geïnstalleerd! Gelieve opnieuw venster" verschijnt:
Na de herstart verschijnt er een bericht dat extensies op de harde schijf zijn gewijzigd en wordt gevraagd het venster opnieuw te laden.
Na enkele ogenblikken verschijnt de startpagina van PlatformIO.
Hier u een nieuw project starten, een bestaand Arduino-project importeren en het nieuws bekijken.
Nu is het klaar. Zo moeilijk was het niet.
Ik hoop dat de post van vandaag was een beetje een grap in het installeren van PlatformIO.
In een toekomstig bericht laten we je zien hoe je bibliotheken installeert en hoe je je eerste project compileren en uploaden.
Tot die tijd neem ik afscheid en wens iedereen veel plezier met het experimenteren met PlatformIO.
De jouwe Markus Neumann
9 Reacties
Michael aka Tyrannus
Ist zwar schon was älter der Blog, aber
ich möchte gerne dem VS-Code noch eine Info hinzufügen wenn ich darf.
Ich persönlich arbeite schon längere Zeit fast ausschliesslich mit VSC und möchte es nicht mehr missen.
Wer sich für die Zukunft für VSC entscheidet als quasi Backend für das proggen, dem sei als plugin für VSC auch Flutter zu empfehlen. Flutter basiert auf dart, ist easy zu erlernen (falls man das überhaupt noch muss) und bietet die Möglichkeit in einen Code native frontends für IOS, Android und Web zu entwickeln.
Gruss nach Deggendorf
Michael
Thorsten Papendorff
Nachtrag zu meinem Kommentar von vorhin……. ich habe keine Möglichkeit über meine Tastatur Eingaben zu tätigen, sprich nach Boards suchen oder auch ein Projekt benennen
Thorsten Papendorff
Bei mir kam nach der Installation keine Meldung das Git fehlt und auch die Installation eines Sprackpaketes wurde nicht angeboten…..
Kann das an der Version von VSCode liegen?
Heiko Hobein
Hallo,
mit Interesse habe ich Ihren Artikel gelesen.
Prima und sehr informativ.
Eine drängende Frage habe ich:
Für ein Druckerprojekt habe ich zwei Projektdateien, welche für die PlatformIO vorbereitet waren, heruntergeladen. Die eine Datei war für Atom, die andere für VScode.
Nun habe ich die für VSCode unter Atom bearbeitet und wollte sie kompilieren, erhielt jedoch ständig eine Fehlermeldung. Dann habe ich sie unter VSCode kompiliert, da lief alles einwandfrei.
Aber ich möchte sehr ungern mit zwei unterschiedlichen Editoren (VSCOde und Atom) arbeiten.
Habe ich etwas falsch gemacht und dürfte der Editor gar nicht das Problem sein? Und wie kann ich ein Projekt so abspeichern, dass es beispielsweise von VSCOde kommt und für Atom vorbereitet ist?
Ich weiß, dass noch viele Angaben fehlen, aber ich wollte meinen Text nicht noch weiter aufblähen und hoffe, er ist einigermaßen verständlich rübergekommen.
Herzlichen Dank
Martin Fitzke
Hallo Markus Neumann,
danke für den Artikel. Ich habe VS Code eigentlich als reinen Editor abgetan, nach dem Artikel habe ich dem Ganzen noch mal eine Chance gegeben. PlattformIO kannte ich noch garnicht, Installation war gut zu machen. Nach ein bisschen hin und her hat es prima geklappt. Danke für die Information :) Ich finde auch: tolle Arbeit.
Viele Grüße,
Martin
Heiner
Hallo,
die Installation von VS Code hat funktioniert. Bei der Installation des Sprachpakets und der PlatformIO startet in beiden Fällen die Installation, kommt aber jeweils zu keinem Ende. Obwohl sich die Installationsanzeige bewegt, scheint es als ob nichts installiert werden würde. Habe das ganze über 2 Stunden laufen lassen.
Weiß jemand hierzu einen Rat wie man diese zwei Pakete installiert bzw. woran es liegt, dass sie sich nicht installieren lassen (Windows 7, 64Bit) ?
Grüße, Heiner
Markus Neumann
Hallo Peter,
Hat Ihre Installationsdatei den Namen "VSCodeUserSetup-x64-1.26.0.exe " ?Ich nutze auch Win 10 64 Bit, Version 1803. Die Fehlermeldung habe ich so noch nie gesehen. Ist das der genaue Wortlaut der Fehlermeldung?
Sigi
Installation auf Win 10, Home, 64bit, Version 1803 hat nach eurer Anleitung bestens geklappt.
Freue mich auf die nächsten Blogs.
Tolle Arbeit!!!
Peter Necas
Ich wollte VSCode unter Win 10, Home, 64bit, Version 1803 installieren.
Leider kommt die Meldung: “Dieses Programm unterstützt die auf ihrem Computer installierte Version nicht.”
Was nun?
LG Peter