程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> Arduino Hello 2

Arduino Hello 2

編輯:C++入門知識

准備
我沒有買原板,從授權供應商處購買兼容板,  兼容板有一定的改動。
為了將電腦和原板和兼容板連在一起,不僅需要連接線纜,我購買的兼容板使用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微秒。

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved