PlatformIO: Het Essentiële Ecosysteem Voor Gevorderde Professionals

PlatformIO dashboard
Afbeeldingsbron: PlatformIO
Heb je veel ontwikkeld in Arduino en Arduino IDE? Maar je raakt een beetje gefrustreerd door de beperkingen van Arduino wanneer je snelle professionele ontwikkeling nodig hebt? Inderdaad, Arduino heeft een eenvoudige interface die de meeste softwareontwikkelaars of systeembouwers liefhebben. Maar PlatformIO schittert als een hoogst professioneel hulpmiddel.
Wil je meer weten over deze gratis open-source? Geen zorgen, dit artikel legt de ingewikkeldheden van PlatformIO uit. Je zult zien wat het is, de kenmerken, hoe je het met Arduino-programmering kunt gebruiken, en meer.
Laten we beginnen!
Wat Is PlatformIO?
PlatformIO is een open-source-ecosysteem dat de Python-programmeertaal gebruikt. Als resultaat is PlatformIO ideaal voor IoT-ontwikkeling. En het is een cross-platform IDE met geïntegreerde debuggers die draaien op Linux, Windows en Mac. Ook heeft het een bibliotheekbeheerder die MBED of Arduino ondersteunt met firmware-updates en unittesten.
Daarnaast ondersteunt PlatformIO verschillende frameworks, borden zoals ESP8266, Arduino, ESP32, en platforms. Ook heeft het bibliotheekafhankelijkheden, waardoor PlatformIO een onafhankelijke entiteit is. Als resultaat kun je het draaien door simpelweg Python op je computer te installeren.
Kenmerken Van PlatformIO
- Het heeft unittesten
- Ingebouwde Terminal met PlatformIO-tools zoals Platformio en Pio unit
- Het kan debuggen
- Het platform heeft Remote Development
- De cross-platform code builder mist externe afhankelijkheden van systeemsoftware met:
- Meer dan 20 frameworks
- Meer dan 1000 ingebouwde borden
- Boven de 40 ontwikkelplatforms
- Het heeft talloze vensters met Multi-Projects Workflow
- De thema's ondersteunen donkere en lichte kleuren
- C/C++ intelligente code-aanvulling
- Seriële poortmonitor
- Het komt met een bibliotheekbeheerder voor duizenden populaire bibliotheekbronnen
- Statische Code-analyse
- C/C++ Slimme Code Linter voor snelle professionele ontwikkeling
Hoe Gebruik Je PlatformIO IDE Voor Arduino-programmering?
Omdat de PlatformIO-kern in Python 2.7 zit, installeer deze versie. Ga vervolgens de PlatformIO IDE installeren. De Platform IDE biedt officiële pakketten (extensies, plugins) voor populaire teksteditors en IDE's.
Stappen
- Wanneer je PlatformIO opent, ga naar de snelle toegang aan de rechterkant en klik op "Nieuw Project". Tweede, geef het project een naam. Dan, aangezien je werkt met het Arduino-framework, zoek en selecteer Arduino UNO.

