17/07/2567

ปีการศึกษา 2567 Arduino ม.4 (LED IR remote)

 📣ความรู้ไปประยุกต์ใช้อุปกรณ์อิเล็กทรอนิกส์เพื่อสร้างสรรค์เป็นโครงงานตามที่โจทย์กำหนดได้วงจร


📣ความรู้ไปประยุกต์ใช้อุปกรณ์อิเล็กทรอนิกส์เพื่อสร้างสรรค์เป็นโครงงานตามที่โจทย์กำหนดได้คำสั่งเขียน 

#include <IRremote.h>

int voltage[12];

unsigned int i = 0;

IRrecv irrecv(12);

decode_results results;

unsigned long key_value = 0;

void setup(){

  Serial.begin(9600);

  SetUpPins();

  irrecv.enableIRIn();

  irrecv.blink13(true);

}

void loop(){

  TranslateIR();

}

void ToggleLED(int pin) {

  if (voltage[pin]) {

    Serial.print("LED ");

    Serial.print(pin - 2);

    Serial.println(" was turned off");

    digitalWrite(pin, LOW);

    voltage[pin] = 0;

  } else {

    Serial.print("LED ");

    Serial.print(pin - 2);

    Serial.println(" was turned on");

    digitalWrite(pin, HIGH);

    voltage[pin] = 1;

  }

}

void SetUpPins() {

  pinMode(10, OUTPUT);

  pinMode(11, OUTPUT);

  pinMode(2, OUTPUT);

  pinMode(3, OUTPUT);

  pinMode(4, OUTPUT);

  pinMode(5, OUTPUT);

  pinMode(6, OUTPUT);

  pinMode(7, OUTPUT);

  pinMode(8, OUTPUT);

  pinMode(9, OUTPUT);

  digitalWrite(10, LOW);

  digitalWrite(11, LOW);

  digitalWrite(2, LOW);

  digitalWrite(3, LOW);

  digitalWrite(4, LOW);

  digitalWrite(5, LOW);

  digitalWrite(6, LOW);

  digitalWrite(7, LOW);

  digitalWrite(8, LOW);

  digitalWrite(9, LOW);

}

void TranslateIR() {

  if (irrecv.decode(&results)){

        if (results.value == 0XFFFFFFFF)

          results.value = key_value;

        switch(results.value){

          case 0xFD00FF://power

          break;

          case 0xFD807F://vol+

          break;

          case 0xFD40BF://func/stop

          break;

          case 0xFD20DF://|<<

          break;

          case 0xFDA05F://>||

          break ;  

          case 0xFD609F://>>|

          break ;              

          case 0xFD10EF://down arrow

          break ;  

          case 0xFD906F://vol-

          break ;  

          case 0xFD50AF://up arrow

          break ;  

          case 0xFD30CF://0

          ToggleLED(2);

          break ;  

          case 0xFDB04F://eq

          break ;

          case 0xFD708F://st/rept

          break ;

          case 0xFD08F7://1

          ToggleLED(3);

          break ;

          case 0xFD8877://2

          ToggleLED(4);

          break ;

          case 0xFD48B7://3

          ToggleLED(5);

          break ;

          case 0xFD28D7://4

          ToggleLED(6);

          break ;

          case 0xFDA857://5

          ToggleLED(7);

          break ;

          case 0xFD6897://6

          ToggleLED(8);

          break ;

          case 0xFD18E7://7

          ToggleLED(9);

          break ;

          case 0xFD9867://8

          ToggleLED(10);

          break ;

          case 0xFD58A7://9

          ToggleLED(11);

          break ;      

        }

        key_value = results.value;

        irrecv.resume();

  }

}



ไม่มีความคิดเห็น:

แสดงความคิดเห็น

ครูเต้ง เทคโนฯ