Tugas Pendahuluan 1 M1




Tugas Pendahuluan 1 Modul 1
(Percobaan 3 Kondisi 2)

1. Prosedur
[Kembali]

1. Rangkai rangkaian di proteus sesuai dengan kondisi percobaan.
2. Tulis program untuk arduino di software Arduino IDE.
3. Compile program tadi, lalu upload ke dalam arduino.
4. Setelah program selesai di upload, jalankan simulasi rangkaian pada proteus.
5. Selesai.

2. Hardware dan Diagram Blok [Kembali]

Hardware :

a) Arduino Uno



2. Dip Switch












3. Max7219







4. Power Supply




5. Dot Matrix



Diagram Blok  :




3. Rangkaian Simulasi dan Prinsip Kerja [Kembali]

Rangkaian Simulasi Sebelum dirunning:





Rangkaian Simulasi Setelah dirunning:










Prinsip Kerja : 
    Rangkaian di atas adalah penggunaan dip switch untuk mengontrol tampilan dot matrix melalui codingan pada arduino uno. Pertama-tama, pin DIP switch diatur sebagai input dengan resistor pull-up , yang mana input yang terbaca pada arduino akan berlogika 1 jika switch dari dipswitch tersebut berlogika 1 juga. Selanjutnya, program menentukan pola LED di dot matrix yang akan ditampilkan untuk masing-masing simbol, seperti angka 2, huruf k, dan angka 3, dengan mendefinisikan array byte untuk setiap pola.
    Status dari DIP switch terus dipantau. Jumlah saklar yang aktif dihitung untuk menentukan tindakan selanjutnya. Jika dua saklar pada dipswitch diaktifkan, program akan menampilkan kombinasi "2 k 3" dengan menampilkan simbol-simbol secara berurutan setelah jeda waktu tertentu. Setiap simbol direpresentasikan oleh pola LED yang sudah ditentukan sebelumnya. Setelah menampilkan kombinasi, program memberikan jeda untuk menampilkan LED Dot Matrix dengan stabil sebelum kembali ke loop utama. Jika tidak ada kombinasi yang terpenuhi (banyak jumlah saklar yang aktif bukan 2 saklar), tampilan pada LED Dot Matrix akan dimatikan.

4. Flowchart dan Listing Program [Kembali]

Flowchart :


Listing Program :

#include <LedControl.h> // Library untuk LED Dot Matrix

const int DIP_Pins[] = {13, 12, A0, A1, A2, A3, A4, A5}; // Pin DIP switch terhubung ke Arduino
LedControl lc = LedControl(2, 3, 4, 1); // Pin DIN, CLK, LOAD (CS), dan jumlah Dot Matrix yang dihubungkan ke Arduino

byte patterns[8] = {0, 0, 0, 0, 0, 0, 0, 0};

byte pattern_2[] = {
  B00000000,
  B00011000,
  B00100100,
  B00000100,
  B00001000,
  B00010000,
  B00111100,
  B00000000
}; // Pola LED untuk angka "2"

byte pattern_k[] = {
  B00000000,
  B00100100,
  B00101000,
  B00110000,
  B00110000,
  B00101000,
  B00100100,
  B00000000
}; // Pola LED untuk huruf "k"

byte pattern_3[] = {
  B00000000,
  B00111100,
  B00000010,
  B00000100,
  B00011000,
  B00000100,
  B00000010,
  B00111100
}; // Pola LED untuk angka "3"

void setup() {
  for (int i = 0; i < 8; i++) {
    pinMode(DIP_Pins[i], INPUT_PULLUP); // Mengatur pin DIP switch sebagai input dengan pull-up resistor
  }
  lc.shutdown(0, false); // Mengaktifkan display
  lc.setIntensity(0, 8); // Mengatur kecerahan LED (nilai antara 0 dan 15)
  lc.clearDisplay(0); // Membersihkan tampilan dot matrix
}

void loop() {
  // Membaca status DIP switch
  bool switch_1 = digitalRead(DIP_Pins[0]) == LOW;
  bool switch_2 = digitalRead(DIP_Pins[1]) == LOW;
   

  int activeSwitches = 0; // Jumlah saklar yang aktif
    for (int i = 0; i < 8; i++) {
        if (digitalRead(DIP_Pins[i]) == LOW) {
            activeSwitches++; // Menghitung jumlah saklar yang aktif
        }
    }
  // Menampilkan kombinasi "2 k 3" jika dua switch diaktifkan
  if (activeSwitches == 2) {
    // Menampilkan angka "2"
    for (int row = 0; row < 8; row++) {
      lc.setRow(0, row, pattern_2[row]);
    }
    delay(1000); // Delay sebelum menampilkan huruf "k"
   
    // Menampilkan huruf "k"
    for (int row = 0; row < 8; row++) {
      lc.setRow(0, row, pattern_k[row]);
    }
    delay(1000); // Delay sebelum menampilkan angka "3"
   
    // Menampilkan angka "3"
    for (int row = 0; row < 8; row++) {
      lc.setRow(0, row, pattern_3[row]);
    }
    delay(1000); // Delay untuk tampilan LED stabil
  } else {
    // Matikan tampilan dot matrix jika kedua saklar tidak aktif
    lc.clearDisplay(0);
  }
}

5. Kondisi [Kembali]

Percobaan 3 Kondisi 2
Ketika 2 switch diaktifkan maka akan menampilkan kombinasi 2, k ,3.

6. Video Simulasi [Kembali]






7. Download File [Kembali]

HTML Download
File Rangkaian Download
Video Percobaan Download
Listing Program Download
Datasheet Arduino Download
Datasheet Dip Switch Download
Datasheet MAX7219 Download
Datasheet Dot Matrix Download









Tidak ada komentar:

Posting Komentar

                                                                 BAHAN PRESENTASI UNTUK MATAKULIAH                                          ...