Arduino Uno
- Vervolgens vul de benodigde details in en klik op Voltooien. Gevolgelijk begint je project met het verzamelen van afhankelijkheden en andere bronnen. Je krijgt een promptbericht wanneer je project is aangemaakt met de ingevulde details.
- Je kunt je project openen en scrollen naar het PlatformIO-startmenu. Daar zie je een lijst met projecten. Dan kun je rechts van je aangemaakte project op "Openen" klikken om te beginnen met bewerken.
- In het begin, wanneer je het project opent, ziet er leeg uit. Interessant genoeg, kun je je huidige project vinden dankzij de bestandsverkenner-functie op PlatformIO. Klik dan op "Openen" in de linkerbovenhoek.
- Als resultaat zullen alle bestanden als een dropdown-menu verschijnen. Verder selecteer "src" en open "main.cpp" om de code te bewerken. Daarna opent je startscherm een nieuw tabblad in teksteditor-modus waar je de codes voor je recent project kunt schrijven.
- Daarnaast moet je een knippercode voor de Arduino schrijven. Terwijl je erbij bent, zorg ervoor dat je altijd "<Arduino.h>" toevoegt bij het schrijven van de code. En dat is omdat PlatformIO standaard geen toegang heeft tot Arduino-bibliotheken.
- Vervolgens compileer en upload de code. Bouw dan de schets. Druk verder op "Bouwen" om de schets te uploaden met het "Uploaden"-pictogram. Dus, als er geen codeerfouten zijn, zie je een bericht dat "Succes" leest.
PlatformIO Voor VSCode
VS Code is een populaire teksteditor die talrijke extensies heeft. Daarom kun je het gebruiken om diverse programmeertalen te ontwikkelen. Ook vinden gebruikers deze teksteditor gemakkelijk te gebruiken. Bovendien biedt het betere systeemprestaties met PlatformIO.
Dus kun je de VS-code gebruiken om PlatformIO in te stellen voor het ontwikkelen van codes in Arduino UNO.
Stappen
Stap 1 – Installeer De VS Code
Ga naar de officiële website en installeer Visual Studio Code. Interessant genoeg vind je eenvoudig te begrijpen installatiestappen om te volgen op de website. De stappen zijn zo eenvoudig als software installeren op Windows OS. Na het voltooien van het installatieproces, zou je een welkomstpagina met verschillende opties moeten zien als het installatieproces succesvol was.
Stap 2 – Installeer PlatformIO Met VS Code Extensies
In deze stap heb je de VS-code-extensies nodig om PlatformIO te installeren. Je kunt dit doen door naar de linkerbovenhoek van de VS-code te gaan om op het Extensies-doos-pictogram te klikken. Verder is dit pictogram de vijfde in de linkerbovenhoek.
Dus, wanneer je op het pictogram klikt, verschijnt een zoekvak. Het zoekvak verschijnt meestal naast waar je extensies kunt krijgen voor programmeertalen zoals Go, JavaScript, PHP, TypeScript & Node.js, C#, enz.
Stap 3 – Zoek PlatformIO
Klik op het extensie-zoekvak en zoek naar PlatformIO. Gevolgelijk zie je het PlatformIO-pictogram in de zoekresultaten met de naam en beschrijving. Dan kun je het installeren door op het pictogram te klikken. Het is vitaal om te noteren dat het een tijdje kan duren. C/C++ is een voorbeeld van afhankelijkheden die Arduino-ontwikkeling gebruikt.
Wanneer de installatie klaar is, zie je een nieuwe interface. De interface heeft verschillende navigaties om taken uit te voeren zoals Arduino-projecten importeren, een nieuw project aanmaken, enz. Met dit, herstart je VS-code-editor wanneer je PlatformIO installeert. Daarna is je PlatformIO klaar voor gebruik. Dan kun je het Knipperprogramma uploaden in de Arduino UNO.
PlatformIO Downloaden
Hier zijn de dingen die je nodig hebt voordat je PlatformIO downloadt:
- Besturingssysteem
- Linux ARMv6+
- Windows
- Mac
- FreeBSD
- Linux
- Toegang tot Seriële Poorten (USB/UART)
- Linux-gebruikers kunnen dit installeren. Voor Raspberry Pi-gebruikers, gebruik dit.
- Windows-gebruikers kunnen bevestigen dat de bordfabrikant de juiste USB-driver heeft.
- Python-interpreter: Python 3.6+ of hoger
Dat gezegd hebbende, installeer PlatformIO met de onderstaande code voor Mac en Linux OS:

Gebruik de onderstaande code voor lokale download op Windows, Mac en Linux:

Op Windows OS zal de code er als volgt uitzien:

PlatformIO Projecten
Lamp Met IR-afstandsbediening, Atom Lite en Neopixel
Benodigde Materialen
- Seed Studio Grove met universele pinconnector (1)
- Solderbout (1)

Solderbout
- PlatformIO IDE met VS Studio
- M5Stack Grove-kabel (1)
- RGB LED-strip (1)
- IR-afstandsbediening (1)
- M5Stack mini infrarood-emitter en ontvanger-eenheid (1)
- M5Stack ATOM Lite ESP32 Development Kit (1)
Project
Pak je RGB LED-strip en monteer het op een Atom Lite ESP32. Het gebruik van deze development kit betekent dat de lamp een ingebouwde knop heeft waarmee je twee dingen kunt doen. Eerst kun je de LED-strip aan of uit zetten om de helderheidsniveaus aan te passen.

LED lichtstrip
Verbind de IR-eenheid met de Grove-poort van de Atom Lite. Als resultaat zal de opstelling zich uitstrekken naar de IR-afstandsbediening. Verder moet je voeding een algehele maximum stroomverbruik van ongeveer 250mA hebben. Bovendien, als je meer dan 20 LED's op je strip hebt, kun je de helderheid met je software beperken.

