天天看點

《Arduino開發實戰指南:LabVIEW卷》——2.1 Arduino IDE

本節書摘來自華章計算機《arduino開發實戰指南:labview卷》一書中的第2章,第2.1節,作者:餘崇梓著, 更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視。

2.1.1 arduino ide界面

輕按兩下arduino應用軟體的執行檔案arduino.exe,打開arduino開發環境。

arduino開發環境包含一個用于寫代碼的文本編輯器,一個消息顯示區域,一個文本控制台,以及一個有常用功能按鈕的工具欄和一系列菜單。它與arduino硬體連接配接,可以進行程式下載下傳以及通信。arduino ide界面如圖2-1

所示。

《Arduino開發實戰指南:LabVIEW卷》——2.1 Arduino IDE

使用arduino編寫的軟體稱為sketch。這些sketch在文本編輯器裡編寫。sketch以字尾名為.ino的檔案儲存。它具有剪切、粘貼和搜尋/替換文本的特性。當進行儲存或導出操作的時候,消息區可以給出回報資訊,同時消息區還可以顯示錯誤資訊。控制台顯示arduino平台錯誤及其他文本資訊。軟體右下角顯示目前使用的硬體闆型及串行端口号。工具欄按鈕允許使用者進行程式驗證和下載下傳,并能建立、打開和實時儲存sketch,并能打開序列槽監聽器。

2.1.2 arduino ide工具欄

arduino ide工具欄如圖2-2所示。下面對這些工具逐一進行介紹。

《Arduino開發實戰指南:LabVIEW卷》——2.1 Arduino IDE

verify

 ?檢查代碼錯誤。

upload

 ?編譯代碼并下載下傳至arduino i/o闆。

注意,如果正在使用一個外部程式設計器,可以按住計算機上的shift鍵,在使用這個圖示的時候,圖示文本将變為upload using programmer。

new

 ?建立sketch。

open

 ?打開已有的sketch。

save

 ?儲存sketch。

serial monitor

 ?打開序列槽監聽器。

2.1.3 arduino ide菜單欄

除了工具欄以外,還有其他更多指令可以在file、edit、sketch、tools、help五個菜單中找到。arduino ide菜單欄如圖2-3所示。

《Arduino開發實戰指南:LabVIEW卷》——2.1 Arduino IDE

1.file菜單

像其他很多軟體的file(檔案)菜單一樣,arduino ide的file菜單也包括了基本的new、open、save、save as、print等選項。另外,在file菜單中也可以打開很多示例,也可以在file菜單中進行程式下載下傳,如圖2-4所示。

《Arduino開發實戰指南:LabVIEW卷》——2.1 Arduino IDE

在file菜單下,選擇preferences,可以進行參數設定,包括:程式庫位置、語言、編輯器字型大小、輸出時顯示詳細資訊、使用外部編輯器等,如圖2-5所示。

《Arduino開發實戰指南:LabVIEW卷》——2.1 Arduino IDE

2.edit菜單

edit(編輯)菜單提供了基本的剪切、複制、程式注釋、取消注釋、查找等功能,如

圖2-6所示。

下面主要介紹arduino ide edit菜單兩個特别的功能。

copy for forum

《Arduino開發實戰指南:LabVIEW卷》——2.1 Arduino IDE

将sketch代碼以合适的方式複制到剪貼闆,以便于釋出到論壇。

copy as html

将sketch代碼以html形式複制到剪貼闆,适合嵌入web頁面中。

3.sketch菜單

sketch菜單如圖2-7所示,主要有verify/compile、show sketch folder、add file及import library選項。

《Arduino開發實戰指南:LabVIEW卷》——2.1 Arduino IDE

verify/compile

檢查代碼錯誤。

show sketch folder

打開目前的sketch檔案夾。

add file

添加源檔案到sketch(将從目前的位置複制它)。被添加檔案出現在新頁籤的sketch視窗中。可以使用tab菜單将檔案删除。

