Selasa, 24 Januari 2017

SEVEN SEGMENT DENGAN ARDUINO IDE

I.TUJUAN

-Siswa dapat menggunakan arduinoIDE
-Siswa dapat merangkai rangkaian di protoboard
-Siswa dapat memprogram di arduinoIDE
-Siswa dapat membuat variasi program di sevensegmen

II.ALAT DAN BAHAN

-Sevensegment
-Arduino IDE
-Laptop/PC
-Jumper
-Protoboard
-Resistor
-Pushbutton

III.DESKRIPSI TUGAS

-Membuat program Arduino menggunakan sevensegment dan dengan 2 tombol up dan down

IV.LANGKAH KERJA

-Buat program di arduinoIDE
-Tulis program ini :
int A = 2;
int B = 3;
int C = 4;
int D = 6;
int DP = 5;
int E = 7;
int F = 8;
int G = 9;

int switchUpPin = 13;
int switchDownPin = 12;
int counter = 0;
int buttonUpState = 0;
int lastButtonUpState = 0;
int buttonDownState = 0;
int lastButtonDownState = 0;

void setup() 
{
  Serial.begin(9600);
  
  pinMode(A, OUTPUT);
  pinMode(B, OUTPUT);
  pinMode(C, OUTPUT);
  pinMode(D, OUTPUT);
  pinMode(E, OUTPUT);
  pinMode(F, OUTPUT);
  pinMode(G, OUTPUT);
  pinMode(DP, OUTPUT);

  digitalWrite(DP ,HIGH);
}

void loop() 
{
  buttonUpState = digitalRead(switchUpPin);
  buttonDownState = digitalRead(switchDownPin);

  if (buttonUpState != lastButtonUpState) 
  {
    if (buttonUpState == HIGH) 
    {
      if(counter == 9)
      {
        counter = -1;
      }
      counter++;
      Serial.println(counter);
      changeNumber(counter);
      delay(300);
    }
    else
    {
        Serial.println("OFF");
    }
   delay(50);
  }


  if (buttonDownState != lastButtonDownState) 
  {
    if (buttonDownState == HIGH) 
    {
      if(counter == 0)
      {
        counter = 10;
      }
      counter--;
      Serial.println(counter);
      changeNumber(counter);
      delay(300);
    }
    else
    {
        Serial.println("OFF");
    }
   delay(50);
  }
  changeNumber(counter);
}


void changeNumber(int buttonPress)
{
  switch (buttonPress)
  {
    case 0:
      digitalWrite(A,HIGH);
      digitalWrite(B, HIGH);
      digitalWrite(C, HIGH);
      digitalWrite(D, HIGH);
      digitalWrite(E, HIGH);
      digitalWrite(F, HIGH);
      digitalWrite(G, LOW);
      break;
    
    case 1:
      digitalWrite(A, LOW);
      digitalWrite(B, HIGH);
      digitalWrite(C, HIGH);
      digitalWrite(D, LOW);
      digitalWrite(E, LOW);
      digitalWrite(F, LOW);
      digitalWrite(G, LOW);
      break;
    
    case 2:
      digitalWrite(A, HIGH);
      digitalWrite(B, HIGH);
      digitalWrite(C, LOW);
      digitalWrite(D, HIGH);
      digitalWrite(E, HIGH);
      digitalWrite(F, LOW);
      digitalWrite(G, HIGH);
      break;
    
    case 3:
     digitalWrite(A, HIGH);
      digitalWrite(B, HIGH);
      digitalWrite(C, HIGH);
      digitalWrite(D, HIGH);
      digitalWrite(E, LOW);
      digitalWrite(F, LOW);
      digitalWrite(G, HIGH);
    break;
    case 4:
      digitalWrite(A, LOW);
      digitalWrite(B, HIGH);
      digitalWrite(C, HIGH);
      digitalWrite(D, LOW);
      digitalWrite(E, LOW);
      digitalWrite(F, HIGH);
      digitalWrite(G, HIGH);
      break;
    
    case 5:
      digitalWrite(A, HIGH);
      digitalWrite(B, LOW);
      digitalWrite(C, HIGH);
      digitalWrite(D, HIGH);
      digitalWrite(E, LOW);
      digitalWrite(F, HIGH);
      digitalWrite(G, HIGH);
      break;
    
    case 6:
      digitalWrite(A, HIGH);
      digitalWrite(B, LOW);
      digitalWrite(C, HIGH);
      digitalWrite(D, HIGH);
      digitalWrite(E, HIGH);
      digitalWrite(F, HIGH);
      digitalWrite(G, HIGH);
      break;
    
    case 7:
      digitalWrite(A, HIGH);
      digitalWrite(B, HIGH);
      digitalWrite(C, HIGH);
      digitalWrite(D, LOW);
      digitalWrite(E, LOW);
      digitalWrite(F, LOW);
      digitalWrite(G, LOW);
      break;
    
    case 8:
      digitalWrite(A, HIGH);
      digitalWrite(B, HIGH);
      digitalWrite(C, HIGH);
      digitalWrite(D, HIGH);
      digitalWrite(E, HIGH);
      digitalWrite(F, HIGH);
      digitalWrite(G, HIGH);
      break;
    
    case 9:
      digitalWrite(A, HIGH);
      digitalWrite(B, HIGH);
      digitalWrite(C, HIGH);
      digitalWrite(D, HIGH);
      digitalWrite(E, LOW);
      digitalWrite(F, HIGH);
      digitalWrite(G, HIGH);
      break;
  }

}
-Setelah selsai lalu hubungkan ke laptop/pc 
-Selesai,silahkan mencoba.


V.HASIL KERJA






VI.KESELAMATAN KERJA

-Memakai wearpack
-Menaati aturan lab
-Menggunakan alat sesuai fungsi


VII.KESIMPULAN
 
   Dalam praktek ini kita belajar untuk membuat program seven segment counter up dan down dengan dua tombol pushbutton.Kesulitan saya saat praktek adalah ketika membuat program saat membuat angka di seven segment kadang ada yang kebalik-kebalik.



Mengetahui



 
                                                                              klaten 25 Januari 2017 

Pembimbing                                                          Penulis




(Y.Prasetya Adi Nugroho)                             (Aditya Hermawan)










 


Tidak ada komentar:

Posting Komentar