Kamis, 26 Januari 2017

SEVEN SEGMENT COUNTER UP DAN DOWN DENGAN PUSH BUTTON




SEVEN SEGMENT COUNTER UP DAN COUNTER DOWN DENGAN PUSH BUTTON MENGGUNAKAN ARDUINO UNO




I. TUJUAN
    1. Siswa dapat mengerti datasheet dari seven segment
    2. Siswa dapat merangkai rangkaian menggunakan 1 seven segment dan 2 push button
    3. Siswa dapat memprogram dengan menggunakan software arduino dan program yang diinginkan  dapat berjalan
    4. Siswa dapat mempelajari lebih banyak tentang pemrograman menggunakan software arduino dengan seven segment

II. ALAT DAN BAHAN
    1. PC / komputer
    2. 1 Buah Seven Segmen (Common Anode)

Image result for seven segment

    3. 2 Buah Push Button

    4. 3 Buah Resistor 220Ω (Ohm) “untuk resistor di push button, dapat up to 1KΩ (Ohm)”
Image result for resistor 220 ohm
    5. Kabel Jumper 

    6. 1 Buah Protoboard

 Image result for protoboard
    7. 1 Buah Arduino


    8. Software arduino UNO




Image result for software arduino 


    9. Kabel USB arduino uno
Image result for usb arduino uno

III. DESKRIPSI TUGAS
         Siswa membuat rangkaian menggunakan 2 push button dan 1 seven segment dengan ketentuan push button pertama ditekan maka seven segment counter up 0 - 9, dan ketika push button kedua ditekan maka seven segment akan counter down 9-0.

IV. LANGKAH KERJA
     1. Nyalakan PC / komputer
     2. Siapkan alat dan bahan yang diperlukan untuk merangkai rangkaian di protoboard
     3. Rangkai rangkaian pada protoboard dan board arduino UNO, seperti pada rangkaian dibawah ini :



     4.  Buka software Arduino UNO
     5. Buat program pada software arduino
     6. Jika sudah selesai membuat program, tekan verify program

     
     7. Jika verify program sudah selesai dan tidak ada kesalahan pada program maka pada bagian bawah akan muncul tulisan "done compilling"
     



      8. Program sudah selesai dan tidak ada kesalahan pada program yang sudah dibuat, maka langkah selanjutnya adalah hubungkan arduino dan computer dengan menngunakan USB.
      9. Setelah arduino dan computer sudah terhubung, maka setelah itu atur port pada aplikasi arduino sesuai dengan nama USB yang terpasang



     10. Upload program, jika proses upload sudah selesai maka pada bagian bawah akan muncul tulisan done uploading dan program akan mulai berjalan.



V. HASIL KERJA
    A. Program 
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 = 0;
      }
      counter++;
      Serial.println(counter);
      changeNumber(counter);
      delay(300);
    }
    else
    {
        Serial.println("OFF");
    }
   delay(50);
  }


  if (buttonDownState != lastButtonDownState)
  {
    if (buttonDownState == HIGH)
    {
      if(counter == 0)
      {
        counter = 9;
      }
      counter--;
      Serial.println(counter);
      changeNumber(counter);
      delay(300);
    }
    else
    {
        Serial.println("OFF");
    }
   delay(50);
  }
  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, HIGH);
      digitalWrite(B, LOW);
      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, HIGH);
      digitalWrite(B, LOW);
      digitalWrite(C, LOW);
      digitalWrite(D, HIGH);
      digitalWrite(E, HIGH);
      digitalWrite(F, LOW);
      digitalWrite(G, LOW);
      break;
    //number 5
    case 5:
      digitalWrite(A, LOW);
      digitalWrite(B, HIGH);
      digitalWrite(C, LOW);
      digitalWrite(D, LOW);
      digitalWrite(E, HIGH);
      digitalWrite(F, LOW);
      digitalWrite(G, LOW);
      break;
    //number 6
    case 6:
      digitalWrite(A, LOW);
      digitalWrite(B, HIGH);
      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;
  }
}


     B. Skematik


 
VI. KESELAMATAN KERJA
    1.  Mengenakan workpack saat sedang praktik
    2. Menggunakan computer dengan semestinya sesuai dengan materi praktek
    3.  Tidak membawa makanan  ataupun minuman ke ruangan praktek
    4. Serius saat praktek
    5. Mematikan computer saat sudah tidak dipakai / sudah selesai praktek
    6. Merapikan kursi dan apapun yang digunakan untuk praktek setelah selesai praktek
    7. Membersihkan ruangan praktek saat sudah selesai praktek

VII. KESIMPULAN

            Praktek kali ini tentang memprograman seven segment dengan counter up dan counter down, awalnya agak membingungkan karena ini masuk dalam materi baru, namun lama kelamaan menjadi lebih megerti dan akhirnya dapat menyelesaikan tugas yang telah diberikan. Semoga pada praktek – praktek selanjutnya saya menjadi lebih paham lagi tentang pemrograman seven segment with arduino.

                                                                                                Klaten, 27 Januari 2017
            Guru Pembimbing 1                                                    Siswa



            Y. Prasetya Adi N, S.Pd.                                            Birgita Ayu Y P

                                                Guru Pembimbing 2



                                                     F. Nanda