13.1.2. 指令碼、範例與文件資料夾

13.1.2.1. 新檔案

建立新檔案後,IDE 會開啟一個 untitled_N.py 緩衝區,其中預先載入了一個最簡單的擷取迴圈:重置感測器、設定像素格式與影格大小,然後不斷快照並列印影格率。這個起始指令碼會根據所連線的開發板進行調整,因此建立後即可執行。此緩衝區僅存在於記憶體中:你可以反覆編輯與執行而完全不必儲存,這使得新檔案成為測試構想最省事的方式。將它儲存到磁碟後,它便成為一個普通的指令碼。

13.1.2.2. 範例選單

File → Examples 收錄了一個分類整理的範例指令碼庫,涵蓋了相機幾乎所有的功能,每個主題各佔一個資料夾,從基本快照到色彩追蹤、機器學習以及開發板周邊裝置皆有。開啟範例時會像新檔案一樣將其載入記憶體緩衝區,因此你可以自由修改與執行,而不會動到已安裝的副本。

預設情況下,選單會依所連線的開發板及其感測器進行篩選:需要你的相機所不具備之硬體的範例會被隱藏起來,而且選單會要求先建立連線才會顯示任何內容。Tools → Filter examples by board and sensor type 可在你想瀏覽完整範例集時關閉此篩選。

範例在開啟時也會經過調整。這些指令碼是針對典型的彩色感測器撰寫的,因此當所連線的相機有所不同時(例如熱感測器或事件感測器,或是具有不同原生解析度的開發板),IDE 會在載入時將像素格式與影格大小的程式行調整為你的硬體所支援的值,使範例開啟後即可執行。

逐一研究範例選單是了解相機能做什麼的最快方式;多數應用程式一開始都是由某個範例逐步發展而來的。

13.1.2.3. 文件資料夾

對於你自己的指令碼,IDE 會監看你文件資料夾中的 OpenMV 目錄(Documents/OpenMV)。你儲存在那裡的所有內容都會出現在 File → Documents Folder 之下,包含子目錄在內,因此你的指令碼收藏只在一個選單之遙。該選單會即時讀取目錄,你在 IDE 外新增的檔案會在下次開啟選單時顯示出來。

IDE 以單一執行個體的方式運作:從檔案管理員開啟 .py 檔案,或將檔案拖放到 IDE 視窗上,它都會在執行中的視窗中開啟,而不會啟動第二個副本。

13.1.2.4. 交叉編譯指令碼

Tools → MicroPython Tools → Copy/Convert Python File 會將 .py 檔案複製到目的地(連接相機時即為相機的磁碟機),並讓你選擇過程中的處理方式:原封不動地複製、移除空白字元和/或註解以縮小檔案,或使用與目標開發板相符的 mpy-cross 編譯器將其編譯為 .mpy 位元組碼檔案。.mpy 檔案的匯入方式與其來源 .py 完全相同,載入更快,且不會隨附其原始碼,是將函式庫模組散佈到相機檔案系統時應採用的形式。連接相機時,IDE 會自動選擇目標開發板;否則對話框會詢問要為哪個開發板編譯。開發板的選擇之所以重要,是因為它決定了編譯器所針對的處理器架構:.mpy 檔案是與其將執行的相機相符的,而為不同開發板系列編譯的檔案不保證能夠載入。

請參閱

關於作為獨立命令列工具的 mpy-cross 與 mpremote,請參閱 MicroPython 工具;關於 .mpy 檔案格式本身,請參閱 MicroPython .mpy 檔案