TP Percobaan 3 Kondisi 1




1. Prosedur
[Kembali]
  1. + Rangkai semua komponen 
  2. + buat program di aplikasi arduino IDE
  3. + setelah selesai masukkan program ke arduino 
  4. + jalankan program pada simulasi dan cobakan dengan modul
2. Hardware dan Diagram Blok [Kembali]
A. Hardware
    1. Arduino UNO
Arduino Uno di proteus

Arduino uno secara nyata



    2. DIP Switch




    3. DOT Matrix





    4. Power Supply



    5. Resistor


    6. Ground


    7. MAX7219



B. Diagram Blok




3. Rangkaian Simulasi dan Prinsip kerja [Kembali]

A. Rangkaian Simulasi





B. Prinsip Kerja

    Pada percobaan 3 Kondisi 1 diminta untuk ketika 1 switch aktif dot matrix akan menampilkan huruf            L,E,I. DIP Switch dihubungkan pada kaki A0 - A5, 12, 13 Arduino. Kemudian MAX7219 dihubungkan     pada kaki 2 - 4 Arduino. MAX7219 terhubung pada DOT Matriks.

* DOT Matriks merupakan sekumpulan LED yang dihubungkan

* Apabila 1 switch saja yang aktif maka dot matriks akan menampilkan hurup L,E,I secara bergantian, dengan waktu tampil masing masing 1 detik. Apabila switch yang aktif lebih atau kurang dari 3 maka dot matriksnya tidak akan menyala.

* Dapat dilihat pada program untuk mengatur bagian mana dari dot matriks yang menyala maka di program diberi kode 1, dan yang d matikan diberi kode 0, kita dapat menyesuaikan pola untuk bagian mana saja yang menyala pada program arduino.


4. Flowchart dan Listing Program[Kembali]
a. Flowchart




b. Listing program

#include <LedControl.h> 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 patternL[] = { B11000000, B11000000, B11000000, B11000000, B11000000, B11000000, B11111111, B11111111}; // Pola untuk huruf L byte patternE[] = { B11111111, B11000000, B11000000, B11111111, B11111111, B11000000, B11000000, B11111111}; // Pola untuk huruf E byte patternI[] = { B11111111, B11111111, B00011000, B00011000, B00011000, B00011000, B11111111, B11111111}; // Pola untuk huruf I 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() { int activeSwitchCount = 0; // Menghitung jumlah DIP switch yang aktif // Membaca status DIP switch for (int i = 0; i < 8; i++) { if (digitalRead(DIP_Pins[i]) == LOW) { activeSwitchCount++; // Menambah jumlah DIP switch yang aktif } } // Menampilkan pola LED pada dot matrix jika hanya satu DIP switch yang aktif if (activeSwitchCount == 1) { displayNumber(patternL); // Menampilkan huruf L pada dot matrix delay(1000); // Delay agar huruf L ditampilkan selama 1 detik displayNumber(patternE); // Menampilkan huruf E pada dot matrix delay(1000); // Delay agar huruf E ditampilkan selama 1 detik displayNumber(patternI); // Menampilkan huruf I pada dot matrix delay(1000); // Delay agar huruf I ditampilkan selama 1 detik } else { lc.clearDisplay(0); // Membersihkan dot matrix jika tidak ada atau lebih dari satu DIP switch yang aktif } } // Fungsi untuk menampilkan pola pada dot matrix void displayNumber(byte pattern[]) { for (int row = 0; row < 8; row++) { lc.setRow(0, row, pattern[row]); } }

5. Kondisi [Kembali]
    Percobaan 3 kondisi 1 :
    Ketika 1 switch aktif dot matrix akan menampilkan huruf L,E,I

6. Video Simulasi [Kembali]






7. Download File [Kembali]

* File Rangkaian {Klik}
* Video Simulasi {Klik}
* Program Arduino {Klik}
* HTML {Klik}







Tidak ada komentar:

Posting Komentar