- Ano ang PlatformIO?
- Pagse-set up ng PlatformIO para sa Arduino Uno
- Programming Arduino UNO gamit ang PlatformIO IDE
- Programming STM32 Board gamit ang PlatformIO IDE
Ang pag-unlad sa Arduino at Arduino IDE ay palaging madali at masaya sa kanilang simpleng interface ng gumagamit. Ang Arduino IDE ay bukas na mapagkukunan at libre na gamitin ang Kapaligiran sa Pag-unlad na may lahat ng mga tampok tulad ng pagsulat, pag-compile at pag-upload ng code sa Arduino Boards. Ito ay batay sa Java at tumatakbo sa pangunahing OS tulad ng Windows, OS X at Linux. Ngunit sa lahat ng pagiging simple at malaking pamayanan, wala itong ilang mga tampok na kakailanganin ng isang bihasang developer para sa mabilis na pag-unlad na maaaring mabawasan ang panahon ng pag-unlad. Mayroong maraming mga kapaligiran sa pag-unlad na magagamit para sa Arduino, ngunit lahat ay may ilang mga pakinabang at kawalan. Ngayon, magsisimula kami sa kapaligiran ng pag-unlad ng PlatformIO na madaling gamitin at nagdagdag ng mga tampok na ihambing sa Arduino na kapaligiran.
Ano ang PlatformIO?
Ang PlatformIO ay isang nakabatay sa Python na bukas na mapagkukunan ng ecosystem para sa pag-unlad ng IoT at isang cross platform IDE na may isang pinag-isang debugger na tumatakbo sa Windows, Mac at Linux. Ang platformIO ay kasama ng manager ng silid-aklatan para sa mga platform tulad ng Arduino o suporta sa MBED kasama ang pagsubok ng yunit at mga pag-update sa firmware. Sinusuportahan ng PlatformIO ang isang bilang ng Mga Plataporma, Framework, Lupon tulad ng Arduino, ESP32, ESP8266 at mayroong bilang ng mga halimbawa at aklatan. Malaya ito sa platform kung saan ito tumatakbo at nangangailangan lamang ito ng Naka-install na Python sa computer.
Mga kalamangan ng PlatformIO
Nagtatampok ang PlatformIO ng mabilis na pag-unlad kasama ang mga tampok nito tulad ng C / C ++ Code Pagkumpleto at Smart Code Linter para sa mabilis na pag-unlad na propesyonal na wala doon sa Arduino IDE. Bilang karagdagan sa ito, nag-aalok ang PlatformIO ng suporta sa tema na may madilim at magaan na mga kulay para sa pag-unlad sa anumang oras. Mayroon din itong Mga Pag-navigate sa Smart Code at Pag-format ng Code. Kasama sa mga pangunahing tampok ang Multi-platform Build System, Library Manager, Serial Port Monitor atbp.
Ang Pinag-isang Debugger na may isang suporta para sa maraming mga arkitektura at mga platform ng pag-unlad ay nagbibigay-daan upang i-debug ang maraming mga naka-embed na board na may Zero-Configuration. Ang PlatformIO Unified Debugger ay may mga tampok tulad ng Conditional Breakpoint, Expression at Watchpoint, Memory Viewer, Isang mainit na pag-restart ng isang aktibong session ng pag-debug. Ang PlatformIO Core ay nakasulat sa Python 2.7 at gumagana sa Windows, macOS, Linux, FreeBSD at maging ang mga ARM-based credit card na laki ng mga computer tulad ng Raspberry Pi, BeagleBone, CubieBoard, Samsung ARTIK, atbp. Bukod dito ang PlatformIO ay mayroong File Explorer na makakatulong pag-aayos ng mga file kapag lumaki ang proyekto sa isang tiyak na antas at kinakailangan ang pag-aayos.
Pagse-set up ng PlatformIO para sa Arduino Uno
Ang paggamit ng PlatformIO ay napaka-simple at nangangailangan ng ilang mga hakbang upang makapagsimula. Nangangailangan ang PlatformIO ng naka-install na Python sa computer dahil tulad ng ipinaliwanag sa itaas na ang pangunahing PlatformIO ay nakasulat sa Python 2.7. Tandaan na hindi sinusuportahan ng PlatformIO ang Python 3 kaya inirerekumenda na i-install ang bersyon ng Python 2 at pagkatapos ay magpatuloy para sa pag-set up ng PlatformIO IDE. Ang PlatformIO ay isang IDE plus nagbibigay ito ng mga opisyal na pakete (mga plugin, extension) para sa pinakatanyag na mga IDE at text editor.
Ngayon ay mai-install namin ang PlatformIO sa naturang text editor tulad ng Atom at Visual Studio Code. Sa opisyal na dokumentasyon ng Platform IDE nakasaad dito na ang PlatformIO IDE para sa VS Code (Visual Studio Code) ay nag-aalok ng mas mahusay na pagganap ng system, at nahanap ng mga gumagamit na mas madaling magsimula. Kaya i -set-up namin ang PlatformIO sa Visual Studio Code. Ang VS Code ay isang kilalang editor ng teksto na may bilang ng mga extension na nagpapahintulot sa amin na bumuo sa iba't ibang mga wika sa pagprograma.
Simulan natin ang pag- set up ng PlatformIO upang simulang pagbuo ng code sa Arduino UNO. May mga kasangkot na mga hakbang na ipinaliwanag sa ibaba:
- Una i-install ang Visual Studio Code mula sa opisyal na website. Ang mga hakbang sa pag-install ng Visual Studio Code ay hindi maipaliwanag dito ngunit mahahanap mo ito sa website ng VS Code. Mayroong mga pangkalahatang hakbang na kasangkot tulad ng pag-install ng anumang iba pang software sa Windows OS.
- Ang Visual Studio Code ay magmumukhang sumusunod kung matagumpay itong na-install.
- Kasama sa Susunod na Hakbang ang pag -install ng PlatformIO gamit ang Mga Extension ng VS Code. Para sa mga ito kailangan mong pumunta sa Mga Extension Icon sa kaliwang sulok sa itaas ng VS Code. Mayroong square Box Icon na kung saan ay ang ika- 5 na icon sa kanang sulok sa itaas. Mag-click lamang sa iyan at isang kahon ng paghahanap ay lilitaw sa tabi lamang nito kung saan makakahanap ka ng maraming extension para sa iba't ibang mga wika sa pagprograma tulad ng C / C ++, C #, Python, PHP, Go, JavaScript, TypeScript at Node.js atbp.
- Paghahanap Para sa "PlatformIO" sa kahon ng paghahanap ng extension at makikita mo ang PlatformIO Icon na may Pangalan at Paglalarawan. Mag-click lamang dito at I-install ito. Maaaring tumagal ng ilang oras sa pag-install ng mga toolchain at iba pang mga dependency. Kasama sa mga dependency ang kapaligiran ng C / C ++ tulad ng pag-unlad ng Arduino ay halos ginagawa sa C / C ++.
- Kapag nakumpleto ang pag-install, makikita mo ang sumusunod na interface. Kasama sa Interface ang lahat ng kinakailangang pag-navigate tulad ng paglikha ng Bagong Project, Pag-import ng Arduino Project, Open Project, Mga Halimbawa ng Project atbp Inirerekumenda na i-restart ang VS Code Editor pagkatapos ng pag-install ng PlatformIO.
Tinatapos nito ang mga hakbang sa pag-install ng PlatformIO. Ngayon ang PlatformIO ay naka-install at handa nang gamitin. Tulad ng Arduino IDE, magsisimula kami sa Blink Program at susubukan na i-upload ang Blink Program sa Arduino UNO.
Programming Arduino UNO gamit ang PlatformIO IDE
Ang interface ng PlatformIO ay ipapaliwanag nang sabay-sabay habang pinaprograma ang Arduino UNO. Narito namin ang pag-program ng Arduino para sa pagpikit ng LED gamit ang PlatformIO. Ang pareho ay maaaring gawin gamit ang Arduino IDE. Sundin ang mga hakbang sa ibaba sa ibaba upang lumikha ng isang bagong proyekto para sa kumikislap na LED.
- Piliin ang tab na "Bagong Project" mula sa mabilis na menu ng pag-access.
- Pangalanan ang proyekto (Narito ang 'Blink'). Maghanap at Piliin ang pisara na kung saan ay Arduino UNO. Dahil nagtatrabaho kami sa balangkas ng Arduino, kaya ang napiling balangkas ay ang Arduino. Matapos mapunan ang lahat ng mga detalye i-click lamang sa Tapos na.
- Magsisimula ang Project sa paglikha sa pamamagitan ng pagkolekta ng mga mapagkukunan at iba pang mga dependency.
- Kapag matagumpay na nilikha ang proyekto, makakakuha ka ng agarang mensahe habang ang "Project ay matagumpay na napasimulan" kasama ang lahat ng mga napunan na detalye.
- Upang buksan ang nilikha na proyekto, mag-scroll lamang sa Home Menu ng PlatformIO at makikita mo ang lahat ng listahan ng mga proyekto na nilikha mula sa simula. Sa kanang sulok ng nilikha na proyekto mag-click sa 'Buksan' upang buksan ang proyekto at simulang mag-edit.
- Kapag binuksan ang proyekto, sa una ay magmumukhang nakatago ito, ngunit huwag mag-alala, ang PlatformIO ay may tampok na explorer ng file kung saan mahahanap ang lahat ng mga file ng kasalukuyang proyekto. Pumunta lamang sa kaliwang sulok sa itaas at buksan ang 'Walang pamagat (Lugar ng Trabaho)'. Kapag nag-click dito, lilitaw ang lahat ng mga file bilang dropdown menu. Upang hanapin ang text editor upang mai-edit ang 'Code', piliin ang 'src' at ang bukas na 'main.cpp'. Ang mode ng text editor ay lilitaw sa Home Screen na may pagbubukas ng isang bagong Tab. Maaari mong isulat ang lahat ng mga code ng Kasalukuyang Nagpapatuloy na Proyekto.
- Isulat lamang ang Blink Code para sa Arduino UNO. Tandaan na, ang PlatformIO ay walang default na pag-access sa mga aklatan ng Arduino, kaya tuwing isusulat mo ang code para sa Arduino, palaging isama ang Arduino library na "#include" sa simula ng programa.
- Ang susunod na hakbang ay ang pag - iipon at pag-upload ng code. Upang magawa ito, tingnan natin ang mga pagpapaandar na ibinigay ng PlatformIO. Pinipili din ng PlatformIO ang COM Port bilang default. Ngunit maaari mo ring baguhin ang Port kung hindi ito ang nais na COM port. Ang pagbabago ng COM port ay ipapaliwanag mamaya sa tutorial na ito. Ang mga PlatformIO ay may mga function tulad ng Build, Upload, Upload sa Remote Device, Malinis, Subukan, Patakbuhin ang Gawain, Serial Monitor, Bagong Terminal. Ang lahat ng mga pag-andar ay matatagpuan sa kaliwang sulok sa ibaba ng Editor. Kapag pinasadya mo ang mga icon, ipapakita ang mga pagpapaandar.
- Upang Buuin ang Sketch, mag-click sa 'Build' at i-upload ang sketch click sa 'I-upload' Icon. Kapag tapos na ang pag-upload, makikita mo ang oras na ginugol upang mag-upload kasama ang lahat ng iba pang mga detalye at isang mensahe na nagsasabing "Tagumpay". Matagumpay na na-upload ang code at makikita mo ang Blinking of LED sa Arduino Board.
Upang mapili o baguhin ang anumang COM Port, pumunta lamang sa PlatformIO Home Screen at pagkatapos ay pumunta sa Mga Device, dito makikita mo ang lahat ng mga magagamit na aparato na konektado. Piliin ang naaangkop na port ng COM at sundin ang parehong pamamaraan upang Mag-upload ng sketch.
Programming STM32 Board gamit ang PlatformIO IDE
Ang pagprograma sa STM32 Board ay magkakaroon ng eksaktong katulad na mga hakbang tulad ng Programming Arduino UNO na ipinaliwanag sa itaas. Ang pagkakaiba ay pipiliin ang Lupon para sa STM32 kapag nagbubukas ng isang bagong proyekto para sa STM32. Ang magandang bagay tungkol sa PlatformIO ay, hindi na kailangan ng anumang panlabas na pakete para sa anumang board na mag-download nang magkahiwalay, awtomatiko nitong nai-download ang lahat ng mga package at ginagawang madali para sa amin na pumili ng isang board at pumunta sa editor. Gagamitin namin ang panlabas na JLink / JTAG / STLink / Serial Programmer upang mag-upload ng sketch sa STM32. Maaari ding mai-program ang STM32 sa Arduino IDE. Magpatuloy sa mga sumusunod na hakbang upang mai-program ito sa PlatformIO.
- Pangalanan lamang ang Proyekto (Narito ang 'Blink STM32'). Pagkatapos piliin ang board para sa STM32 ie ' BluePill F103C8 (Generic) '. Pagkatapos piliin ang Framework bilang Arduino. Mag-click sa Tapusin at maghintay para sa ilang oras tulad ng sa una ay magtatagal ng oras upang i-download ang mga pakete at dependencies para sa board STM32.
- Kapag na-set up na, ang susunod na oras ng paglikha ng proyekto ay hindi gaanong ihahambing sa una. Pumunta lamang sa Untitled (Workspace) -> src -> main.cpp sa kaliwang file explorer.
- Ngayon ang mga paparating na hakbang ay magiging mahalaga dahil kailangan itong magpasya kung aling programmer ang dapat nating gamitin para sa pagprograma ng STM32 Board. Maraming mga programmer na magagamit tulad ng JTAG, STLink, JLink, Serial atbp Lahat ay gagana ngunit kailangan mong i-configure ang pahina ng pagsasaayos ng 'platformio.ini' o file.
- Sa Project na ito, gumagamit kami ng Serial Programmer CP210x USB sa UART Bridge. Natapos na namin ang Programming STM32F103C8 Board gamit ang USB Port, o karamihan sa mga hakbang ay kukuha mula doon lamang. Maaari mong bisitahin ang link at makahanap ng higit pa tungkol dito.
- Una, Ikonekta ang Serial Programmer sa STM32 Board na may sumusunod na pagmamapa ng pin at ikonekta ito sa PC.
USB sa Serial Programmer |
Lupon ng STM32 |
5V |
5V |
Gnd |
Gnd |
Rx |
A9 |
Tx |
A10 |
- Pumunta ngayon sa explorer ng proyekto at buksan ang pahina ng 'platformio.ini' at baguhin ang pahayag tulad ng ipinakita sa larawan. Ang upload_protocol ay magsasabi na kung saan programmer ay dapat gamitin (STLink, JLink, Serial atbp). Ang upload_port pinipili ang COM port. Maaari mong makita sa pamamagitan ng pagpunta sa 'Mga Device' sa Home Page. Baguhin ang COM port alinsunod sa iyong COM port.
- Pumunta sa 'main.cpp' at palitan ang programa sa Blink program. Ngayon i-upload lamang ang programa at magpapakita ito ng tagumpay na mensahe at oras na ginugol upang mai-upload. Ngayon ang LED ay magsisimulang kumurap na konektado sa PC13 pin ng STM32 board.
Tinatapos nito ang kumpletong tutorial sa pag- program ng Arduino UNO pati na rin ang STM32 Board na gumagamit ng PlatformIO. Kung mayroon kang mga pagharap sa mukha habang sinusunod ang mga hakbang pagkatapos mangyaring sumulat sa aming forum o puna sa ibaba.