- Hva er PlatformIO?
- Sette opp PlatformIO for Arduino Uno
- Programmering av Arduino UNO ved bruk av PlatformIO IDE
- Programmering av STM32 Board ved hjelp av PlatformIO IDE
Utviklingen i Arduino og Arduino IDE har alltid vært enkel og morsom med sitt enkle brukergrensesnitt. Arduino IDE er åpen kildekode og gratis å bruke utviklingsmiljø med alle funksjoner som å skrive, kompilere og laste opp koden til Arduino Boards. Den er basert på Java og kjører på store operativsystemer som Windows, OS X og Linux. Men med all sin enkelhet og store fellesskap har den ikke noen funksjoner som en erfaren utvikler vil kreve for rask utvikling som kan redusere utviklingsperioden. Det er mange utviklingsmiljøer tilgjengelig for Arduino, men alle har noen fordeler og ulemper. I dag begynner vi med PlatformIO utviklingsmiljø som er enkelt å bruke og har lagt til funksjoner sammenlignet med Arduino miljø.
Hva er PlatformIO?
PlatformIO er et Python-basert åpen kildekode-økosystem for IoT-utvikling og en kryssplattform IDE med en enhetlig feilsøking kjører på Windows, Mac og Linux. PlatformIO leveres med biblioteksjef for plattformer som Arduino eller MBED-støtte sammen med enhetstesting og firmwareoppdateringer. PlatformIO støtter en rekke plattformer, rammeverk, tavler som Arduino, ESP32, ESP8266 og kommer med antall eksempler og biblioteker. Den er uavhengig av plattformen den kjører i, og den krever bare Python installert på datamaskinen.
Fordeler med PlatformIO
PlatformIO har rask utvikling med funksjonene som C / C ++ Code Completion og Smart Code Linter for rask profesjonell utvikling som ikke er der i Arduino IDE. I tillegg til dette tilbyr PlatformIO temastøtte med mørke og lyse farger for utvikling når som helst. Den leveres også med Smart Code Navigations og Code Formatting. Kjernefunksjonene inkluderer Multi-platform Build System, Library Manager, Serial Port Monitor etc.
The Unified Debugger med støtte for flere arkitekturer og utvikling plattformer gjør det mulig å feilsøke flere innebygde brett med Zero-konfigurasjon. PlatformIO Unified Debugger har funksjoner som Conditional Breakpoints, Expressions and Watchpoints, Memory Viewer, En varm omstart av en aktiv feilsøkingsøkt. PlatformIO Core er skrevet i Python 2.7 og fungerer på Windows, macOS, Linux, FreeBSD og til og med ARM-baserte datamaskiner med kredittkortstørrelse som Raspberry Pi, BeagleBone, CubieBoard, Samsung ARTIK, etc. Bortsett fra dette har PlatformIO File Explorer som hjelper organisering av filene når prosjektet vokser til et visst nivå og organisering blir nødvendig.
Sette opp PlatformIO for Arduino Uno
Å bruke PlatformIO er veldig enkelt og krever få trinn for å komme i gang. PlatformIO krever Python installert på datamaskinen siden som forklart ovenfor at PlatformIO-kjernen ble skrevet i Python 2.7. Merk at PlatformIO ikke støtter Python 3, så det anbefales at du installerer Python 2-versjonen og deretter fortsetter for å konfigurere PlatformIO IDE. PlatformIO er en IDE pluss at den tilbyr offisielle pakker (plugins, utvidelser) for de mest populære IDEene og tekstredigererne.
I dag installerer vi PlatformIO til en slik tekstredigerer som Atom og Visual Studio Code. I offisiell dokumentasjon av Platform IDE står det at PlatformIO IDE for VS Code (Visual Studio Code) gir bedre systemytelse, og brukere har funnet det lettere å komme i gang. Så vi vil sette opp PlatformIO i Visual Studio Code. VS-koden er en kjent tekstredigerer med antall utvidelser som gjør at vi kan utvikle oss i forskjellige programmeringsspråk.
La oss begynne å sette opp PlatformIO for å begynne å utvikle kode i Arduino UNO. Det er trinn involvert som er forklart nedenfor:
- Installer først Visual Studio-koden fra det offisielle nettstedet. Installasjonstrinnene til Visual Studio Code blir ikke forklart her, men du kan finne det på VS Code-nettstedet. Det er generelle trinn involvert akkurat som å installere annen programvare på Windows OS.
- Visual Studio-koden vil se ut som følger når den er installert.
- Neste trinn inkluderer installasjon av PlatformIO ved hjelp av VS-kodeutvidelser. For dette må du gå til Extensions-ikonet øverst til venstre i VS-koden. Det er firkantet rammeikon som er det femte ikonet øverst til venstre. Bare klikk på det, og en søkeboks vises like ved siden der du kan finne mange utvidelser for forskjellige programmeringsspråk som C / C ++, C #, Python, PHP, Go, JavaScript, TypeScript og Node.js etc.
- Søk etter “PlatformIO” i søkeboksen for utvidelser, og du vil se PlatformIO-ikon med navn og beskrivelse. Bare klikk på den og installer den. Det kan ta litt tid å installere verktøykjeder og andre avhengigheter. Avhengigheter inkluderer C / C ++ -miljø ettersom Arduino-utvikling for det meste gjøres på C / C ++.
- Når installasjonen er fullført, vil du se følgende grensesnitt. Grensesnittet inkluderer all nødvendig navigering, for eksempel å lage nytt prosjekt, importere Arduino-prosjekt, åpent prosjekt, prosjekteksempler osv. Det anbefales å starte VS Code Editor på nytt etter installasjonen av PlatformIO.
Dette fullfører installasjonstrinnene til PlatformIO. Nå er PlatformIO installert og klar til bruk. Akkurat som Arduino IDE, vil vi starte med Blink-programmet og prøve å laste opp Blink-programmet i Arduino UNO.
Programmering av Arduino UNO ved bruk av PlatformIO IDE
PlatformIO-grensesnittet vil bli forklart samtidig under programmering av Arduino UNO. Her programmerer vi Arduino for å blinke LED ved hjelp av PlatformIO. Det samme kan gjøres ved hjelp av Arduino IDE. Følg trinnene nedenfor for å lage et nytt prosjekt for blinkende LED.
- Velg fanen “Nytt prosjekt” fra hurtigmenyen.
- Gi prosjektet navn (her er det 'Blink'). Søk og velg tavlen som er Arduino UNO. Siden vi jobber i Arduino-rammeverket, vil det valgte rammeverket være Arduino. Når du har fylt ut alle detaljene, klikker du bare på Fullfør.
- Prosjektet vil begynne å bli opprettet ved å samle ressurser og andre avhengigheter.
- Når prosjektet er vellykket opprettet, vil du få melding om at “Prosjektet er vellykket initialisert” med alle utfylte detaljer.
- For å åpne det opprettede prosjektet, er det bare å bla nedover Home-menyen til PlatformIO, og du vil se hele listen over prosjektene som ble opprettet fra begynnelsen. I høyre hjørne av det opprettede prosjektet, klikk på 'Åpne' for å åpne prosjektet og begynne å redigere.
- Når prosjektet åpnes, vil det i utgangspunktet se ut som det er skjult, men ikke bekymre deg, PlatformIO har filutforskerfunksjon der alle filene til det aktuelle prosjektet blir funnet. Bare gå til øverste venstre hjørne og åpne 'Untitled (Workplace)'. Når du klikker på den, vises alle filene som rullegardinmeny. For å finne teksteditoren for å redigere 'Koden', velg 'src' og åpne 'main.cpp'. Tekstredigeringsmodus vises på startskjermen når du åpner en ny fane. Her kan du skrive alle koder for Current Ongoing Project.
- Bare skriv Blink Code for Arduino UNO. Merk at PlatformIO ikke har standard tilgang til Arduino-biblioteker, så hver gang du skriver koden for Arduino, inkluder alltid Arduino-biblioteket, dvs. "#include" i begynnelsen av programmet.
- Det neste trinnet er å kompilere og laste opp koden. For å gjøre det, la oss se på funksjonene som tilbys av PlatformIO. PlatformIO velger også COM-porten som standard. Men du kan også endre porten hvis den ikke er ønsket COM-port. Endringen av COM-port vil bli forklart senere i denne veiledningen. PlatformIO har funksjoner som Build, Upload, Upload to Remote Device, Clean, Test, Run Task, Serial Monitor, New Terminal. Alle funksjonene finner du i nederste venstre hjørne av Editor. Når du holder markøren over ikonene, vises funksjonene.
- For å bygge skissen, klikk på 'Bygg' og for å laste opp skissen, klikk på 'Last opp' -ikonet. Når opplastingen er ferdig, vil du kunne se tiden det tar å laste opp med alle andre detaljer og en melding som sier “Suksess”. Koden lastes opp, og du vil kunne se Blinking of LED i Arduino Board.
For å velge eller endre hvilken som helst COM-port, er det bare å gå til PlatformIO-startskjermen og deretter gå til Enhetene, her kan du se alle tilgjengelige enheter koblet til. Velg passende COM-port og følg den samme fremgangsmåten for å laste opp skissen.
Programmering av STM32 Board ved hjelp av PlatformIO IDE
Programmering av STM32 Board vil ha nøyaktig lignende trinn som Programmering Arduino UNO forklart ovenfor. Forskjellen vil være å velge styret for STM32 når du åpner et nytt prosjekt for STM32. Det som er bra med PlatformIO er at det ikke trenger noen ekstern pakke for noe kort å laste ned separat, det laster automatisk ned alle pakkene og gjør det enkelt for oss å velge et kort og gå til editor. Vi vil bruke ekstern JLink / JTAG / STLink / Serial Programmer for å laste opp skisse til STM32. STM32 kan også programmeres med Arduino IDE. Fortsett med følgende trinn for å programmere den med PlatformIO.
- Bare gi navnet til prosjektet (her er det 'Blink STM32'). Velg deretter kortet for STM32, dvs. ' BluePill F103C8 (Generisk) '. Velg deretter Framework som Arduino. Klikk på Fullfør og vent litt, da det i utgangspunktet vil ta tid å laste ned pakkene og avhengighetene for kortet STM32.
- Når du er satt opp, vil neste prosjektopprettelsestid være mindre sammenlignet med først. Nå er det bare å gå til Untitled (Workspace) -> src -> main.cpp i venstre filutforsker.
- Nå vil de kommende trinnene være viktige ettersom det må avgjøres hvilken programmerer vi skal bruke for programmering av STM32 Board. Det er mange programmerere tilgjengelige, for eksempel JTAG, STLink, JLink, Serial etc. Alt fungerer, men du må konfigurere konfigurasjonssiden eller filen 'platformio.ini'.
- I dette prosjektet bruker vi seriell programmerer CP210x USB til UART Bridge. Vi har allerede gjort programmering av STM32F103C8-kortet ved hjelp av USB-port, o de fleste trinnene vil bare bli tatt derfra. Du kan gå til lenken og finne mer om dette.
- Først kobler du seriell programmerer til STM32-kortet med følgende pin-kartlegging og kobler den til PC.
USB til seriell programmerer |
STM32 styret |
5V |
5V |
Gnd |
Gnd |
Rx |
A9 |
Tx |
A10 |
- Gå nå til prosjektutforskeren og åpne 'platformio.ini' -siden og endre uttalelsen som vist på bildet. Den upload_protocol vil si det som programmerer skal bruke (STLINK, JLink, Serial etc). Den upload_port velger COM-port. Du kan finne ved å gå til 'Enheter' på hjemmesiden. Endre COM-porten i henhold til din COM-port.
- Gå til 'main.cpp' og endre programmet til Blink- programmet. Nå er det bare å laste opp programmet så viser det suksessmeldingen og tiden det tar å laste det opp. Nå vil LED-lampen begynne å blinke tilkoblet på PC13-pinnen på STM32-kortet.
Dette avslutter den komplette opplæringen om programmering av Arduino UNO samt STM32 Board ved hjelp av PlatformIO. Hvis du har problemer når du følger trinnene, kan du skrive til forumet eller kommentere nedenfor.