Monday, May 21, 2018

ฝึกเขียน arduino กดสวิท(กดติดปล่อยดับ)

การฝึกเรียนโปรแกรม กดสวิท(กดติดปล่อยดับ) ของArduino เป็นการเขียนโปรแกรมแบบเบื้องต้น
การเขียนโปรแกรมกดติดปล่อยดับมี 2 แบบ
แบบที่1 จะเป็นการ pull up resistor โดยทำการต่อ resistor 10K เข้ากับไฟ 5V
แบบที่2 จะเป็นการใช้ pull up resistor ภายในตัวของarduino เอง

ตัวอย่าง code แบบที่1
void setup(){
pinMode(24,OUTPUT);
pinMode(26,INPUT);

}
void loop() {
while(1){
 if(digitalRead(26)==LOW)       //sweet1 left
 {
   digitalWrite(24,HIGH);
 }
   else{
   digitalWrite(24,LOW);
   }
   while(digitalRead(26)==LOW);
}
}

ตัวนี้จะเป็นแบบ สวิทเดียว
ต่อมามารองแบบสองสวิท
void setup(){
pinMode(24,OUTPUT);
pinMdoe(25,OUTPUT);
pinMode(26,INPUT);
pinMode(27,INPUT);

}
void loop() {
while(1){
 if(digitalRead(26)==LOW) //sweet1 left
 {
   digitalWrite(24,HIGH);
 }
   else{
   digitalWrite(24,LOW);
   }
   while(digitalRead(26)==LOW);


 if(digitalRead(27)==LOW) //sweet1 left
 {
   digitalWrite(25,HIGH);
 }
   else{
   digitalWrite(25,LOW);
   }
   while(digitalRead(27
)==LOW);
}
}


รูปแสดงที่1
รูปแสดงที่2
 
ตัวอย่าง code แบบที่2
void setup() {
  pinMode(2, INPUT_PULLUP);             //set input
  pinMode(13, OUTPUT);                        //Set LED 13

}

void loop() {
  int switch = digitalRead(2);                    //set switch -->leg2

  if (switch == HIGH)
  {                      
    digitalWrite(13, LOW);
  }  
else  
{
    digitalWrite(13, HIGH);
  }
}
 https://www.arduino.cc/en/uploads/Tutorial/inputPullupButton.png 
รูปแสดงที่ 3 

https://www.arduino.cc/en/uploads/Tutorial/inputPullupSerial_sch.png 
รูปแสดงที่ 4
 
ขอบคุณขอมูลจาก https://www.arduino.cc

No comments:

Post a Comment