准備
我沒有買原板,從授權供應商處購買兼容板, 兼容板有一定的改動。
為了將電腦和原板和兼容板連在一起,不僅需要連接線纜,我購買的兼容板使用USB線連接,還需要下載相應的驅動程序,驅動程序依賴兼容板會有所不同,請聯系供應商,同時要注意Windows、Mac OS X和Linux不同操作系統需要不同的驅動程序。
--------------------------------------------------------------------------------
Arduino Hello 2 說明
原板的情況不清楚。我購買的兼容板上一共設計了14路數字端口,編號是0~13,都可以用於輸入和輸出,借助於帶有測量頻率功能的萬用表可以測試其他的端口。
--------------------------------------------------------------------------------
Arduino Hello 2 程序
[cpp] int pin = 12;
void setup()
{
pinMode(pin, OUTPUT);
}
void loop()
{
digitalWrite(pin, HIGH);
delay(50);
digitalWrite(pin, LOW);
delay(50);
}
int pin = 12;
void setup()
{
pinMode(pin, OUTPUT);
}
void loop()
{
digitalWrite(pin, HIGH);
delay(50);
digitalWrite(pin, LOW);
delay(50);
}
--------------------------------------------------------------------------------
Arduino Hello 2 程序結構
[cpp] int pin = 12;
int pin = 12;聲明一個變量pin,值為12,用於代表引腳12,當然也可以直接使用數值。
[cpp] pinMode(pin, OUTPUT);
pinMode(pin, OUTPUT);設定引腳pin的模式為輸出模式,Arduino中同一個引腳可以作為輸出使用,也可以作為輸入使用,所以需要先設定模式。
[cpp] digitalWrite(pin, HIGH);
digitalWrite(pin, HIGH);向引腳pin輸出一個高電平。
[cpp] delay(50);
delay(50);延遲50毫秒。delay是延遲函數。
[cpp] digitalWrite(pin, LOW);
digitalWrite(pin, LOW);向引腳pin輸出一個低電平。
[cpp] delay(50);
delay(50);延遲50毫秒。
--------------------------------------------------------------------------------
完成後單擊“文件”菜單,單擊“下載”菜單項,Arduino IDE將自動編譯程序,然後下載到Arduino板上。使用萬用表的測量頻率功能測試GND引腳和12號引腳,可以看到頻率值為9.994Hz,沒有達到期望的10Hz,這是因為程序本身需要一定的執行時間。調整不同的延遲值可得如下數據。
兩個delay函數的參數(單位:毫秒) 頻率(單位:Hz) 每個loop時間 去掉delay函數指定的時間
50 9.994 100060微秒 60微秒
49 10.19 98135微秒 135微秒
5 99.80 10020微秒 20微秒
4 124.7 8019微秒 19微秒
3 166.1 6020微秒 20微秒
2 248.8 4019微秒 19微秒
1 495.8 2016微秒 16微秒
0 62.10K 16.103微秒 16.103微秒
無函數 115.2K 8.680微秒 8.680微秒
通過以上數據可知,digitalWrite執行約需4微秒,delay不包括其中的延時執行約需4微秒。