Tugas Pendahuluan 1 uP uC Modul 1
TUGAS PENDAHULUAN 1 (MODUL I GENERAL INPUT DAN OUTPUT)
1. Prosedur [Kembali]
- Rangkailah seperti rangkaian berikut
- Buka Arduino IDE dan masukan listing program Upload program ke arduino
- Variasikan tombol yang ditekan dan amati keluarannya pada Dotmatriks
2. Hardware dan Diagram Blok [Kembali]
Prinsip kerja dari rangkaian ini adalah, ketika Arduino menerima inputan sinyal digital dari Dipswitch dan sesuai dengan program, maka Arduino akan menangkapnya sebagai sebuah instruksi, yang mana akan meneruskan ke Dotmatriks. Lalu akan ditampilkan berupa huruf yang sesuai dengan kode yang dibuat.
Di sini Dotmatriks berfungsi sebagai penampil dari output kode dari Arduino, sehingga nanti akan muncul huruf d,T,E pada Dotmatriks.
4. Flowchart dan Listing Program [Kembali]
Flowchart
Listing Program
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#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() { | |
// Menghitung jumlah switch yang aktif | |
int activeSwitches = 0; | |
for (int i = 0; i < 8; i++) { | |
if (digitalRead(DIP_Pins[i]) == LOW) { | |
activeSwitches++; | |
} | |
} | |
// Menampilkan huruf "D" jika 3 switch aktif | |
if (activeSwitches == 3) { | |
patterns[0] = B00000000; | |
patterns[1] = B00000011; | |
patterns[2] = B00011110; | |
patterns[3] = B00101010; | |
patterns[4] = B00101011; | |
patterns[5] = B11101010; | |
patterns[6] = B10101010; | |
patterns[7] = B11101011; | |
} | |
else { | |
// Menampilkan pola default jika tidak ada 3, 5, atau 7 switch yang aktif | |
for (int i = 0; i < 8; i++) { | |
patterns[i] = 0; | |
} | |
} | |
// 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. Video Demo [Kembali]
Saat Praktikum
6. Kondisi [Kembali]
Ketika 3 switch aktif dot matrix akan menampilkan huruf d,T,E
7. Video Simulasi [Kembali]
8. Link Download [Kembali]
Download HTML [Klik di sini]
Download file rangkaian [Klik di sini]
Download video rangkaian [Klik di sini]
Download program Arduino [Klik di sini]
Download datasheet Arduino [Klik di sini]
Komentar
Posting Komentar