IR-afstandsbediening
Dan, voed de LED-strip via de 5V-pin van de Grove-poort. Tenslotte krijgt de Atom Lite stroom van een USB-C-kabel en standaard 5V-adapter. Maar je kunt vermijden om de Atom Lite als voedingsbron van de LED-strip te gebruiken als je van plan bent om meer LED's te gebruiken en maximale helderheidsniveaus te bereiken.

USB Type-C connector
Daarna kun je je programmering voor het project in Arduino IDE instellen. Dan moet je het ESP32-pakket installeren op de bordbeheerder. Terwijl je erbij bent, kies ESP32 Pico Kit als je doelbord. Gebruik ook de Arduino IDE-bibliotheekbeheerder om deze bibliotheken te installeren: IRRemoteESP8266, JC_Button, en FastLED met de broncode hieronder.

Arduino IDE bibliotheekcode
Afbeeldingsbron: Github
Ook kun je de PlatformIO-bibliotheektak gebruiken met de PlatformIO IDE-extensie voor Visual Studio Code op GitHub.
PlatformIO: Ondersteunde Borden
Hier zijn een paar borden die door PlatformIO ondersteund worden:
ASR Microelectronics ASR650x
- Heltec CubeCell-Board (HTCC-AB01)
- Module Plus (HTCC-AM02) (Heltec CubeCell-Board)
- 1/2AA Node (HTCC-AB02A) (Heltec CubeCell-Board)
- Capsule (HTCC-AC01) (Heltec CubeCell-Board)
- Board PRO (HTCC-AB03) (Heltec CubeCell-Board)
Atmel SAM
- Adafruit Feather M0
- Gemma M0 (Adafruit)
- PyGamer Advance M4 (Adafruit)
- Trinket M0 (Adafruit)
- Metro M4 (Adafruit)
Freescale Kinetis
- Freescale Kinetis FRDM-KW24D512
- FRDM-KL25Z
- Freescale Kinetis FRDM-KL05Z
- SEGGER IP Switch Board
- Ethernet IoT Starter Kit
- Freescale Kinetis FRDM-K22F
Atmel AVR
- Adafruit Flora
- Adafruit Trinket 5V/16MHz
- ATmega88PB
- Alorium Sno
- Adafruit Circuit Playground Classic
Veelgestelde Vragen
Hoe Open Ik PlatformIO?
- Download je VS-code, en je PlatformIO IDE zal bouwen op de terminal
- Ga naar de VS-code Package Manager en zoek naar de PlatformIO-extensie
- Installeer je cross-platform IDE
Is PlatformIO C++?
PlatformIO is een statische code-analyzer die C/C++ heeft als intelligente code-aanvulling en Slimme Code Linter voor snelle, professionele ontwikkeling.
Is PlatformIO Gratis?
Ja. Het is gratis voor commercieel en persoonlijk gebruik. Maar als je extra ondersteuningsfuncties van het PlatformIO-team nodig hebt, betaal je.
Afsluiting
PlatformIO is een Python-gebaseerde cross-platform IDE die met VS Code werkt om snelle, professionele ontwikkeling te bieden voor geavanceerde software-engineers die meer geavanceerde functies nodig hebben dan de Arduino IDE biedt.
Heb je deze ontwikkeltool al gebruikt? Of heb je vragen over dit onderwerp? Aarzel niet om contact met ons op te nemen.
Industriële technologie
- Interview met Origin CEO Chris Prucha: Additieve productie verbeteren door open materialen
- ClimaCell Levert Minuut-voor-minuut Weervoorspellingen Voor Elke 500-Meter Cel Wereldwijd
- B2B & Industriële Koperbehoeftes In 2021 Voldoen: Bewezen Strategieën
- Elke Fase Van De B2B Industriële Inkoopcyclus Binden Met Gerichte Contentmarketing
- E-Commerce Fulfilment Optimaliseren: Strategieën om Complexiteit te Verminderen en Kosten te Snijden
- Voedseltoeleveringsketens versterken: Een veerkracht blueprint voor 2024
- Nexus Integra: geïntegreerd operationeel platform voor naadloze databeheer
- Essentiële Apparatuur voor Efficiënte Fabrieksoperaties: 4 Onmisbare Machines
- Essentiële Tools Die Elke Vrachtautochauffeur Aan Boord Moet Hebben
- Databus vs. Database: 6 Sleutelvragen die Elke IIoT-ontwikkelaar Moet Overwegen
- Fetch.AI Stelt Intelligente Agents Voor voor Elk IoT Apparaat