LAPORAN AKHIR MODUL 1 PERCOBAAN 3
Modul 1 General Input dan Output
- Buatlah rangkaian sesuai dengan kondisi yang telah dipilih
- Buat Program pada software Arduino IDE
- Masukkan program yang telah dibuat pada software Arduino IDE sebagai library Arduino
- Jalankan rangkaian, sesuai dengan kondisi yang diinginkan
- Lihat output pada Dot Matrrix
a. Hardware
b. Diagram Blok
a. Rangkaian Simulasi
Pada percobaan 3, kita menggunakan Dip Switch sebagai input dan Dot Matrix 8x8 sebagai outputnya. Pada rangkaian kali ini, kaki 9-16 Dip Switch terhubung lansung dengan ground dimana kondisi ini disebut normally closed (kondisi default nya terhubung ke ground). Pada percobaan kali ini dipswitch dipasang secara pull up (dalam kondisi default sudah aktif). Selanjutnya kita juga menggunakan driver IC MAX7219 untuk mengontrol display Dot Matrix 8x8. Kaki ISET dan DOUT menuju ke VCC dan GND pada Arduino dan tiga pin lainnya, DIN, CLK, dan LOAD menuju ke pin digital Arduino. Selanjutnya kaki 1 dan 2 Dip Switch terhubung dengan kaki 12 dan 13 arduino dan kaki 3-8 Dip Switch terhubung dengan kaki A0-A5 arduino.
Untuk skematik isi dot marix dapat dilihat pada gambar dibawah
Pada percobaan 3 ini, untuk mengatur berapa buah led dot matrix yang aktif, kita dapat meninputkan program pada arduino ide
patterns[i] = B11111111
Dimana pada program diatas, semua led pada dot matrix akan aktif pada 1 baris yang sama. Sesuai dengan program yang telah diinputkan pada arduino, jika kita mengaktifkan 1 buah dipswitch maka yang akan aktif hanya satu baris led dotmatrix saja, jika kita mengaktifkan 3 buah dipswitch maka yang akan aktif 3 baris led dotmatrix, begitu seterusnya. Output yang akan tampil pada dot matrix tergantung dengan kondisi yang kita berikan pada dipswitch.
a. Flowchart
b. 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}; // Pola LED untuk ditampilkan
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 dan mengupdate pola LED
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
}
Dot Matrix akan menampilkan kondisi yang berbeda-beda sesuai dengan inputan yang diberikan pada Dip Switch dan sesuai dengan logika yang sudah dimasukkan dalam listing program.
Download HTML klik disini
Download Program Arduino klik disini
Download Video Demo klik disini
Download Gambar Hardware klik disini
Download Gambar Simulasi klik disini
Download Datasheet Dot Matrix klik disini
Komentar
Posting Komentar