物聯網實境遊戲應用課程
主要撰寫程式語言為 C++
為設計學院學生設計的開發板,用來設計人機互動的專案。擁有 high-level API,程式初學者也可以好上手
透過 pin 腳與 sensor 溝通,感知外部環境;或是控制外部元件,作出對應的反應
Arduino 專案介紹
開發板
型號 | 數位輸出 | 類比輸出 | 最大執行檔大小 | 時脈 |
---|---|---|---|---|
UNO | 14 | 6 | 32KB | 16MHz |
MEGA | 54 | 16 | 256KB | 16MHz |
官網提供 arduino 專屬的 IDE
工具列 icon 依序為
設定使用的開發板型號
Tools -> Board
:選擇使用的型號Tools -> Processor
:[不一定會有]選擇開發板的處理器型號Tools -> Port
:選擇開發板的連接阜,只要將開發板接到電腦上,IDE 會自動出現對應的選項
setup()
:初始化函式loop()
:程式迴圈,主要運作程式寫在這裡pinMode(pinNum, mode)
:設定 pin 腳的運作模式
OUTPUT
:讓 pin 腳可以輸出訊號,輸出電壓為 5V。配合 digitalWrite(pinNum, value)
來控制輸出訊號。INPUT
:讓 pin 腳可以讀取訊號,不要超過 5V。配合 digitalRead(pinNum)
或 analogRead(A_pinMum)
讀取訊號digitalWrite(pinNum, value)
HIGH
:pin 腳輸出電壓為 5V (analog pin 也可以當 digital pin 輸出)LOW
:pin 腳輸出電壓為 GNDdigitalRead(pinNum)
:讀取 pin 腳輸入訊號,analog pin 也可以使用
HIGH
:輸入訊號為 5VLOW
:輸入訊號為 GNDanalogWrite(pinNum, value)
:讓 pin 腳輸出 PWM 訊號,只有支援 PWM 的 pin 腳才有用analogRead(A_pinNum)
:讀取 analog pin 輸入的訊號大小,使用 10bit ADC練習:呼吸燈、按鈕開關 LED
delay(x)
:暫停 x 毫秒 (ms)delayMicroseconds(x)
:暫停 x 微秒 (us)Serial.begin(baud rate)
:設定 UART 傳輸的 baud rate,開啟 serial monitor 也要選擇一樣的 baud rate/* Output the value of i per second. */
void setup()
{
Serial.begin(9600);
// Wait for initialization
while (!Serial)
;
}
int i = 0;
void loop()
{
Serial.println(i++);
delay(1000);
}
注意:在 Arduino UNO/MEGA 中 int
是 16 bits、long
是 32 bits、short
是 16 bits、float
跟 double
一樣是 32 bits