Jumat, 01 Maret 2024

Laporan Akhir 2



Percobaan 5
LED dan Switch

1. Prosedur [Kembali]

  • Rangkai semua komponen 
  • Buat program di aplikasi arduino IDE
  • Setelah selesai masukkan program ke arduino 
  • Jalankan program pada simulasi dan cobakan dengan modul

  • Hardware
 
  • Diagram Blok


  • Rangkaian Simulasi

 
  • Prinsip Kerja
Pada percobaan 5, komponen utama dari rangkaiannya adalah dipswitch dan 7-segment 2 digit. Dipswitch digunakan sebagai input, sementara 7-segment 2 digit digunakan sebagai output.
 
Dipswitch pada rangkaian ini dihubungkan dalam jenis bentuk rangkaian pull down yang akan berlogika 1 (aktif) apabila dipswitch on (terhubung). Sinyal input ini kemudian masuk ke mikontroler yang digunakan, yaitu arduino uno. Kemudian, sinyal diteruskan ke 7-segment 2 digit yang akan menampilkan angka sesuai dengan instruksi program pada mikrokontroler.


  • Flowchart
 
  • Listing Program 

#define a 6

#define b 7

#define c 8

#define d 9

#define e 10

#define f 11

#define g 12

#define dp 13

#define D1 4

#define D2 5

#define Dsw A2

 

// 1 = 36

// 2 = 33

// 3 = 26

// 4 = 21

 

int segments[] = {a,b,c,d,e,f,g};

 

byte digitPatterns[10][7] = { 

  {0, 0, 0, 0, 0, 0, 1}, // 0

  {1, 0, 0, 1, 1, 1, 1}, // 1

  {0, 0, 1, 0, 0, 1, 0}, // 2

  {0, 0, 0, 0, 1, 1, 0}, // 3

  {1, 0, 0, 1, 1, 0, 0}, // 4

  {0, 1, 0, 0, 1, 0, 0}, // 5

  {0, 1, 0, 0, 0, 0, 0}, // 6

  {0, 0, 0, 1, 1, 1, 1}, // 7

  {0, 0, 0, 0, 0, 0, 0}, // 8

  {0, 0, 0, 0, 1, 0, 0}  // 9

};

 

 

void setup() {

  // put your setup code here, to run once:

  

   for (int i = 0; i < 8; i++) {

    pinMode(segments[i], OUTPUT);

  }

  pinMode(dp,OUTPUT);

  pinMode(D1,OUTPUT);

  pinMode(D2,OUTPUT);

  pinMode(Dsw,INPUT_PULLUP);

  Serial.begin(9600);

 

}

void number (int display) {

  if (display  >= 0 && display <= 9) {

    for (int i = 0; i < 7; i++) {

      digitalWrite(segments[i], digitPatterns[display ][i]);

    }

  }

}

 

void loop() {

 

  int sw = analogRead(Dsw);

  Serial.print("ADC Value = ");

  Serial.println(sw);

  delay(100);

 

 

  if(sw == 36){

digitalWrite(D1,LOW);

digitalWrite(D2,HIGH);

number(1);

delay(50);

digitalWrite(D1,HIGH);

digitalWrite(D2,LOW);

number(0);

delay(50);

  }

else if(sw == 33){

digitalWrite(D1,LOW);

digitalWrite(D2,HIGH);

number(0);

delay(1000);

digitalWrite(D1,HIGH);

digitalWrite(D2,LOW);

number(1);

delay(1000);

  }else if(sw == 26){

digitalWrite(D1,HIGH);

digitalWrite(D2,LOW);

number(0);

delay(1000);

number(1);

delay(1000);

number(2);

delay(1000);

number(3);

delay(1000);

number(4);

delay(1000);

number(5);

delay(1000);

number(6);

delay(1000);

number(7);

delay(1000);

number(8);

delay(1000);

number(9);

delay(1000);

  }else if(sw == 21){

digitalWrite(D1,HIGH);

digitalWrite(D2,HIGH);

number(0);

delay(1000);

number(1);

delay(1000);

number(2);

delay(1000);

number(3);

delay(1000);

number(4);

delay(1000);

number(5);

delay(1000);

number(6);

delay(1000);

number(7);

delay(1000);

number(8);

delay(1000);

number(9);

delay(1000);

  }

}


6. Kondisi [Kembali]

Masing-masing switch LED menghasilkan tampilan yang berbeda-beda sesuai logika yang diatur pada listing program.


7. Download File [Kembali]

HTML klik disini

Gambar Hardware  klik disini

Gambar Simulasi  klik disini

Video Demo  klik disini

Listring Program  klik disini

Tidak ada komentar:

Posting Komentar

Entri yang Diunggulkan

Modul 4

[KEMBALI KE MENU SEBELUMNYA] DAFTAR ISI 1. Tujuan Perancangan 2. Komponen 3. Dasar Teori 4. Listing Program 5. Flowchart...