import library

導入庫,可以在sketch中添加#include語句。

在sketch中,庫提供了一些額外的功能。例如,和硬體協同工作或資料處理。在sketch中使用庫的時候,選擇sketch→import library,将會在你的sketch中插入#include語句,在編譯sketch的時候也會編譯這個庫。因為庫和sketch一起被下載下傳到硬體闆上,是以會占用更多資源。如果一個庫不再需要了,可以在sketch中簡單地删除相應的#include語句。

4.tools菜單

tools(工具)菜單包括了在arduino ide中可用的一些工具,如圖2-8所示。

《Arduino開發實戰指南:LabVIEW卷》——2.1 Arduino IDE

auto format

自動格式化。

archive sketch

以.zip格式備份目前的sketch,zip檔案和sketch在同一個檔案夾中。

board

選擇所使用的闆型。

serial port

這個菜單包含了計算機上的所有串行裝置(真實或虛拟的),每次打開這個菜單的時候它都将進行自動重新整理。

programmer

當對闆子或晶片程式設計的時候,選擇一個硬體程式設計器,不用闆載的usb序列槽連接配接。一般情況下不會用到這個菜單,當要對一個新的單片機燒寫bootloader的時候才會用到。

burn bootloader

當要給arduino闆上一個新單片機燒寫bootloader的時候需要用到這個菜單。正常情況下不需要用到這個菜單,當使用一個新的atmega單片機(沒有自帶bootloader)的時候才需要用到這個菜單,在燒寫bootloader之前要確定在board菜單裡面選擇了正确的硬體闆型。

uploading

在進行upload之前,需要在tools→board和tools→serial port兩個菜單裡選擇正确的選項。

一旦在菜單裡選擇了正确的闆型和序列槽,單擊工具欄中的upload菜單或者在file菜單中選擇upload,目前的arduino闆将會自動複位并開始下載下傳。在大部分的闆子上,當下載下傳sketch的時候,會看到rx和tx的led會閃爍,當下載下傳完成後,arduino軟體環境會顯示完成(或出錯)的消息。

當下載下傳sketch的時候,使用的是arduino的bootloader——已經被加載到單片機中的一小段程式。它允許使用者脫離外部硬體就能夠下載下傳代碼。當闆子複位的時候,bootloader會運作幾秒鐘,然後它将運作最新加載到單片機的sketch程式。當bootloader開始運作的時候,闆載的led(數字引腳13)會閃爍。

arduino uno可以通過arduino軟體進行程式設計,在ide中選擇tools→board(根據闆子上的單片機類型選擇)。

arduino uno上的atmega328已經預先燒寫了一個bootloader,允許使用者下載下傳新的代碼而不需要使用外部硬體程式設計器。它使用stk500協定通信。可以不使用預先燒寫的bootloader,而通過icsp(in-circuit serial programming)接口進行程式設計。

atmega16u2(或arduino uno rev1、rev2闆上的atmega8u2)固件代碼是開源的。atmega16u2/8u2含有dfu引導裝載程式,它可以通過下面的方式使能:

在rev1闆上:連接配接闆背面的焊接跳線,然後重新開機atmega8u2。

在rev2或更新的闆上:有一個電阻,把atmega8u2/atmega16u2的hwb先拉到地,使它更容易進入dfu模式。

然後可以使用atmel的flip軟體或者dfu程式設計器加載一個新的固件。或者可以通過isp接口使用外部程式設計器程式設計。

顯示從arduino闆(usb 或序列槽闆)發回來的串行資料。如果要發送資料給闆子,選擇和sketch中比對的波特率,輸入文本并單擊send按鈕。

5.help菜單

在help(幫助)菜單中可以檢視arduino ide的版本号,并可以通過help菜單中的連結查找線上幫助資料及文檔,如圖2-9所示。

《Arduino開發實戰指南:LabVIEW卷》——2.1 Arduino IDE