วันอาทิตย์ที่ 21 กรกฎาคม พ.ศ. 2562

สรุป LAB 2

สรุป LAB 2


ชื่องาน ARDUINO.....DIGITAL
คำสั่งที่ใช้     Void  setup และ void  loop ก็คือการประกาศฟังก์ชัน ซึ่งถูกกำหนดการคืนค่าและการรับค่าไว้แล้ว  เรามีหน้าที่กำหนดการทำงานภายใน  โดยจะมีโปรแกรมใหญ่ที่เรียกใช้งานฟังก์ชั่นทั้งสองนี้ซ่อนอยู่ โดยจะเรียก setup(); ก่อน ครั้ง จากนั้นจะวนซ้ำโดยไม่มีเงื่อนไขเพื่อเรียก loop();
                      Pull-Up Resistor        ไม่ได้กดปุ่ม จะอ่านค่าได้เป็น HIGH
                                                               กดปุ่ม จะอ่านค่าได้เป็น LOW
                 Pull-Down Resistor   ไม่ได้กดปุ่ม จะอ่านค่าได้เป็น LOW
                                                               กดปุ่ม จะอ่านค่าได้เป็น HIGH  
  if  คือ จะทำงานตามคำสั่งชุดเดียว
Code
     Hardware

 



Software  LAB 2.1
# define buttonPin 2   
# define ledPin 13     
void setup()
{
  pinMode(ledPin, OUTPUT);
  pinMode(buttonPin, INPUT);
}
void loop()
{
   digitalWrite(ledPin,digitalRead(buttonPin));
}
Software  LAB 2.2
# define buttonPin 2   
# define ledPin 13   
bool ledStatus=LOW;
int ThisRead;
int LastRead = HIGH;
long Debounce;
void setup()
{
  pinMode(ledPin, OUTPUT);
  pinMode(buttonPin, INPUT);
}
void loop()
{
  do {
         ThisRead = digitalRead(buttonPin);
         if (ThisRead == LastRead)
             { Debounce = millis();
             }
       }
   while((millis()- Debounce)<50);
         if (ThisRead == LOW && LastRead == HIGH)
            {digitalWrite(ledPin,(ledStatus=!ledStatus));
            } 
   LastRead = ThisRead;
}
      Hardware

Software  LAB 2.3
const int buttonPin1 = 2
const int buttonPin2 = 3
const int ledPin1 =  10;     
const int ledPin2 =  13;     
int buttonState1 = 1;       
int buttonState2 = 0
void setup()
{
  pinMode(ledPin1, OUTPUT);
  pinMode(ledPin2, OUTPUT);
  pinMode(buttonPin1, INPUT);
  pinMode(buttonPin2, INPUT);
}

void loop()
{
  buttonState1 = digitalRead(buttonPin1);
  if (buttonState1 == LOW)
     {
      digitalWrite(ledPin1, HIGH);
     }
 else
    {
    digitalWrite(ledPin1, LOW);
    }
    buttonState2 = digitalRead(buttonPin2);
    if (buttonState2 == HIGH)
       {
        digitalWrite(ledPin2, HIGH);
       }
  else
     {
     digitalWrite(ledPin2, LOW);
      }
}

สรุป
LAB ที่ 2.1เมื่อกดสวิตว์ไฟจะติดเมื่อปล่อยสวิตว์ไฟจะดับ
LAB ที่ 2.2 เมื่อกดสวิตว์ไฟจะติดเมื่อกดสวิตว์อีกครั้งไฟจะดับ
LAB ที่ 2.3เมื่อกดสวิตว์1ไฟจะติดเมื่อปล่อยไฟจะดับ
เมื่อกดสวิตว์2ไฟจะติดเมื่อปล่อยไฟจะดับ

สรุป LAB 1

สรุป LAB 1


ชื่องาน LAB 1 Arduino....Digital Input/Output
คำสั่งที่ใช้     Digital Write   ความหมาย  () ทำหน้าที่เขียนค่า HIGH หรือ LOW ไปยังขาดิจิตอล ถ้าขาถูกกำหนดให้เป็นเอาต์พุตโดยฟังก์ชัน pin Mode() แรงดันไฟฟ้าจะถูกตั้งค่าเป็น 5V(หรือ 3.3V บนบอร์ด) สำหรับ HIGH และ 0V (กราวน์) สำหรับ LOW.
Code  
 Hardware 


Software lab 1.1 
void setup()
{
 pinMode(7,OUTOUT);
 pinMode(13,OUTPUT);
};
void loop()
{
 digitalWrite(7,HIGH);
 digitalWrite(13,LOW);
 delay(200);
 digitalWrite(13,HIGH);
 digitalWrite(7,LOW);
 delay(200);
}
Software lab 1.2
int ledPin1 = 7;
int ledPin2 = 13;
void setup() 
{
  pinMode(ledPin1, OUTPUT);
  pinMode(ledPin2, OUTPUT);
}  ;
   
void loop() 
{
  digitalWrite(ledPin1, HIGH);   
  digitalWrite(ledPin2, LOW);   
  delay(200);              
  digitalWrite(ledPin1, LOW); 
  digitalWrite(ledPin2, HIGH);   
  delay(200);          
}
Software lab 1.3
#define ledPin1 7
#define ledPin2 13
void setup() 
{
  pinMode(ledPin1, OUTPUT);
  pinMode(ledPin2, OUTPUT);
}  ;
   
void loop() 
{
  digitalWrite(ledPin1, HIGH);   
  digitalWrite(ledPin2, LOW);   
  delay(200);              
  digitalWrite(ledPin1, LOW); 
  digitalWrite(ledPin2, HIGH);   
  delay(200);          
}
Software lab 1.4
int ledPin1 = 7;
int ledPin2 = 13;
bool ledStatus=LOW;
void setup() 
{
  pinMode(ledPin1, OUTPUT);
  pinMode(ledPin2, OUTPUT);
}  ;
   
void loop() 
{
  digitalWrite(ledPin1,(ledStatus=!ledStatus));   
  digitalWrite(ledPin2,(ledStatus=ledStatus));    
  delay(200);              
  digitalWrite(ledPin1,(ledStatus=ledStatus));
  digitalWrite(ledPin2,(ledStatus=!ledStatus));    
  delay(200);          
}

สรุปการทำงาน โปแกรมทั้งหมดที่ถูกเขียนขึ้นมาตั้งแต่ 1.1 1.2 1.3 1.4 ทั้งหมดทำงานเหมือนกันหมดแต่หลังการเขียนของแต่ละตัวจะไม่เหมือนกัน แต่ผลที่ออกมา คือ หลอดไฟ LED ติดสลับกัน