2018年8月1日 星期三

Android 基本應用,I/O output ,LED閃爍

本章節要提到在玩Arduino最初期應該要做的第一個實驗,就是最基本的功能,IO控制中的OUTPUT,MCU的出PIN大多都可以透過程式設定為"輸入input"或"輸出output",輸入可以讀取外部訊號,而輸出,顧名思義就是可以控制外部,可以設定該PIN腳的狀態,是屬於HI或LOW,本次的實驗,該PIN腳在Arduino NANO的板子上已經接往一顆LED,控制這跟接腳輸出狀態為"HI"或"LOW"可以讓LED亮滅,透過時間的延遲,看起來就是LED在閃爍,如最下面的影片。





















接線方式

今天採用的是Arduino NANO 板上的LED,故不需要任何接線,如果您的實驗板沒有LED,可以將訊號腳接至電表,透過電表的電壓,確認輸出是否為HI_LOW_HI_LOW不斷循環

測試程式
本次是用內建的Blink範例做最小幅度的修改,因為這樣可能更容易理解一些

/*
  Blink

  Turns an LED on for one second, then off for one second, repeatedly.

  Most Arduinos have an on-board LED you can control. On the UNO, MEGA and ZERO
  it is attached to digital pin 13, on MKR1000 on pin 6. LED_BUILTIN is set to
  the correct LED pin independent of which board is used.
  If you want to know what pin the on-board LED is connected to on your Arduino
  model, check the Technical Specs of your board at:
  https://www.arduino.cc/en/Main/Products

  modified 8 May 2014
  by Scott Fitzgerald
  modified 2 Sep 2016
  by Arturo Guadalupi
  modified 8 Sep 2016
  by Colby Newman

  This example code is in the public domain.

  http://www.arduino.cc/en/Tutorial/Blink
*/
#define LED_PIN       13   

// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin LED_BUILTIN as an output.
  pinMode(LED_PIN, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_PIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(500);                       // wait for a second
  digitalWrite(LED_PIN, LOW);    // turn the LED off by making the voltage LOW
  delay(500);                       // wait for a second
}




實際測試影片









沒有留言:

張貼留言

專題許願池,請不要吝嗇將你想製作的專題用回覆的方式寫在下方

專題許願池 開這個板是為了幫助一些人,有專題製作需求,但是又不知道要如何實現 如果您有想製作的專題,請您將您的題目回覆在下方,先提出您的需求,進而討論可行性或製做的方向,或是您進行到什麼階段,有遇到什麼樣的問題也可以提出來討論,如果我知道會盡量幫助您順利完成。 不限...