ArduinoIDE是許多人的第一次編碼體驗。雖然它完成了任務,但它缺少了大多數現代代碼編輯器所具有的關鍵特性。
visualstudio代碼(VS-Code)很快成為最流行的代碼編輯器之一,但不支持標準的Arduino開發。
進入PlatformIO,一個用於編程Arduino板(以及更多)的開源工具!學習如何獲得PlatformIO並使用它在VS代碼中創建一個簡單的Arduino草圖。
您需要:
今天的指南是針對windows10的,但這應該也適用於Linux和Mac。
注意:Windows 10應用程序版本的Arduino IDE不適用於本教程。
VS代碼有許多擴展來幫助程序員,PlatformIO也不例外。從左面板打開VS代碼擴展市場,搜索PlatformIO IDE。單擊“安裝”,準備等待一段時間。
注意:在此過程中不要關閉VS代碼,因為這可能會導致安裝錯誤。
安裝完成後,右下角將出現一個提示,提示重新加載VS代碼。單擊它,程序將重新啟動,顯示PlatformIO擴展主頁。
PlatformIO主頁提供了幾個選項,包括打開現有的Arduino項目和指向項目想法的鏈接。今天您將重新開始,所以請單擊新建項目。
系統將提示您輸入項目名稱和要使用的板。本教程使用Arduino Nano;PlatformIO支持超過650個板,因此您可能會在列表中找到您的板。
如果您使用的是Arduino兼容板,框架選項卡應自動填充為Arduino。保留“位置”複選框以使用默認安裝位置。如果您使用的是以前**的Arduino項目,則只需取消選中此選項。
單擊Finish,準備等待一小段時間。PlatformIO將下載並安裝項目所需的任何依賴項,並在完成後重新啟動IDE。
VS代碼重新啟動後,您將注意到在資源管理器面板中打開了一個新的項目文件夾。在這個階段,您不必知道這個目錄中的每個文件都做了什麼,您將只在Arduino草圖中使用SRC目錄。
您還會注意到VS代碼的底部欄上有幾個新圖標。這些按鈕相當於ArduinoIDE中的按鈕—編譯的記號、上傳的箭頭和串行監視器的插頭。
現在一切都準備好了,讓我們開始編碼吧!
PlatformIO為每個新項目創建一個空白草圖。
通過導航到SRC在Explorer選項卡中打開它/主.cpp打開草圖。您會注意到,該文件與普通的Arduino草圖具有不同的擴展名。CPP代表C + PLUS(C++),是ARDUINO語言和IDE的編程語言。
注意:本教程使用工作草圖,因為它是那些具有ArduinoIDE背景的人所熟悉的。然而,C++草圖通常被稱為程序。
你會在這裡看到一些熟悉的東西---這個草圖有設置和循環功能,就像一個普通的Arduino草圖。主要的區別在程序的頂部。每個PlatformIO項目中都必須有include<;Arduino.h>;頭文件才能正常工作。
現在,讓我們來建立硬件的Hello世界——一個閃爍的LED草圖。
你將創建這個閃爍的草圖,我們將遍歷下面的每一行。
從定義板載LED引腳開始。如果您使用的板不使用插腳13作為板載LED,請相應地進行更改:
#define onboard 13使用設置功能設置pin模式。
pinMode(onboard,OUTPUT);注意VS代碼將如何向您建議代碼,並在按Enter鍵時完成它!
最後,通過延遲設置引腳的高電平和低電平,創建環路中閃爍LED邏輯功能。
digitalWrite(onboard, LOW); delay(1000); digitalWrite(onboard, HIGH); delay(1000);如果您有任何錯誤,VS代碼會在編碼時告訴您,而不是等到編譯或上載代碼時才告訴您。實時錯誤檢查和完成使編碼更少令人沮喪,更快!
下一步,你將學習如何上傳你的草圖到你的董事會。
如果還沒有,請將電路板**USB端口。保存草圖,然後單擊底部欄上的勾號圖標進行編譯,或者單擊箭頭按鈕一次性編譯並上載草圖。經過短暫的等待後,您的LED應該會閃爍!
您可能已經注意到通常的Arduino工作流缺少一個步驟。通常,您需要指定Arduino連接到哪個COM端口。如果在將草圖上傳到電路板時滾動輸出,您會注意到PlatformIO會自動為您檢測電路板。
最後,為每個函數添加一行代碼以測試串行監視器。在安裝程序中添加:
Serial.begin(9600);並在循環函數中添加一條消息,以便在循環完成時打印到串行監視器:
Serial.println("loop completed");上傳草圖,點擊底部欄上的插頭圖標打開串行監視器並查看您的消息。
使用VS編碼和PlatformIO為Arduino編碼帶來一股新鮮空氣。由於visualstudio的liveshare特性,遠程協作也變得更加容易。
本教程只介紹了基礎知識,但是在ArduinoIDE中可以通過PlatformIO做的所有事情都是可能的,所以選擇一個很棒的項目並進行編碼吧!
關鍵區別——編碼與非編碼dna 一個有機體的基因組被定義為包括其所有基因的完整的DNA集合。基因組由存在於細胞核中的整套染色體組成。DNA由具有不同結構和功能特性的特定核苷酸序列組成。一些DNA序列包含合成蛋白質的...
...有生物的遺傳物質,以基因的形式攜帶遺傳資訊。它們被編碼成**蛋白質所必需的所有指令。這些基因被轉錄成mRNA序列,然後被翻譯成氨基酸序列,形成蛋白質。基因中有一個精確的核苷酸序列。它負責蛋白質氨基酸合成的正確...
郵政編碼和郵政編碼的主要區別在於,郵政編碼是一種為地理位置分配不同程式碼的系統,以便於郵件的分類,而郵政編碼在美國和菲律賓是一種郵政編碼系統。 雖然簡訊和電子郵件的出現對實體郵件的業務產生了不利影響...
...頂級平臺,但Vimeo確實為影片**者提供了一些優勢,包括更好的編碼和影片質量。要將專案直接上載到Vimeo,請執行以下簡單步驟: ...
...。隨著這門新語言的興起,DIY電子領域也蓬勃發展。來自Arduino和Raspberry Pi等公司的開發板和單板計算機改變了人們生產家用電子產品的方式。如果你能用Python程式設計一個Arduino,那不是很棒嗎? ...
Arduino板和類似的微控制器使創造力比以往任何時候都更容易獲得。無論你是控制LED燈帶,自動化你的家,甚至保護你的財產,這些小奇蹟是大多數DIY電子產品的核心。 ...
Arduino是你能學到的最好的極客愛好之一,因為它涉及到一點點東西:電路、編碼、自己動手、解決問題、創造力等等。但即使你沒有任何這方面的經驗,你仍然應該學習Arduino——即使只是基礎知識。 ...
Arduino板,以及隨之而來的許多價格合理的微控制器,永遠改變了人們的電子愛好。曾經是超級極客的領域,擁有廣泛的電子和計算知識,現在所有人都可以使用。 ...
Arduino這個名字已經成為DIY技術的代名詞。很多人都是從一個機器人開始他們的電子和機器人之旅的。在MakeUseOf,我們已經廣泛地介紹了它們的用法,從初學者指南到更復雜的專案,比如鐳射炮塔。 ...
... Arduino是電子、程式設計和休閒的完美結合。它是一個開源的微控制器(即一個微型的單電路計算機),具有各種元件和可程式設計邏輯。把它想象成**使用的樂高,使用實...