arduino 7-seg lcd

ใบรายงานผลการปฏิบัติงาน

    1. Code Program ที่เขียนขึ้น ด้วยโปรแกรม Arduino  พร้อมอธิบายโปรแกรม

    

#include <LiquidCrystal.h> // เรียกอุปกรณ์ที่ aduno ไม่รู้จัก

LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // ขาที่ใช้

void setup() { // กำหนดค่าอุปกรณ์

pinMode(0,INPUT); // กำหนดอินพุตและเอ้าพุต

pinMode(1,INPUT);

pinMode(6,OUTPUT);

pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
lcd.begin(16,2);

}
void loop() { // ลูปการทำงาน
  int x= digitalRead(0); // สวิตซ์
  int y= digitalRead(1);
if  (x==0){  // เมื่อค่าเปลี่ยนอุปกรณ์จะทำงาน
    a();
    b();
    c();
    d(); 
    e();
    f(); 
    g(); 
    h();
    i();
    j();
    }
    if  (y==0){
    j();
    i();
    h();
    g(); 
    f();
    e(); 
    d(); 
    c();
    b();
    a();
    }
    
}
  void a(){ // ลูปที่สร้างขึ้นเอง
  digitalWrite(6,LOW); // กำหนดขา high หรือ low
  digitalWrite(7,LOW);
  digitalWrite(8,LOW);
  digitalWrite(9,LOW);
  lcd.setCursor(3, 0); // กำหนดค่าจะให้แสดงที่แถวไหน
  lcd.print("0"); // สิ่งที่ใช้ในการแสดง
  delay(500); // หน่วงเวลา
  }
   void b(){
  digitalWrite(6,HIGH);
  digitalWrite(7,LOW);
  digitalWrite(8,LOW);
  digitalWrite(9,LOW);
  lcd.setCursor(3, 0);
  lcd.print("1");
  delay(500);
  }
  void c(){
  digitalWrite(6,LOW);
  digitalWrite(7,HIGH);
  digitalWrite(8,LOW);
  digitalWrite(9,LOW);
  lcd.setCursor(3, 0);
  lcd.print("2");
  delay(500);
  } 
  void d(){
  digitalWrite(6,HIGH);
  digitalWrite(7,HIGH);
  digitalWrite(8,LOW);
  digitalWrite(9,LOW);
  lcd.setCursor(3, 0);
  lcd.print("3");
  delay(500);
  } 
  void e(){
  digitalWrite(6,LOW);
  digitalWrite(7,LOW);
  digitalWrite(8,HIGH);
  digitalWrite(9,LOW);
  lcd.setCursor(3, 0);
  lcd.print("4");
  delay(500);
  }  
  void f(){
  digitalWrite(6,HIGH);
  digitalWrite(7,LOW);
  digitalWrite(8,HIGH);
  digitalWrite(9,LOW);
  lcd.setCursor(3, 0);
  lcd.print("5");
  delay(500);
  }  
  void g(){
  digitalWrite(6,LOW);
  digitalWrite(7,HIGH);
  digitalWrite(8,HIGH);
  digitalWrite(9,LOW);
  lcd.setCursor(3, 0);
  lcd.print("6");
  delay(500);
  }   
  void h(){
  digitalWrite(6,HIGH);
  digitalWrite(7,HIGH);
  digitalWrite(8,HIGH);
  digitalWrite(9,LOW);
  lcd.setCursor(3, 0);
  lcd.print("7");
  delay(500);
  }   
  void i(){
  digitalWrite(6,LOW);
  digitalWrite(7,LOW);
  digitalWrite(8,LOW);
  digitalWrite(9,HIGH);
  lcd.setCursor(3, 0);
  lcd.print("8");
  delay(500);
  }
  void j(){
  digitalWrite(6,HIGH);
  digitalWrite(7,LOW);
  digitalWrite(8,LOW);
  digitalWrite(9,HIGH);
  lcd.setCursor(3, 0);
  lcd.print("9");
  delay(500);
 } 



 
     2. ภาพจำลองการทำงานด้วยโปรแกรม Proteus
3. อธิบายการทำงานของโปรแกรม
    เมื่อกด สวิชต์ ขา 0 จะทำการนับ จาก 0-9 และ lcd จะนับ 0-9 เช่นกัน
    เมื่อกด สวิชต์ ขา 1 จะทำการนับ จาก 9-0 และ lcd จะนับ 9-0 เช่นกัน

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

ใบงานที่ 7 arduino หาเอง

arduino กลับทางหมุนมอเตอร์

MIKRO C T6 ควบคุมการแสดงข้อความด้วย LCD