Arduino第十二課(離線執行)
宜蘭縣竹林國小 陳金助老師
程式寫完之後,還可以轉換成Arduino程式語言,直接上傳到Arduino控制板,離線執行程式。
如果想要將程式上傳到Arduino控制板,讓程式不需和電腦連線也能直接在Arduino控制板上執行,則需要再安裝Arduino IDE,請直接上官網(https://www.arduino.cc/en/Main/Software )下載安裝。
注意:
如果要上傳到Arduino控制板,離線執行程式,所有定義的變數、指令都只能用英文,不可以用中文。
跟鍵盤、螢幕有關的指令都不能用。
—————————-
將第一個指令[當綠旗被點一下]改成[Arduino主程式]
在[Arduino主程式]積木上,按滑鼠右鍵,然後在點[upload to arduino]
可以看到畫面變成三個區塊,最右邊是程式區,可以看到轉換後的程式碼。
按程式區上的[上傳到Arduino]就可以將程式上傳到Arduino控制板上。
接著程式先進行編譯,然後上傳。
如果沒有問題的話,會顯示上傳完成..100%,按[結束]
完成後,就可以將USB線拔除。
直接在DCin電源輸入處插上外接電源(建議7V~12V),就可以執行程式。
常見問題:
跟鍵盤、螢幕有關的指令都不能用,請移除。
按程式區上的[上傳到Arduino]後,程式進行編譯,接著就沒有反應,沒有顯示上傳完成…..
可能是程式無法進行轉換,可以直接在中間的區塊進行修改,將可能的問題簡化,再上傳一次。
簡化後可以完成,表示mblock的轉換程式無法完成太複雜的指令轉換,您可以直接在Arduino IDE 上修改原始程式後再上傳。
註:林老師的書中有提到[資料型態]也會影響轉換,這個有點複雜,初級班就跳過了。
——————————
注意:
[mblock]和[ Arduino IDE]兩個程式不可以同時使用,會有一邊抓不到Arduino控制板。
這裡使用的版本是:v2.2.1.08.14.001
據說:新的mblcok v3.0 在win7系統上,使用離線上傳到arduino 時會發生無法上傳的情況。
解決方案如下:(感謝廖翊強老師提供)
將 C:Users當前用戶名AppDataRoaming將這個文件刪除com.makeblock.Scratch,然後重啟軟件
這個問題是目前,mblock 會發生的錯誤,不止是在win7 的版本上,如果有上傳不了的,都直接刪掉這個資料夾就可以,如果你的電腦上看不到[AppData]這個資料夾,請打開檔案總管將隱藏的項目打開就可以看到這個資料夾路徑 。
—————————————–
相關連結:
Arduino初級班課程目錄
http://blog.ilc.edu.tw/blog/blog/868/post/93477/605771
Arduino課程準備
http://blog.ilc.edu.tw/blog/blog/868/post/93477/599681
Arduino第一課(概論、連接)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/599732
Arduino第二課(LED)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/599733
Arduino第三課(用鍵盤控制LED)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/600369
Arduino第四課(LED紅綠燈)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/600422
Arduino第五課(pwm)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/600854
Arduino第六課(RGB三色LED)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/600855
Arduino第七課(蜂鳴器)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/602388
Arduino第八課(按鍵)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/602288
Arduino第九課(可變電阻)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/602290
Arduino第十課(光敏電阻)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/602291
Arduino第十一課(伺服馬達)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/605139
Arduino第十二課(離線執行)
http://blog.ilc.edu.tw/blog/blog/868/post/93477/605798
文章來源:Arduino第十二課(離線執行) 由 roc 發表。