TP1 MODUL 1 UP UC


      [KEMBALI KE MENU SEBELUMNYA]  




Percobaan III

DIP Switch dan LED dot matrix

1. Prosedur  [back]

  • Rangkailah seperti rangkaian berikut
  • Buka Arduino IDE dan masukan listing program
  • Upload program ke arduino
  • aktifkan 3 switch dan amati keluarannya pada LED DOT MATRIKS

2. Foto Hardware dan diagram blok [back]

    1. Arduino Uno

    2. Dip Switch 8



    3. Dot Matrix


    4. MAX7219

    5. Power supply

    6. Ground


Diagram Blok:




3. Rangkaian Simulasi dan Prinsip Kerja  [back]


                                                    Gambar 1. Rangkaian Simulasi.

Prinsip Kerja:

    Pada rangkaian percobaan 3 kondisi 2 ini menggunakan Dip Switch dan LED dot matrix. Dip Switch yang berfungsi sebagai input dan Matrix berfungsi sebagai output. Dimana ketika ada dua buah switch on 1 (High) maka output pada Dot matriks akan menampilkan "2, k, 3". Dan ketika lebih/kurang dari dua switch yang on  1 (HIGH) maka outputnya akan menyalakan LCD Dot Matriks pada Matrix sesuai barisan urutan switchnya. 


4. Flowchart dan Listing Program  [back]

Flowchart:

FLOWCHARCT PERCOBAAN 3 KONDISI 2
  • Listing Program:
 // Menampilkan angka 2, k, dan 3 secara berurutan jika 2 saklar aktif
    if (activeSwitches == 2) {
        byte pattern1[] = { B00011000, B00100110, B00000110, B00001100, B00011000, B00110000, B11111111, B11111111 }; // Pola LED untuk angka 2
        byte patternK[] = { B11100000,B11110000,B11011000,B11011000,B11110000,B11100000,B00000000,B00000000}; // Pola LED untuk huruf k
        byte pattern3[] = { B00011110, B00100001, B00100001, B00100001, B00100001, B00011110, B00000000, B00000000 }; // Pola LED untuk angka 3
        
        // Menampilkan angka 2
        for (int i = 0; i < 8; i++) {
            lc.setRow(0, i, pattern1[i]);
            delay(100); // Delay untuk efek tampilan
        }
        // Menampilkan huruf k
        for (int i = 0; i < 8; i++) {
            lc.setRow(0, i, patternK[i]);
            delay(100); // Delay untuk efek tampilan
        }
        // Menampilkan angka 3
        for (int i = 0; i < 8; i++) {
            lc.setRow(0, i, pattern3[i]);
            delay(100); // Delay untuk efek tampilan
        }
    } else {
        // Menampilkan pola LED sesuai dengan status saklar DIP seperti sebelumnya
        for (int i = 0; i < 8; i++) {
            if (digitalRead(DIP_Pins[i]) == LOW) {
                patterns[i] = B11111111; // Mengatur semua LED menyala jika sakelar diaktifkan
            } else {
                patterns[i] = 0; // Mengatur semua LED mati jika sakelar tidak diaktifkan
            }
        }

        // Menampilkan pola LED pada dot matrix
        for (int row = 0; row < 8; row++) {
            lc.setRow(0, row, patterns[row]);
        }
    }

    delay(100); // Delay untuk tampilan LED stabil
}

5. Kondisi  [back]

    Ketika 2 switch aktif dot matrix akan menampilkan kombinasi 2,K,3

6. Video Simulasi  [back]





7. Download File  [back]

Komentar

Postingan populer dari blog ini