- Ce este PlatformIO?
- Configurarea PlatformIO pentru Arduino Uno
- Programarea Arduino UNO utilizând PlatformIO IDE
- Programarea plăcii STM32 utilizând PlatformIO IDE
Dezvoltarea în Arduino și Arduino IDE a fost întotdeauna ușoară și distractivă cu interfața lor de utilizator simplă. ID-ul Arduino este open-source și este liber să utilizeze mediul de dezvoltare cu toate caracteristicile precum scrierea, compilarea și încărcarea codului pe plăcile Arduino. Se bazează pe Java și rulează pe sisteme de operare majore precum Windows, OS X și Linux. Dar, cu toată simplitatea și comunitatea largă, nu are unele caracteristici pe care un dezvoltator experimentat le va necesita pentru o dezvoltare rapidă, care poate reduce perioada de dezvoltare. Există multe medii de dezvoltare disponibile pentru Arduino, dar toate au unele avantaje și dezavantaje. Astăzi, vom începe cu mediul de dezvoltare PlatformIO, care este ușor de utilizat și are caracteristici adăugate comparativ cu mediul Arduino.
Ce este PlatformIO?
PlatformIO este un ecosistem open source bazat pe Python pentru dezvoltarea IoT și un IDE pe mai multe platforme cu un depanator unificat rulează pe Windows, Mac și Linux. PlatformIO vine cu manager de bibliotecă pentru platforme precum suportul Arduino sau MBED, împreună cu testarea unității și actualizările de firmware. PlatformIO acceptă o serie de platforme, cadre, plăci precum Arduino, ESP32, ESP8266 și vine cu un număr de exemple și biblioteci. Este independent de platforma pe care rulează și necesită doar instalarea Python pe computer.
Avantajele PlatformIO
PlatformIO oferă o dezvoltare rapidă, cu funcțiile sale, cum ar fi completarea codului C / C ++ și Smart Code Linter, pentru o dezvoltare profesională rapidă, care nu se află în IDE-ul Arduino. În plus, PlatformIO oferă suportul tematic cu culori închise și deschise pentru dezvoltare oricând. De asemenea, vine cu Navigări Smart Code și Formatare cod. Caracteristicile principale includ sistemul de construire multiplataforma, Manager bibliotecă, Serial Port Monitor etc.
Unified Debuggerul cu un suport pentru multiple arhitecturi și platforme de dezvoltare permite să depana mai multe placi de încorporat cu zero-configurare. PlatformIO Unified Debugger are caracteristici precum Puncte de întrerupere condiționate, Expresii și Puncte de supraveghere, Memory Viewer, O repornire rapidă a unei sesiuni de depanare active. PlatformIO Core este scris în Python 2.7 și funcționează pe computere Windows, macOS, Linux, FreeBSD și chiar pe carduri de credit bazate pe ARM, cum ar fi Raspberry Pi, BeagleBone, CubieBoard, Samsung ARTIK etc. În afară de aceasta, PlatformIO are File Explorer care ajută organizarea fișierelor atunci când proiectul crește la un anumit nivel și organizarea devine necesară.
Configurarea PlatformIO pentru Arduino Uno
Utilizarea PlatformIO este foarte simplă și necesită câțiva pași pentru a începe. PlatformIO necesită Python instalat pe computer deoarece, după cum sa explicat mai sus, nucleul PlatformIO a fost scris în Python 2.7. Rețineți că PlatformIO nu acceptă Python 3, deci este recomandat să instalați versiunea Python 2 și apoi să continuați pentru configurarea IDE PlatformIO. PlatformIO este un IDE plus oferă pachete oficiale (plugin-uri, extensii) pentru cele mai populare IDE și editoare de text.
Astăzi vom instala PlatformIO pe un astfel de editor de text precum Atom și Visual Studio Code. În documentația oficială a Platform IDE, se afirmă că PlatformIO IDE pentru VS Code (Visual Studio Code) oferă o performanță mai bună a sistemului, iar utilizatorii au găsit că este mai ușor să înceapă. Deci, vom configura PlatformIO în Visual Studio Code. Codul VS este un editor de text bine cunoscut, cu un număr de extensii care ne permite să ne dezvoltăm în diferite limbaje de programare.
Să începem să configurăm PlatformIO pentru a începe să dezvoltăm cod în Arduino UNO. Există pași implicați, care sunt explicați mai jos:
- Mai întâi instalați codul Visual Studio de pe site-ul său oficial. Pașii de instalare ai Visual Studio Code nu vor fi explicați aici, dar îl puteți găsi pe site-ul VS Code. Există pași generali implicați la fel ca instalarea oricărui alt software pe sistemul de operare Windows.
- Codul Visual Studio va arăta după cum urmează atunci când este instalat cu succes.
- Pasul următor include instalarea PlatformIO utilizând extensiile de cod VS. Pentru aceasta, trebuie să accesați pictograma extensii din colțul din stânga sus al codului VS. Există pătrat Box Icon, care este de 5 - lea icoana de pe partea stângă sus de colț. Doar faceți clic pe acesta și o casetă de căutare va apărea chiar lângă aceea, unde puteți găsi multe extensii pentru diferite limbaje de programare, cum ar fi C / C ++, C #, Python, PHP, Go, JavaScript, TypeScript și Node.js etc.
- Căutați „PlatformIO” în caseta de căutare a extensiei și veți vedea pictograma PlatformIO cu nume și descriere. Doar faceți clic pe el și instalați-l. Poate dura ceva timp instalând lanțuri de instrumente și alte dependențe. Dependențele includ mediul C / C ++, deoarece dezvoltarea Arduino se face în cea mai mare parte pe C / C ++.
- După finalizarea instalării, veți vedea următoarea interfață. Interfața include toate navigările necesare, cum ar fi crearea unui proiect nou, importarea proiectului Arduino, proiect deschis, exemple de proiect etc. Se recomandă repornirea editorului de cod VS după instalarea PlatformIO.
Aceasta finalizează pașii de instalare a PlatformIO. Acum, PlatformIO este instalat și gata de utilizare. La fel ca Arduino IDE, vom începe cu programul Blink și vom încerca să încărcăm programul Blink în Arduino UNO.
Programarea Arduino UNO utilizând PlatformIO IDE
Interfața PlatformIO va fi explicată simultan în timpul programării Arduino UNO. Aici programăm Arduino pentru LED intermitent folosind PlatformIO. La fel se poate face folosind Arduino IDE. Urmați pașii de mai jos pentru a crea un nou proiect pentru LED-ul intermitent.
- Selectați fila „Proiect nou” din meniul de acces rapid.
- Denumiți proiectul (aici este „Blink”). Căutați și selectați placa care este Arduino UNO. Deoarece lucrăm în cadrul Arduino, deci cadrul selectat va fi Arduino. După completarea tuturor detaliilor, faceți clic pe Finalizare.
- Proiectul va începe să fie creat prin colectarea resurselor și a altor dependențe.
- Când proiectul este creat cu succes, veți primi mesajul prompt ca „Proiectul a fost inițializat cu succes” cu toate detaliile completate.
- Pentru a deschide proiectul creat, trebuie doar să derulați în jos meniul Acasă al PlatformIO și veți vedea toată lista proiectelor create de la început. În colțul din dreapta al proiectului creat, faceți clic pe „Deschidere” pentru a deschide proiectul și a începe editarea.
- Când proiectul este deschis, inițial va arăta ca fiind ascuns, dar nu vă faceți griji, PlatformIO are funcția de explorare a fișierelor unde vor fi găsite toate fișierele proiectului curent. Mergeți în colțul din stânga sus și deschideți „Untitled (Workplace)”. Când faceți clic pe acesta, toate fișierele vor apărea ca meniu derulant. Pentru a găsi editorul de text pentru a edita „Codul”, selectați „src” și deschideți „main.cpp”. Modul editor de text va apărea pe ecranul de pornire cu deschiderea unei noi file. Aici puteți scrie toate codurile proiectului curent în curs.
- Pur și simplu scrieți Codul Blink pentru Arduino UNO. Rețineți că PlatformIO nu are acces implicit la bibliotecile Arduino, așa că de fiecare dată când scrieți codul pentru Arduino, includeți întotdeauna biblioteca Arduino, adică „#include” la începutul programului.
- Următorul pas ar fi compilarea și încărcarea codului. Pentru a face acest lucru, să ne uităm la funcțiile furnizate de PlatformIO. De asemenea, PlatformIO selectează implicit portul COM. Dar puteți schimba și portul dacă nu este portul COM dorit. Schimbarea portului COM va fi explicată mai târziu în acest tutorial. PlatformIO are funcții precum Build, Upload, Upload to Remote Device, Clean, Test, Run Task, Serial Monitor, New Terminal. Toate funcțiile pot fi găsite în colțul din stânga jos al Editorului. Când treceți cu mouse-ul peste pictograme, funcțiile vor fi afișate.
- Pentru a construi schița, faceți clic pe „Construiți” și pentru a încărca schița, faceți clic pe pictograma „Încărcați”. Când încărcarea este terminată, veți putea vedea timpul necesar încărcării cu toate celelalte detalii și un mesaj care spune „Succes”. Codul este încărcat cu succes și veți putea vedea clipirea LED-ului în placa Arduino.
Pentru a selecta sau modifica orice port COM, trebuie doar să accesați ecranul de start PlatformIO și apoi să accesați dispozitivele, aici puteți vedea toate dispozitivele disponibile conectate. Selectați portul COM adecvat și urmați aceeași procedură pentru a încărca schița.
Programarea plăcii STM32 utilizând PlatformIO IDE
Programarea plăcii STM32 va avea exact pași similari ca Programarea Arduino UNO explicată mai sus. Diferența va fi selectarea plăcii pentru STM32 la deschiderea unui nou proiect pentru STM32. Lucrul bun despre PlatformIO este că nu are nevoie de niciun pachet extern pentru ca nici o placă să se descarce separat, descarcă automat toate pachetele și ne este ușor să selectăm o placă și să mergem la editor. Vom folosi programatorul extern JLink / JTAG / STLink / Serial pentru a încărca schița în STM32. STM32 poate fi, de asemenea, programat cu Arduino IDE. Continuați cu pașii următori pentru a-l programa cu PlatformIO.
- Numiți doar proiectul (aici este „Blink STM32”). Apoi selectați placa pentru STM32, adică „ BluePill F103C8 (Generic) ”. Apoi selectați Framework ca Arduino. Faceți clic pe Finalizare și așteptați ceva timp, deoarece inițial va dura timp să descărcați pachetele și dependențele pentru placa STM32.
- După configurare, următorul moment de creare a proiectului va fi mai puțin comparabil cu primul. Acum pur și simplu accesați Untitled (Workspace) -> src -> main.cpp în exploratorul de fișiere din stânga.
- Acum, următorii pași vor fi importanți, deoarece trebuie să decidem ce programator ar trebui să folosim pentru programarea plăcii STM32. Există mulți programatori disponibili, cum ar fi JTAG, STLink, JLink, Serial etc. Toate vor funcționa, dar trebuie să configurați pagina sau fișierul de configurare „platformio.ini”.
- În acest proiect, utilizăm Serial Programmer CP210x USB to UART Bridge. Am făcut deja programarea plăcii STM32F103C8 folosind portul USB, o majoritate a pașilor vor fi luați doar de acolo. Puteți vizita linkul și puteți afla mai multe despre acest lucru.
- În primul rând, conectați programatorul serial la placa STM32 cu următoarea mapare pin și conectați-l la computer.
Programator USB către serie |
Placă STM32 |
5V |
5V |
Gnd |
Gnd |
Rx |
A9 |
Tx |
A10 |
- Acum accesați exploratorul de proiecte și deschideți pagina „platformio.ini” și modificați declarația așa cum se arată în imagine. Upload_protocol va spune ca programator care ar trebui să folosească (STLink, JLink, serial, etc). Upload_port selectează portul COM. Puteți găsi accesând „Dispozitive” în Pagina principală. Schimbați portul COM în funcție de portul COM.
- Accesați „main.cpp” și schimbați programul în programul Blink . Acum, pur și simplu încărcați programul și va afișa mesajul de succes și timpul necesar încărcării. Acum LED-ul va începe să clipească conectat la pinul PC13 al plăcii STM32.
Aceasta termină tutorialul complet despre programarea Arduino UNO, precum și a plăcii STM32 folosind PlatformIO. Dacă întâmpinați dificultăți în timp ce urmați pașii, vă rugăm să scrieți pe forumul nostru sau să comentați mai jos.