- Hvad er PlatformIO?
- Opsætning af PlatformIO til Arduino Uno
- Programmering af Arduino UNO ved hjælp af PlatformIO IDE
- Programmering af STM32 Board ved hjælp af PlatformIO IDE
Udvikling i Arduino og Arduino IDE har altid været let og sjov med deres enkle brugergrænseflade. Arduino IDE er open source og gratis at bruge udviklingsmiljø med alle funktioner som at skrive, kompilere og uploade koden til Arduino Boards. Det er baseret på Java og kører på større operativsystemer som Windows, OS X og Linux. Men med al sin enkelhed og store samfund har den ikke nogle funktioner, som en erfaren udvikler vil kræve for hurtig udvikling, der kan reducere udviklingsperioden. Der er mange udviklingsmiljøer tilgængelige for Arduino, men alle har nogle fordele og ulemper. I dag starter vi med PlatformIO-udviklingsmiljø, som er let at bruge og har tilføjet funktioner sammenlignet med Arduino-miljøet.
Hvad er PlatformIO?
PlatformIO er et Python-baseret open source-økosystem til IoT-udvikling, og en cross-platform IDE med en samlet debugger kører på Windows, Mac og Linux. PlatformIO leveres med biblioteksmanager til platforme som Arduino eller MBED support sammen med enhedstest og firmwareopdateringer. PlatformIO understøtter et antal platforme, rammer, bestyrelser som Arduino, ESP32, ESP8266 og leveres med et antal eksempler og biblioteker. Det er uafhængigt af platformen, hvor det kører, og det kræver kun Python installeret på computeren.
Fordele ved PlatformIO
PlatformIO har hurtig udvikling med sine funktioner som C / C ++ Code Completion og Smart Code Linter til hurtig professionel udvikling, som ikke er der i Arduino IDE. Derudover tilbyder PlatformIO temaunderstøttelse med mørke og lyse farver til udvikling når som helst. Den leveres også med Smart Code Navigations og Code Format. Kernefunktionerne inkluderer Multi-platform Build System, Library Manager, Serial Port Monitor osv.
Den Unified Debugger med en støtte til de mange arkitekturer og udviklingsplatforme gør det muligt at debug flere indbyggede brædder med nul-konfiguration. PlatformIO Unified Debugger har funktioner som Conditional Breakpoints, Expressions and Watchpoints, Memory Viewer, En varm genstart af en aktiv debugging-session. PlatformIO Core er skrevet i Python 2.7 og fungerer på Windows, macOS, Linux, FreeBSD og endda ARM-baserede computere med kreditkortstørrelse som Raspberry Pi, BeagleBone, CubieBoard, Samsung ARTIK osv. Bortset fra dette har PlatformIO File Explorer, som hjælper organisering af filerne, når projektet vokser til et bestemt niveau, og organisering bliver nødvendigt.
Opsætning af PlatformIO til Arduino Uno
Brug af PlatformIO er meget enkel og kræver få trin for at komme i gang. PlatformIO kræver Python installeret på computeren, da som forklaret ovenfor, at PlatformIO-kernen blev skrevet i Python 2.7. Bemærk, at PlatformIO ikke understøtter Python 3, så det anbefales, at du installerer Python 2-versionen og derefter fortsætter med opsætningen af PlatformIO IDE. PlatformIO er en IDE plus den leverer officielle pakker (plugins, udvidelser) til de mest populære IDE'er og teksteditorer.
I dag installerer vi PlatformIO til en sådan teksteditor som Atom og Visual Studio Code. I officiel dokumentation af Platform IDE står det, at PlatformIO IDE til VS-kode (Visual Studio Code) tilbyder bedre systemydelse, og brugere har fundet det lettere at komme i gang. Så vi vil oprette PlatformIO i Visual Studio Code. VS-koden er en velkendt teksteditor med et antal udvidelser, der giver os mulighed for at udvikle sig på forskellige programmeringssprog.
Lad os begynde at oprette PlatformIO for at begynde at udvikle kode i Arduino UNO. Der er involverede trin, som forklares nedenfor:
- Installer først Visual Studio-koden fra dens officielle hjemmeside. Installationstrinnene til Visual Studio Code forklares ikke her, men du kan finde det på VS Code-webstedet. Der er generelle trin involveret ligesom installation af anden software på Windows OS.
- Visual Studio-koden vil se ud som følger, når den er installeret.
- Næste trin inkluderer installation af PlatformIO ved hjælp af VS-kodeudvidelser. Til dette skal du gå til Extensions Icon i øverste venstre hjørne af VS-koden. Der er firkantet kasse ikon, som er den 5 th ikonet øverst til venstre hjørne. Bare klik på det, og et søgefelt vises lige ved siden af det, hvor du kan finde mange udvidelser til forskellige programmeringssprog som C / C ++, C #, Python, PHP, Go, JavaScript, TypeScript og Node.js osv.
- Søg efter “PlatformIO” i søgefeltet til udvidelser, og du vil se PlatformIO-ikon med navn og beskrivelse. Bare klik på det og installer det. Det kan tage lidt tid at installere værktøjskæder og andre afhængigheder. Afhængigheder inkluderer C / C ++ miljø, da Arduino-udvikling for det meste sker på C / C ++.
- Når installationen er afsluttet, vil du se følgende grænseflade. Interfacet inkluderer al den nødvendige navigation såsom oprettelse af nyt projekt, import af Arduino-projekt, åbent projekt, projekteksempler osv. Det anbefales at genstarte VS Code Editor efter installationen af PlatformIO.
Dette afslutter installationstrinene til PlatformIO. Nu er PlatformIO installeret og klar til brug. Ligesom Arduino IDE starter vi med Blink-programmet og forsøger at uploade Blink-programmet i Arduino UNO.
Programmering af Arduino UNO ved hjælp af PlatformIO IDE
PlatformIO-grænsefladen vil blive forklaret samtidigt under programmering af Arduino UNO. Her programmerer vi Arduino til blinkende LED ved hjælp af PlatformIO. Det samme kan gøres ved hjælp af Arduino IDE. Følg nedenstående trin for at oprette et nyt projekt til blinkende LED.
- Vælg fanen "Nyt projekt" i hurtigadgangsmenuen.
- Navngiv projektet (her er det 'Blink'). Søg og vælg tavlen, der er Arduino UNO. Da vi arbejder i Arduino-rammer, vil den valgte ramme være Arduino. Når du har udfyldt alle detaljer, skal du bare klikke på Udfør.
- Projektet begynder at blive oprettet ved at indsamle ressourcer og andre afhængigheder.
- Når projektet er oprettet med succes, får du hurtigmeddelelsen som "Projektet er initialiseret med succes" med alle udfyldte detaljer.
- For at åbne det oprettede projekt skal du bare rulle ned i menuen Home for PlatformIO og du vil se alle listen over projekter oprettet fra starten. I højre hjørne af det oprettede projekt skal du klikke på 'Åbn' for at åbne projektet og begynde at redigere.
- Når projektet åbnes, ser det oprindeligt ud som skjult, men rolig, PlatformIO har filudforskningsfunktion, hvor alle filerne i det aktuelle projekt findes. Gå bare til øverste venstre hjørne og åbn 'Untitled (Workplace)'. Når du klikker på det, vises alle filer som rullemenu. For at finde teksteditoren til at redigere 'Koden' skal du vælge 'src' og åbne 'main.cpp'. Teksteditor-tilstand vises på startskærmen med åbning af en ny fane. Her kan du skrive alle koder for det aktuelle igangværende projekt.
- Skriv blot Blink Code for Arduino UNO. Bemærk, at PlatformIO ikke har standardadgang til Arduino-biblioteker, så hver gang du skriver koden til Arduino, skal du altid medtage Arduino-biblioteket, dvs. “#include” i starten af programmet.
- Det næste trin ville være at kompilere og uploade koden. Lad os se på funktionerne leveret af PlatformIO. PlatformIO vælger også COM-porten som standard. Men du kan også ændre porten, hvis den ikke er den ønskede COM-port. Ændringen af COM-port vil blive forklaret senere i denne vejledning. PlatformIO har funktioner som Build, Upload, Upload til Remote Device, Clean, Test, Run Task, Serial Monitor, New Terminal. Alle funktionerne findes i nederste venstre hjørne af Editoren. Når du holder markøren over ikonerne, vises funktionerne.
- For at opbygge skitsen skal du klikke på 'Byg' og for at uploade skitsen skal du klikke på 'Upload' ikonet. Når upload er færdig, vil du kunne se den tid, det tager at uploade med alle andre detaljer og en besked, der siger "Succes". Koden uploades med succes, og du vil kunne se blinkende LED i Arduino Board.
For at vælge eller ændre en hvilken som helst COM-port skal du bare gå til PlatformIO-startskærmen og derefter gå til Enhederne. Her kan du se alle de tilsluttede enheder tilsluttet. Vælg den passende COM-port, og følg den samme procedure for at uploade skitsen.
Programmering af STM32 Board ved hjælp af PlatformIO IDE
Programmering af STM32 Board vil have nøjagtigt lignende trin som Programmering Arduino UNO forklaret ovenfor. Forskellen vil være at vælge bestyrelsen til STM32, når man åbner et nyt projekt til STM32. Det gode ved PlatformIO er, at det ikke har brug for nogen ekstern pakke, for at ethvert kort kan downloades separat, det downloader automatisk alle pakkerne og gør det nemt for os at vælge et kort og gå til editor. Vi bruger ekstern JLink / JTAG / STLink / seriel programmerer til at uploade skitse til STM32. STM32 kan også programmeres med Arduino IDE. Fortsæt med følgende trin for at programmere det med PlatformIO.
- Navngiv bare projektet (her er det 'Blink STM32'). Vælg derefter tavlen til STM32, dvs. ' BluePill F103C8 (Generisk) '. Vælg derefter Framework som Arduino. Klik på Afslut, og vent et stykke tid, da det i første omgang tager tid at downloade pakkerne og afhængighederne til kortet STM32.
- Når den er oprettet, vil den næste projektoprettelsestid være mindre sammenlignet med den første. Gå blot til Untitled (Workspace) -> src -> main.cpp i venstre filudforsker.
- Nu vil de kommende trin være vigtige, da det skal besluttes, hvilken programmerer vi skal bruge til programmering af STM32 Board. Der er mange programmerere tilgængelige, såsom JTAG, STLink, JLink, Serial osv. Alt fungerer, men du skal konfigurere konfigurationssiden eller filen 'platformio.ini'.
- I dette projekt bruger vi seriel programmerer CP210x USB til UART Bridge. Vi har allerede gjort programmeringen af STM32F103C8-kortet ved hjælp af USB-port, o de fleste trin vil kun blive taget derfra. Du kan besøge linket og finde mere om dette.
- For det første skal du forbinde seriel programmerer til STM32-kortet med følgende pin-kortlægning og slutte den til pc.
USB til seriel programmerer |
STM32-kort |
5V |
5V |
Gnd |
Gnd |
Rx |
A9 |
Tx |
A10 |
- Gå nu til projektudforskeren, og åbn 'platformio.ini' side, og skift udsagnet som vist på billedet. Den upload_protocol vil fortælle det, som programmør skal bruge (STLink, JLink, Serial osv). Den upload_port vælger COM-port. Du kan finde ved at gå til 'Enheder' på startsiden. Skift COM-port i henhold til din COM-port.
- Gå til 'main.cpp', og skift programmet til Blink- program. Upload nu bare programmet, så vises besked om succes og tid til upload. Nu begynder LED'en at blinke tilsluttet ved PC13-stift på STM32-kortet.
Dette afslutter den komplette tutorial om programmering af Arduino UNO samt STM32 Board ved hjælp af PlatformIO. Hvis du har problemer, mens du følger trinnene, så skriv til vores forum eller kommentar nedenfor.