我在 Arduino 官網上找不到 Arduino IDE 調校 (Tweak) 的資料,只好自己動手整理。
首先,因為底下幾個招式會動到 Arduino 的 preference.txt,所以你得先知道 preference.txt 的位置。preferences.txt 可以在這個資料夾中找到:
- Mac: /Users/<USERNAME>/Library/Arduino/preferences.txt
- Windows: C:\Documents and Settings\<USERNAME>\Application Data\Arduino\preferences.txt
- Linux: ~/.arduino/preferences.txt
另外,如果你要更動 preference.txt,記得要先關閉 Arduino IDE,等改完後再重開 IDE,這樣設定值才會生效。
底下就是降服 Arduino IDE 的幾個招式:
1. 顯示 HEX 檔所在的位置
Arduino IDE 預設不會顯示 hex 檔所在的位置,如果你想知道 hex 檔在哪,在編譯的時候只要按著 SHIFT 鍵不放,再點 Verify 編譯程式,畫面下方的狀態視窗就會顯示 HEX 檔所在的位置:
2. 顯示 HEX 檔所在位置第二式
為了顯示 HEX 所在位置,每次編譯要按 Shift 鍵總是有點麻煩,這招是一勞永逸的方法,直接在 preference.txt 加上底下這行就搞定了:build.verbose=true
3. 設定 HEX 檔的資料夾
這招可以自訂 HEX 檔的資料夾,在 preference.txt 加上底下這行:
build.path=C:\ArduinoHex
這會叫 Arduino IDE 把產生的 HEX 檔放到 C:\ArduinoHex 資料夾中。
記得要自己先建個 C:\ArduinoHex 資料夾,不然 Arduino IDE 會跟你抱怨找不到資料夾。
4. 顯示 upload 的資訊
在 preference.txt 加上底下這行:upload.verbose=true
之後,當你上傳程式時,狀態視窗就會顯示 upload 的資訊,如下圖:
上面這張圖是上傳 Blink 範例的畫面,從圖中的訊息可知,Arduino 用的是 avrdude 這支上傳程式,它下的指令是:
C:\arduino-0021\hardware/tools/avr/bin/avrdude -CC:\arduino-0021\hardware/tools/avr/etc/avrdude.conf -v -v -v -v -patmega328p -cstk500v1 -P\\.\COM4 b57600 -D -Uflash:w:C:\ArduinoHex\Blink.cpp.hex:i
從這裏你也可以知道 avrdude 所在的位置,它的路徑是 "C:\arduino-00xx\hardware\tools\avr\bin\avrdude.exe"
5. 指定燒錄工具 (programmer)
preference.txt 預設有這麼一行設定:
upload.using=bootloader
這個設定是 Arduino 的預設值,也就是說韌體燒錄的工作是透過 Arduino 板子上的 bootloader 進行的。
其實你也可以指定燒錄工具 (programmer),例如使用 arduino isp:
upload.using=arduinoisp
這種做法是直接把 Arduino Sketch 燒錄到板子上,沒有用到 bootloader,這讓你得以使用 ATmega 晶片全部的程式空間 (program space)。這部份請參考這篇的說明。
除了 arduinoisp 外,你也可以使用其它 programmer。Arduino 所支援的 programmers 全登記在 "C:\arduino-00xx\hardware\arduino\programmers.txt" 這個檔案裏,它的內容如下:
由此可知,Arduino 預設支援 avrisp, avrispmkii, usbtinyisp, parallel 和 arduinoisp 這 5 種燒錄工具。
0 意見:
張貼留言