- Vad är PlatformIO?
- Konfigurera PlatformIO för Arduino Uno
- Programmering av Arduino UNO med PlatformIO IDE
- Programmering av STM32-kort med hjälp av PlatformIO IDE
Utvecklingen i Arduino och Arduino IDE har alltid varit lätt och roligt med sitt enkla användargränssnitt. Arduino IDE är öppen källkod och gratis att använda utvecklingsmiljö med alla funktioner som att skriva, sammanställa och ladda upp koden till Arduino Boards. Den är baserad på Java och körs på större operativsystem som Windows, OS X och Linux. Men med all sin enkelhet och stora gemenskap har den inte några funktioner som en erfaren utvecklare kommer att kräva för snabb utveckling som kan minska utvecklingsperioden. Det finns många utvecklingsmiljöer tillgängliga för Arduino, men alla har vissa fördelar och nackdelar. Idag kommer vi att börja med PlatformIO-utvecklingsmiljön som är enkel att använda och har lagt till funktioner jämfört med Arduino-miljön.
Vad är PlatformIO?
PlatformIO är ett Python-baserat öppen källkodsekosystem för IoT-utveckling och en cross-platform IDE med en enhetlig debugger körs på Windows, Mac och Linux. PlatformIO levereras med bibliotekshanterare för plattformar som Arduino eller MBED-support tillsammans med enhetstester och firmwareuppdateringar. PlatformIO stöder ett antal plattformar, ramverk, styrelser som Arduino, ESP32, ESP8266 och kommer med ett antal exempel och bibliotek. Det är oberoende av plattformen där det körs och det kräver bara Python installerat på datorn.
Fördelar med PlatformIO
PlatformIO har snabb utveckling med sina funktioner som C / C ++ Code Completion och Smart Code Linter för snabb professionell utveckling som inte finns i Arduino IDE. Utöver detta erbjuder PlatformIO temastöd med mörka och ljusa färger för utveckling när som helst. Den levereras också med smart kodnavigering och kodformatering. Kärnfunktionerna inkluderar Build-plattform för flera plattformar, Library Manager, Serial Port Monitor etc.
Den Unified Debugger med ett stöd för flera arkitekturer och utvecklingsplattformar gör det möjligt att felsöka flera inbäddade skivor med Zero-konfiguration. PlatformIO Unified Debugger har funktioner som villkorliga brytpunkter, uttryck och övervakningspunkter, Memory Viewer, en omstart av en aktiv felsökningssession. PlatformIO Core är skriven i Python 2.7 och fungerar på Windows, macOS, Linux, FreeBSD och till och med ARM-baserade datorer med kreditkortsstorlek som Raspberry Pi, BeagleBone, CubieBoard, Samsung ARTIK, etc. Bortsett från detta har PlatformIO File Explorer som hjälper organisera filerna när projektet växer till en viss nivå och organisering blir nödvändigt.
Konfigurera PlatformIO för Arduino Uno
Att använda PlatformIO är väldigt enkelt och kräver få steg för att komma igång. PlatformIO kräver att Python är installerat på datorn eftersom som förklarats ovan att PlatformIO-kärnan skrevs i Python 2.7. Observera att PlatformIO inte stöder Python 3, så det rekommenderas att du installerar Python 2-versionen och sedan fortsätter för att konfigurera PlatformIO IDE. PlatformIO är en IDE plus den tillhandahåller officiella paket (plugins, tillägg) för de mest populära IDE: erna och textredigerarna.
Idag installerar vi PlatformIO till en sådan textredigerare som Atom och Visual Studio Code. I officiell dokumentation av Platform IDE anges att PlatformIO IDE för VS-kod (Visual Studio Code) erbjuder bättre systemprestanda och att användare har haft det lättare att komma igång. Så vi kommer att ställa in PlatformIO i Visual Studio Code. VS-koden är en välkänd textredigerare med ett antal tillägg som gör att vi kan utvecklas på olika programmeringsspråk.
Låt oss börja ställa in PlatformIO för att börja utveckla kod i Arduino UNO. Det finns steg involverade som förklaras nedan:
- Installera först Visual Studio-koden från dess officiella webbplats. Installationsstegen för Visual Studio Code kommer inte att förklaras här men du kan hitta den på VS Code-webbplatsen. Det finns allmänna steg involverade precis som att installera annan programvara på Windows OS.
- Visual Studio-koden ser ut som följande när den har installerats.
- Nästa steg inkluderar installation av PlatformIO med VS-kodtillägg. För detta måste du gå till Extensions-ikon i det övre vänstra hörnet av VS-koden. Det finns fyrkantig ruta ikon som är den femte ikonen i det övre vänstra hörnet. Klicka bara på det och en sökruta visas precis bredvid den där du kan hitta många tillägg för olika programmeringsspråk som C / C ++, C #, Python, PHP, Go, JavaScript, TypeScript och Node.js etc.
- Sök efter “PlatformIO” i sökrutan för tillägg och du ser PlatformIO-ikonen med namn och beskrivning. Klicka bara på det och installera det. Det kan ta lite tid att installera verktygskedjor och andra beroenden. Beroenden inkluderar C / C ++ -miljö eftersom Arduino-utveckling oftast sker på C / C ++.
- När installationen är klar ser du följande gränssnitt. Gränssnittet innehåller all nödvändig navigering som att skapa nytt projekt, importera Arduino-projekt, öppna projekt, projektexempel etc. Det rekommenderas att starta om VS-kodredigeraren efter installationen av PlatformIO.
Detta avslutar installationsstegen för PlatformIO. Nu är PlatformIO installerat och klart att användas. Precis som Arduino IDE börjar vi med Blink-programmet och försöker ladda upp Blink-programmet i Arduino UNO.
Programmering av Arduino UNO med PlatformIO IDE
PlatformIO-gränssnittet kommer att förklaras samtidigt under programmering av Arduino UNO. Här programmerar vi Arduino för att blinka LED med PlatformIO. Samma sak kan göras med Arduino IDE. Följ stegen nedan för att skapa ett nytt projekt för blinkande lysdiod.
- Välj fliken "Nytt projekt" från snabbåtkomstmenyn.
- Namnge projektet (här är det 'Blink'). Sök och välj styrelsen som är Arduino UNO. Eftersom vi arbetar i Arduino-ramverk, så kommer det valda ramverket att vara Arduino. När du har fyllt i alla detaljer klickar du bara på Slutför.
- Projektet kommer att börja skapas genom att samla in resurser och andra beroenden.
- När projektet har skapats framgångsrikt får du meddelandet "Projektet har initierats framgångsrikt" med alla fyllda detaljer.
- För att öppna det skapade projektet, bläddra bara ner i Home-menyn på PlatformIO så ser du alla listor över projekt som skapats från början. I det högra hörnet av det skapade projektet klickar du på 'Öppna' för att öppna projektet och börja redigera.
- När projektet öppnas ser det initialt ut som om det är dolt, men oroa dig inte, PlatformIO har en filutforskningsfunktion där alla filer i det aktuella projektet kommer att hittas. Gå bara till det övre vänstra hörnet och öppna 'Untitled (Workplace)'. När du klickar på den visas alla filer som rullgardinsmeny. För att hitta textredigeraren för att redigera "Koden", välj "src" och öppna "main.cpp". Textredigerarläget visas på hemskärmen när du öppnar en ny flik. Här kan du skriva alla koder för Aktuellt pågående projekt.
- Skriv bara Blink Code för Arduino UNO. Observera att PlatformIO inte har standardåtkomst till Arduino-bibliotek, så varje gång du skriver koden för Arduino ska du alltid inkludera Arduino-biblioteket, dvs. ”#include” i början av programmet.
- Nästa steg är att kompilera och ladda upp koden. För att göra det, låt oss titta på funktionerna som tillhandahålls av PlatformIO. PlatformIO väljer också COM-porten som standard. Men du kan också ändra port om det inte är önskad COM-port. Ändringen av COM-port kommer att förklaras senare i denna handledning. PlatformIO har funktioner som Build, Upload, Upload to Remote Device, Clean, Test, Run Task, Serial Monitor, New Terminal. Alla funktioner finns i det nedre vänstra hörnet av Editor. När du håller muspekaren över ikonerna visas funktionerna.
- För att bygga skissen klickar du på 'Bygg' och för att ladda upp skissen klickar du på ikonen 'Ladda upp'. När uppladdningen är klar kommer du att kunna se hur lång tid det tar att ladda upp med alla andra detaljer och ett meddelande som säger ”Framgång”. Koden laddas upp framgångsrikt och du kommer att kunna se Blinking of LED i Arduino Board.
För att välja eller ändra någon COM-port, gå bara till PlatformIO-startskärmen och gå sedan till Enheterna, här kan du se alla tillgängliga enheter anslutna. Välj lämplig COM-port och följ samma procedur för att ladda upp skissen.
Programmering av STM32-kort med hjälp av PlatformIO IDE
Programmering av STM32-kortet kommer att ha exakt liknande steg som Programmering Arduino UNO förklaras ovan. Skillnaden är att välja styrelsen för STM32 när man öppnar ett nytt projekt för STM32. Det som är bra med PlatformIO är att det inte behöver något externt paket för att någon styrelse ska kunna ladda ner separat, det laddar automatiskt ner alla paket och gör det enkelt för oss att välja ett kort och gå till editor. Vi använder extern JLink / JTAG / STLink / seriell programmerare för att ladda upp skiss till STM32. STM32 kan också programmeras med Arduino IDE. Fortsätt med följande steg för att programmera det med PlatformIO.
- Namnge bara projektet (här är det 'Blink STM32'). Välj sedan styrelsen för STM32, dvs. ' BluePill F103C8 (Generic) '. Välj sedan Framework som Arduino. Klicka på Slutför och vänta en stund eftersom det initialt tar tid att ladda ner paketen och beroenden för styrelsen STM32.
- När du har ställt in kommer nästa projekttid att vara mindre jämfört med först. Gå helt enkelt till Untitled (Workspace) -> src -> main.cpp i den vänstra filutforskaren.
- Nu kommer de kommande stegen att vara viktiga eftersom det måste bestämmas att vilken programmerare vi ska använda för programmering av STM32 Board. Det finns många programmerare tillgängliga som JTAG, STLink, JLink, Serial etc. Allt fungerar men du måste konfigurera konfigurationssidan eller filen 'platformio.ini'.
- I detta projekt använder vi seriell programmerare CP210x USB till UART Bridge. Vi har redan gjort programmeringen av STM32F103C8-kortet med USB-port, o de flesta steg kommer bara att tas därifrån. Du kan besöka länken och hitta mer om detta.
- För det första, anslut seriell programmerare till STM32-kortet med följande pin-mappning och anslut den till PC.
USB till seriell programmerare |
STM32 styrelse |
5V |
5V |
Gnd |
Gnd |
Rx |
A9 |
Tx |
A10 |
- Gå nu till projektutforskaren och öppna sidan 'platformio.ini' och ändra uttalandet som visas på bilden. Den upload_protocol berättar vad som programmerare ska använda (STLink, JLINK, Serial etc). Den upload_port väljer COM-porten. Du hittar genom att gå till "Enheter" på hemsidan. Ändra COM-porten enligt din COM-port.
- Gå till 'main.cpp' och ändra programmet till Blink- program. Ladda bara upp programmet så visar det framgångsmeddelande och det tar tid att ladda upp det. Nu börjar lysdioden blinka ansluten vid PC13-stift på STM32-kortet.
Detta avslutar den fullständiga handledningen om programmering av Arduino UNO samt STM32 Board med PlatformIO. Om du har problem med att följa stegen, skriv till vårt forum eller kommentera nedan.