2016年5月21日 星期六

利用Arduino控制LED亮滅-Blink範例程式說明

一個Arduino的程式是由參數設定(setup)和迴圈(loop)兩個函數所構成的setpup()可以用來設定某一個接腳是input 或是output其程式碼只會被執行一次,而loop()的程式碼會不斷的被執行,直到電源關掉為止。

首先我們在程式中設定PIN 13為輸出,並且將高電位(5V)寫到PIN 13去,程式如下:

void setup() 
{
     pinMode(13, OUTPUT);
}

void loop() 
{
     digitalWrite(13, HIGH);   // turn the LED on
}


如果我們直接拿LED插在Arduino實驗板上的PIN 13GND (地電位,0伏特)兩個腳位,那麼便可以發現LED被點亮了值得注意的是長腳(正極)應插在PIN 13而短腳(負極)插在GND腳位上。






但由於擔心電流過大導致LED被燒毀,因為我們可以在LED電路上串上一個220歐姆的電阻,以限制流過的電流,藉以保護電路:








我們再將程式改寫如下:
void setup() {
  pinMode(13, OUTPUT);
}

void loop() {
  digitalWrite(13, HIGH);   // 5VPIN13, turn the LED on
  delay (1000);            //等待1 (1000 ms)
  digitalWrite(13, LOW);   //  0VPIN13, turn the LED off
  delay (1000);            //等待1 (1000 ms)
}

那麼就會發現LED以間隔1秒的時間亮滅。這也就是Arduino編輯器裡的Blink範例程式的內容。


沒有留言:

張貼留言

NUMPY的Array介紹與Matplotlib的繪圖功能

NumPy 的 Array 介紹與 Matplotlib 的繪圖功能   1. A rray 的基本運算 :   適用於科學和數學運算的 NumPy 套件中,有一個 Array 的資料結構。 Array 是一個非常類似 list 的序列型態。 但是 Arr...