ARDUINO, 入門篇

【Arduino入門教學課程】 第九篇:搶答器設計

people holding assorted-color LED lights

實驗說明:

  • 我們在電視綜藝節目裡面經常看到多個選手搶答問題,每個選手前面都有一個搶答器,誰先按下搶答器按鍵,誰前面的燈就會點亮,然後就可以回答主持人提出的問題。本章節將會教讀者如何製作一個搶答器。
  • 本實驗就是將前一章節的按鍵控制LED的實驗擴展成3個按鍵對應3 個LED,並會佔用6 個數位I/O Pin。

材料:

  • Arduino Uno R3
  • USB 傳輸線
  • 直插LED
  • 按鍵開關
  • 220Ω直插電阻
  • 10kΩ直插電阻
  • 麵包板
  • 麵包板跳線

 

 

👍爆款推薦:程式學習套件組 

購買網址:shop.mirotek.com.tw

 

接線說明:

 

程式:

int redkey=10, yellowkey=9, greenkey=8;
int redled=7, yellowled=6, greenled=5;
int redkey_val, yellowkey_val, greenkey_val;

void setup()
{
  pinMode(redled,OUTPUT);
  pinMode(yellowled,OUTPUT);
  pinMode(greenled,OUTPUT);
  pinMode(redkey,INPUT);
  pinMode(yellowkey,INPUT);
  pinMode(greenkey,INPUT);
}
void loop()
{
  redkey_val=digitalRead(redkey);
  if(redkey_val==LOW)
    digitalWrite(redled,LOW);
  else
    digitalWrite(redled,HIGH);

  yellowkey_val=digitalRead(yellowkey);
  if(yellowkey_val==LOW)
    digitalWrite(yellowled,LOW);
  else
    digitalWrite(yellowled,HIGH);

  greenkey_val=digitalRead(greenkey);
  if(greenkey_val==LOW) 
    digitalWrite(greenled,LOW);
  else
    digitalWrite(greenled,HIGH);
}

程式說明:

  • 第 1 列定義按鍵開關數位接口10Pin、9Pin、8Pin 。
  • 第 2 列定義LED數位接口7Pin、6Pin、5Pin 。
  • 第 3 列宣告3個變數redkey_val 、 yellowkey_val 、 greenkey_val。
  • 第 7~9 列定義LED Pin為輸出Pin 。
  • 第 10~12 列定義按鍵 Pin為輸入Pin。
  • 第 16 列讀取數位接口10Pin 電位值賦給redkey_val。
  • 第 17~20 列檢測按鍵是否按下,按鍵按下時紅色LED亮起。
  • 第 22 列讀取數位接口9Pin 電位值賦給yellowkey_val。
  • 第 23~26 列檢測按鍵是否按下,按鍵按下時黃色LED亮起。
  • 第 28 列讀取數位接口8Pin 電位值賦給greenkey_val 。
  • 第 29~32 列檢測按鍵是否按下,按鍵按下時綠色LED亮起。

 

下載完程序,我們自己製作的簡易搶答器就完成了。

相關文章