AVR開發 Arduino方法(附一) 工具鏈與調試技術

  前文中全部代碼均可以使用Arduino IDE編譯經過,電路圖都是使用Fritzing繪製的。Arduino IDEFritzing均可以運行在多種操做系統上,能夠經過如下方式獲取它們:前端

1. Arduino IDE

  在瀏覽器中訪問https://www.arduino.cc/en/Main/Software瀏覽器

找到「Download the Arduino IDE」,根據本身的操做系統下載相應版本的Arduino IDE便可。若是你使用的是Windows操做系統,建議選擇「Windows Installer」版本,能夠省去安裝驅動程序的麻煩。ide

  Arduino IDE安裝完成後,還須要對它的配置文件進行一些修改,以便進行調試。打開Arduino IDE的配置文件(配置文件的路徑能夠經過文件菜單打開首選項對話框找到),在文件末尾添加:函數

1 build.path=yourpath

yourpath替換成你但願Arduino IDE生成文件的位置,例如「/home/blu/文檔/arduino」工具

2. Fritzingoop

  在瀏覽器中訪問http://fritzing.org/download/ui

根據本身的操做系統下載相應版本的Fritzing便可。spa

3. 適用於Windows操做系統的調試工具

(1) 使用Proteus進行軟件調試操作系統

  打開Proteus軟件,將ATMEGA328P放置到原理圖區域中:插件

  雙擊放置的ATMEGA328P,打開編輯元件對話框:

點擊「Program File」文本框右側的打開按鈕,找到編譯的.elf文件;將「CLKDIV(Divide clock by 8)」設置爲「(1)Unprogrammed」;再將「CKSEL Fuses」設置爲「(1111)Ext. Crystal 8.0MHz」;最後將「Advanced Properties」中的「Clock Frequency」設置爲「16MHZ」

  點擊調試菜單中的開始/從新啓動調試,會打開「AVR Source Code」「AVR Variables」對話框,從中能夠查看程序源代碼以及變量值的狀況:

  從「AVR Source Code」對話框中找到主函數,找到setup()函數和loop()函數的調用語句,雙擊打上斷點,運行到斷點處,就能夠開始調試了:

(2) 使用Visual Studio進行硬件調試

  安裝帶有C++組件2012或更新版本的Visual Studio後,在http://www.visualmicro.com/page/Arduino-Visual-Studio-Downloads.aspx中下載Visual Micro插件,雙擊安裝;

  插件安裝完成後第一次打開Visual Studio,會彈出「Configure Ide Locations」對話框,在對話框中指定Arduino IDE的版本和安裝路徑,點擊「OK」按鈕;

  在Visual Studio新建菜單中新建一個「Arduino Project」,將Arduino鏈接到計算機上;而後在工具欄中選擇正確的開發板型號和端口號,就能夠像調試本地C++應用程序同樣在Arduino上調試程序了。

4. 適用於Linux操做系統的調試工具

  在Linux操做系統下調試Arduino程序須要如下軟件包:simulavrgdb-avrddd,其中ddd是可選的軟件包,它提供調試器的前端界面。請使用包管理器安裝它們和它們依賴的軟件包。

  安裝完成後,在終端中執行命令:simulavr -L,這會打印simulavr支持的微控制器列表:

列表中沒有ATMega328P,但Arduino IDE能夠支持ATMega8。所以在終端中執行命令:simulavr -d atmega8 -g -p 4242。在4242端口啓動一個ATMega8虛擬機:

  在Arduino IDE工具菜單下的開發板子菜單項中選擇「Arduino NG or older」,在處理器子菜單項中選擇「ATMega8」,從新編譯項目。在生成目錄下打開一個新的終端窗口,執行命令:ddd --debugger avr-gdb ./Blink.ino.elf,這會打開DDD窗口:

init()函數上設置斷點,並在底部命令窗口中依次執行命令:

1 target remote localhost:4242
2 load

將程序上傳到ATMega8虛擬機中。點擊「Cont」Continue的縮寫)按鈕,程序會跳轉到主函數的位置,就能夠開始調試了:

相關文章
相關標籤/搜索