Kamis, 02 Februari 2017

         MEMBUAT RANGKAIAN SEVEN SEGMENT DENGAN PROGRAM
 COUNTER UP DAN COUNTER DOWN
I. TUJUAN
1. Siswa mampu mempelajari dan memahami seven segment.
2. Siswa mampu membuat rangkaian rangkaian dan program dan programmnya dengan Arduino.
3. siswa dapat membuat program counter up dan counter down

II. DESKRIPSI TUGAS
Membuat rangkaian seven segment pada protoboard dan membuat program tersebut dengan software Arduino.

III. ALAT DAN BAHAN
     1. PC
     2. Software Arduino IDE 1.6.12
     3. Resistor 330  Ohm dan 10kOhm
     4. Protoboard
     5. 2 Push Button
     6. Kabel Jumper
     7. Seven Segment

IV. HASIL KERJA
   Langkah Kerja :

 1. Membuka aplikasi Arduino IDE
 2. Membuat Rangkaian Seven Segment pada protobot sesuai gambar berikut.
                          

 3. Tulis program di bawah ini pada software Arduino IDE .

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(1000);
    }
    else
    {
        Serial.println("OFF");
    }
   delay(1000);
  }


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


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

}

V. HASIL KERJA




VI. KESELAMATAN KERJA :
  1. Menggunakan atribut dengan lengkap.
  2. Tidak boleh membawa makanan dan minuman ke Lab Komputer.
  3. Tidak bercanda saat kegiatan praktek berlangsung.
  4. Mematuhi peraturan bengkel dengan baik.
  5. Menjaga kebersihan bengkel 

VII. KESIMPULAN
Dari praktek kali ini, siswa diajari untuk membuat rangkaian seven segment pada protoboard,dengan menggunakan 2 push button, untuk counter up dan counter down dan juga membuat programnya pada Arduino.

Demikianlah laporan ini saya susun semoga dapat bermanfaat. Terima kasih.

                                                                                                   Klaten, 2 February 2017
    Guru Pembimbing                                                                         Peserta Didik




( Y. Prasetya Adi N, ST)                                                        ( Heribertus Wahyu. Pras Aji)





Tidak ada komentar:

Posting Komentar