使用微軟Visual Studio Code編寫Arduino程式(一)

Arduino官方的整合開發工具Arduino IDE簡單易用,但是功能有點陽春。例如,它的程式編輯器不支援語法提示(Code Hinting,或稱作自動完成Auto Complete,或者IntelliSense)功能。

下圖是在微軟Visual Studio Code程式編輯器(以下簡稱VS Code)編寫Arduino程式的樣子。在“Serial”之後輸入“.”,編輯器將提示可用的指令,我們可以按方向鍵、Tab和Enter等按鍵,從它提示的指令清單中挑選,所以指令不會拼錯,也能減少敲打程式碼的時間。

語法提示功能

Arduino IDE實際上整合了不同的工具程式,包括程式編輯器、編譯器和上傳(燒錄)工具。VS Code只能取代Arduino IDE的程式編輯器,編譯和上傳程式還是得由Arduino IDE裡的工具程式處理。因此,使用VS Code編寫Arduino程式,電腦必須先安裝好Arduino IDE(註:至少安裝1.6.x版,1.8.7版有bug,請安裝1.8.8或更新版)。

Arduino IDE的工具

在VS Code中安裝Arduino延伸模組

在VS Code的延伸模組窗格中搜尋關鍵字“Arduino”,即可找到微軟開發的擴充程式,請安裝它。安裝Arduino延伸模組時,它會一併安裝C/C++ for Visual Studio Code模組,因為Arduino語言本質上是C/C++,這個延伸模組讓VS Code具備C/C++語法提示、自動格式化、除錯、瀏覽…等功能。

安裝Arduino延伸模組

安裝完畢後,需要告訴VS Code你的Arduino IDE的安裝路徑。從主功能表選擇「檔案→喜好設定→設定」命令,搜尋“arduino”關鍵字,找到Arduino設定選項裡的“Arduino:Path”,確認Arduino IDE的安裝路徑是正確的,否則請自行修改(註:筆者的Arduino IDE安裝在D磁碟的Program Files路徑)。

確認Arduino IDE的安裝路徑

VS Code編輯器的Arduino相關命令

在VS Code中,按F1功能鍵,或者CTRL+SHIFT+P鍵,可開啟命令面板(Command Palette)。「命令面板」可讓我們執行VS Code的全部功能,例如,輸入“file:open”(各個命令名稱中間用冒號隔開),等同用滑鼠選擇「檔案→開啟檔案」命令,只是你的雙手不用離開鍵盤,所以可提高工作效率。

在「命令面板」輸入“arduino”,它將顯示Arduino相關命令,例如:“Arduino:Examples”命令,可開啟Arduino IDE預裝的範例檔案。

命令面板(Command Palette)

範例檔列表將開啟在另一個窗格:

Arduino範例檔

VS Code的Arduino延伸模組,提供下列命令:

  • Arduino: Board Manager:開啟「控制板管理員」
  • Arduino: Change Baud Rate:修改序列埠的傳輸速率
  • Arduino: Change Board Type:選擇控制板
  • Arduino: Close Serial Monitor:關閉序列監控視窗
  • Arduino: Examples:顯示Arduino範例程式列表
  • Arduino: Initialize:初始化VS Code的Arduino程式開發環境
  • Arduino: Library Manager:瀏覽與管理程式庫:開啟序列監控視窗
  • Arduino: Select Serial Port:選擇序列埠
  • Arduino: Send Text to Serial Port:透過序列埠傳遞一行文字
  • Arduino: Upload:編譯並上傳程式到Arduino板
  • Arduino: Upload Using Programmer:透過外接的燒錄器上傳程式檔
  • Arduino: Verify:驗證與編譯程式

上面某些命令也可從VS Code編輯器視窗取用,例如,編輯器視窗右上角提供驗證上傳程式鈕:

驗證和上傳程式鈕

編輯器視窗底下則可選擇控制板類型序列埠

選擇控制板類型和序列埠

Posts created 467

8 thoughts on “使用微軟Visual Studio Code編寫Arduino程式(一)

  1. 赵老师,您好!
    我是您大陆的读者,在《使用微软Visual Studio Code编写Arduino程式(一)》的文章中,填写Arduino Path中需要填写的是arduino IDE文件夹的安装路径,赵老师该篇文章中提供的截图上的路径显示为“D:\Program Files\Arduino”,而实际路径应该为”D:/Program Files/Arduino”才可以(两个路径中的斜杠不一样),否则会出现路径错误的提示。

    1. 哦~那个斜杠是正确的,Windows的路径分隔线是”\”,macOS和Linux则是”/”。

      thanks,
      jeffrey

  2. 你好 , 我想要直接修改TCNT1暫存器的數值,用VS CODE Verify後會卻出現TCNT1未定義的訊息,請問該如何修改呢?

  3. 您好 我是剛使用Arduino與VS連線測試的人,發現Arduino回傳到VB所製作的顯示視窗的信息,是亂碼。
    在Arduino定義為Char 在VS也定義 Char,請問如何處理?

    1. 應該是傳輸速率或格式(如:資料位元、停止位元…)等設置不同導致,我之前用JavaScript (Node.js)和Python連線並沒有亂碼。

      thanks,
      jeffrey

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

Related Posts

Begin typing your search term above and press enter to search. Press ESC to cancel.

Back To Top