Rabu, 08 Februari 2017

counter up dan counter down menggunakan seven segment display 1 digit dengan push button

LAPORAN MEKATRONIKA
MICROCONTROLER

LEMBAGA PENDIDIKAN KEJURUAN TEKNIK
SMK LEONARDO KLATEN
JL.Wahidin Sudirohusodo 30 klaten
Kotak pos117

counter up dan counter down



I. TUJUAN
  1. Siswa dapat mengerti tentang counter up dan counter down
  2. Siswa dapat membuat program counter up dan counter down  dengan baik
  3. Supaya siswa dapat membuat rangkaian counter up dan counter up menggunakan Seven Segment dan Push button
II. ALAT DAN BAHAN
  1. PC
  2. Arduino IDE
  3. Seven Segment
  4. Resistor 10k
  5. 2 Push Button
  6. Kabel Jumper
  7. Protoboard
  8. Kabel USB
III. DESKRIPSI TUGAS
  1. Membuat rangkaian counter up dan counter down menggunakan Seven-Segment
  2. Target minimal ,Seven Segment dapat berjalan secara counter up dan counter down dengan batas 0-9, Untuk counter up: jika pada seven segment sudah menunjukan angka 9 ,maka push button ditekan selanjutnya seven segment tetap menunjukan angka 9. Untuk counter down: jika pada seven segment sudah menunjukan angka 0, maka input push button yang ditekan selanjutnya seven segment tetap menunjukan angka 0. 
IV. LANGKAH KERJA


  1. Siapkan alat dan bahan yang akan dibuat untuk membuat digital input
  2. Buka aplikasi Arduino
  3. Buatlah program mengenai counter up dan counter down di dalam aplikasi Arduino 
  4. Cek program menggunakan "Verify"
  5. Memasukkan program ke dalam Arduino UNO dengan menggunakan "Upload" disampint simbol verify 
  6. Setelah itu rangkailah rangkaian counter up dan counter down dengan seven segment ke dalam Arduino IDE

V. HASIL KERJA

  • Hasil kegiatan praktek
                  Gambar rangkaian pcb counter up dan counter down






                  Video seven segment counter up dan counter down



  • Hasil 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 btn1=13;
int btn2=12;
int counter=0;
int buttonBUS=0;
int lastBUS=0;
int buttonBDS=0;
int lastBDS=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() 
{
  BUS=digitalRead(btn1);
  BDS=digitalRead(btn2);

  if(BUS!=lastBUS) 
  {
    if(BUS==HIGH) 
    {
      if(counter==9)
      {
        counter=-1;
      }
      counter++;
      Serial.println(counter);
      changeNumber(counter);
      delay(300);
    }
    else
    {
        Serial.println("OFF");
    }
   delay(50);
  }
 if(BDS!=lastBDS) 
  {
    if(BDS==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)
  {
    //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;
  }
}


VI. KESELAMATAN KERJA
  1. Menggunakan Workpack 
  2. Menggunakan topi
  3. Menggunakan sepatu
  4. Fokus dan Teliti
  5. Tidak membawa makanan dan minuman kedalam ruangan praktek
  6. Mentaati semua peraturan yang telah dibuat sebelumnya
  7. Jangan letakan arduino pada besi agar tidak merusak ARDUINO pada saat anda memberi arus/ saat anda menancapkan port USB arduino pada PC/laptop
VII. KESIMPULAN
            Pada praktek kali ini kami kami membuat counter up dan counter down menggunakan seven segment yang diaktifkan dengan dua push button yang dapat mengaktifkan secara counting up dan counting down.



                                                                                           Klaten, 8 Februari 2017

  Guru Pembimbing                                                                  Peserta Didik





(Y.Prasetyo Adi N, ST)                                                        (Nicholas Aprilleo S W)



1 komentar:

  1. Borgata Hotel Casino & Spa - MapyRO
    Find your way around the 경기도 출장마사지 casino, find where everything 전라북도 출장마사지 is located with the MapyRO 전라남도 출장안마 Casino® mobile app. Find 대전광역 출장안마 addresses, compare customer reviews, see screenshots,  Rating: 8.4/10 · 삼척 출장안마 ‎1,083 votes · ‎Price range: $31-60

    BalasHapus