BASIC,培基語言,Beginner's All-purpose Symbolic Instruction Code,一個古老程式語言(讓我想起Apple II,PC AT)。
首先到GitHub的EV3Basic計畫專頁下載相關檔案,包含
ev3extension.zip :程式庫
ev3explorer.zip :檔案總管
examples_and_doc.zip :範例及說明文件
將三個zip檔案集中在一個子目錄,解壓縮後會產生一些子目錄,其中一個子目錄的名稱是lib,將整個lib子目錄存放在Small Basic的執行目錄下。這樣Small Basic才能在直譯程式時找到相關的物件命令。
接著執行Microsoft Small Basic,請打開Examples子目錄的範例程式,
記得將USB線連接EV3主機與電腦,按下運行的藍色三角形箭頭(或是按F5)
看到EV3顯示Hello World了嗎?!
根據邱老師簡單測試,Basic程式除了直接控制EV3主機之外,也能將EV3感應器數值回傳到電腦端,顯現在文字視窗或是圖形視窗。就是一般所謂的連線控制。
那麼離線的單機控制呢?沒有問題。
執行EV3Explorer,左半邊視窗顯示EV3主機內的檔案,右半邊視窗顯示電腦端的檔案。
預設是在prjs目錄下,建議先使用"New Folder"建立新檔案夾,
邱老師在這裡建立一個HappyTest的檔案夾,然後在右半邊視窗選擇寫好的Small Basic程式,副檔名是sb。(跟Scratch一樣^^)
點擊『Compile and Run』,或是『Compile』,EV3Explorer自動將.程式檔案編譯成rbf檔,再上傳到EV3主機。
你可以在左半邊視窗看到rbf檔案,移除USB線,直接操作你的EV3主機,就能執行這些rbf檔案。
如果沒有看到檔案,可以點擊『Refresh』更新顯示檔案。
測試『SensorInfo』程式,EV3主機能夠正確地自動辨識感應器種類,不過超音波感應器的CM數值最大為100,應該需要修正。我再向作者反應。
目前最新版本是0.5版(2015/2/25),根據作者的說明,可以使用下列物件:
EV3
LCD
Motor
Buttons
Sensor
Speaker
Assert
詳細的物件屬性,物件方法(操作函數)還需要有人整理說明,不過大家能先從範例程式中略知一二。
另外一個說明文件解釋一些程式的限制,例如變數型態,陣列,文字的使用差異。
(2015.2.25 新增Daisy Chain,I2C功能)
我非常佩服這位作者的功力,除了提供相關程式庫,供直譯器直接應用。還熟知內部編譯運作方式,製作能夠編譯成rbf檔案的檔案總管。如此一來就能獨立單機執行程式。
雖然Basic給人簡單功能的感覺,直譯的運行速度也不夠快,但最重要的是不需要更改任何韌體,直接與EV3的VM結合,非常方便使用。
如果你也喜歡Basic語言,那麼一定要試試看!
歡迎分享你的經驗,一起討論。
延伸閱讀:德國樂高論壇的EV3Basic討論串。
沒有留言:
張貼留言
探奇歡迎大家留言討論!謝謝分享你的意見。