Linux中國

通過 VSCode RTOS 插件使用 Python 為物聯網系統編寫程序

物聯網(IoT)無處不在,它意味著幾乎所有的產品,從冰箱到口袋手錶,都可以連網。為了實現這個目標,每個產品都需要擁有一個嵌入式計算機來運行網路棧,有些產品幾乎是小的不可思議。這就是嵌入式軟體出現的場景:現代科技打造的非常小的計算機,硬編碼到硬體晶元,不需要任何板外處理器、內存或者存儲盤。

就傳統視角而言,這種場景意味著沒有操作系統可用,但是因為種種 原因,開發者發現,類似於 RTOS 之類的實時嵌入式操作系統能讓嵌入式系統的編程變得非常簡單。

雖然 RT-Thread 嵌入式操作系統致力於鼓勵程序員新手進入物聯網領域,但並非所有的人都具備使用 C 語言硬編碼微晶元的能力。幸運的是,MicroPython 通過讓開發者創建運行於嵌入式系統的 Python 代碼的方式,逐漸填補了這個鴻溝。為了讓整個過程更簡單,RT-Thread 有一個可以用於 VSCodeVSCodium 的插件,為開發者提供了物聯網方面的開發環境。其部分特性包括:

  • 方便的連接方式,可以很容易的通過串口、網路或者 USB 連接到開發板(如果你使用過 Arduino,肯定會很熟悉這個流程)。
  • 支持上傳文件或目錄到開發板。
  • 支持基於 MicroPython 的代碼,而且具有智能的代碼補完、語法檢查功能。
  • 支持 MicroPython REPL 互動式環境。
  • 豐富的示例代碼和演示程序。
  • 完整的工程同步功能。
  • 快速運行內存中的程序代碼。
  • 運行函數的代碼片段。
  • 支持主流的 MicroPython 開發板。
  • 支持 Linux 和 Windows 操作系統,並經過充分測試。

準備

在開始之前,如果你使用的是 Windows 操作系統,那麼必須保證 VSCode 的默認終端是 PowerShell。運行 VSCodium,從 「Terminal」 菜單項啟動一個終端. 在顯示在 VSCodium 窗口底部的終端界面,從下拉菜單頂端選擇 「PowerShell」。 不論你是在 Windows 還是 Linux 系統下工作,必須保證安裝了 Python 3(在 Linux 上,它可能已經安裝了,否則可以通過軟體庫安裝它)。

還要安裝的是微軟提供的通用 VSCode Python 插件。安裝方法是點擊 「File」 菜單,找到 「Preferences」 子菜單,從中打開 「Extensions」 面板。在擴展中,搜索 「Python」,找到來自微軟的 Python 插件。

![VSCodium Python plugin](/data/attachment/album/202007/29/001200p669pylwwl2yl991.jpg "VSCodium Python plugin")

當然,在上述操作之前,你要先正確安裝 VSCodiumVSCode

安裝插件

安裝 MicroPython 開發插件的方法與安裝 Python 插件一樣,點擊 「File」 菜單,找到 「Preferences」 子菜單,選擇 「Extensions」。

在擴展中,搜索 「MicroPython」,安裝 RT-Thread 插件。

![MicroPython plugin for RT-Thread](/data/attachment/album/202007/29/001213ge07s4er31m331zd.jpg "MicroPython plugin for RT-Thread")

使用插件

你的開發板必須能訪問串口,這需要組策略的允許。你可能需要將自己的賬戶加入該組,通常在默認情況下你的賬戶可能並不在該組。首先,確認你的賬戶不在 「dialout」 組:

$ groups
tux users

本例中,用戶「tux」只是「tux」組和「users」組的成員,所以需要將用戶「tux」添加到「dialout」組:

$ sudo usermod --append --groups dialout tux

退出登錄或重啟以載入你新的組許可權。

創建 MicroPython 工程

MicroPython 開發的第一步是創建 MicroPython 工程用來編寫和運行代碼。使用 MicroPython 插件創建工程的方法是,點擊左下方的 「Create MicroPython project」 按鈕。

![Create MicroPython project](/data/attachment/album/202007/29/001216igu4wneuf99qeauq.jpg "Create MicroPython project")

之後會有一些提示,讓你選擇創建空白工程還是包含常式的工程。

連接到開發板

點擊 VSCodium 左下方的 「Connection」 按鈕,進行 VSCodium 與開發板的連接,在彈出的列表中,選擇要連接的物理設備。

查看常式

MicroPython 插件提供了許多常式和例庫,供學習和調用。獲取常式的過程是,激活 MicroPython 之後,VSCodium 左側按鈕條會出現「新建」快捷圖標,點擊該圖標就可以了。點擊「文檔」快捷圖標,會顯示常式文件列表;點擊「文件夾」快捷圖標,會顯示例庫列表。

![MicroPython examples](/data/attachment/album/202007/29/001231iputkobu5fu2mfke.jpg "MicroPython examples")

直接在開發板上運行 MicroPython 文件

在 VSCodium 中可以通過在開發板上運行單個程序文件,很方便快捷的進行程序調試。快捷鍵 Alt+Q 會觸發一個特定的插件,該插件會將當前的 Python 文件上傳到開發板內存中。你還可以在當前 Python 文檔界面點擊右鍵,然後選擇 「Run the MicroPython file directly on the device」 實現同樣的功能。

![Running code on your device](/data/attachment/album/202007/29/001238c2ghhddrhrthyukh.jpg "Running code on your device")

如果你需要以不上傳代碼的方式檢查一組代碼,可以使用「代碼片段」功能。要運行 MicroPython REPL 環境中的代碼片段,在編輯器中選中要運行的片段,右鍵菜單中點擊 「Execute the selected MicroPython code on the device」 (也可以使用 Alt+Q 快捷鍵)。

載入文件和目錄到開發板

如果需要載入文件或目錄到開發板,有現成的方法可用:選中工程中要載入到開發板的文件或目錄,在選中的對象上右鍵,點擊右鍵菜單中的 「Download the file/folder to the device」。

注意,如果開發板中已有與要載入的文件或目錄同名者,載入操作將導致開發板原有的內容被覆蓋。

在 REPL 環境中運行 os.listdir() 命令,可以檢查文件和目錄是否成功載入。當然,也可以通過相應的命令刪除 REPL 中的文件或目錄。

刪除文件的命令如下:

os.remove('file_to_delete')

刪除目錄的命令如下:

os.rmdir('folder_to_delete')

工程的同步

點擊左下角「同步」按鈕可以啟動工程同步,該操作將把本地工程中所有的文件和目錄同步到開發板的文件系統。建議在完成程序調試之後進行該操作,調試過程中不需要頻繁進行同步操作。

工程的同步操作完成後,開發板上的文件列表可以在 「Device Files List」 列看到。

放手嘗試

RT-Thread 以開源的方式發布 MicroPython 插件,意在為新老開發者提供幫助,它的很多特性,如代碼自動補全等,與開源插件之間互有影響和促進。你如果想為嵌入式系統或物聯網系統編寫軟體,這就是最簡單的方式,沒有之一。

via: https://opensource.com/article/20/7/python-rt-thread

作者:Seth Kenlon 選題:lujun9972 譯者:silentdawn-zz 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國