Percobaan1 Push Button dan LED
1. Rangkai semua komponen sesuai kondisi yang dipilih
2. buat program di aplikasi arduino IDE
3. setelah selesai masukkan program ke arduino di proteus
4. jalankan program pada simulasi dan cobakan sesuai dengan modul dan kondisi
5. Selesai
2. Hardware dan diagram blok
[Kembali]
1. Arduino Uno
2. SW-SPDT
3. LED
4. Resistor
Diagram Blok :
3. Rangkaian Simulasi dan Prinsip kerja
[Kembali]
→ Gambar Rangkaian Sebelum Disimulasikan
→ Gambar Rangkaian Setelah Disimulasikan
PRINSIP KERJA
Saat program dijalankan dan di masukan ke arduino, pesan "Masukkan password:" ditampilkan di LCD. Selanjutnya, program terus berjalan dalam loop utama, menunggu input dari pengguna. Jika ada input dari keypad dan password belum dimasukkan, karakter tersebut ditampilkan di LCD, memungkinkan pengguna memasukkan karakter password satu per satu. Ketika sensor sentuh terdeteksi dan password belum dimasukkan, pesan di LCD dihapus dan diganti dengan "Password:", menandakan dimulainya proses memasukkan password. Selanjutnya, program memasuki loop untuk membaca input dari keypad dan menampilkannya di LCD. Proses ini berlanjut hingga tombol "#" ditekan, menandakan bahwa pengguna telah selesai memasukkan password. Setelah itu, program kembali ke awal, siap untuk memulai proses memasukkan password lagi jika diperlukan. Saat disimulasikan di Proteus, prinsip kerja akan sama dengan di dunia nyata, di mana pengguna akan melihat pesan dan interaksi yang sama pada layar LCD dan keypad.
4. FlowChart [Kembali]
const int ledPins[] = {2, 3, 4, 5, 6, 7, 8, 9};
#define BUTTON_1 A0
#define BUTTON_2 A1
#define BUTTON_3 A2
#define BUTTON_4 A3
#define BUTTON_5 A4
#define BUTTON_6 A5
#define BUTTON_7 12
#define BUTTON_8 13
void setup()
{
Serial.begin(9600);
pinMode(BUTTON_1, INPUT);
pinMode(BUTTON_2, INPUT);
pinMode(BUTTON_3, INPUT);
pinMode(BUTTON_4, INPUT);
pinMode(BUTTON_5, INPUT);
pinMode(BUTTON_6, INPUT);
pinMode(BUTTON_7, INPUT);
pinMode(BUTTON_8, INPUT);
for (int i = 0; i < 8; i++)
{
pinMode(ledPins[i], OUTPUT);
}
}
void loop()
{
int button7 = digitalRead(BUTTON_7);
int button8 = digitalRead(BUTTON_8);
int button6 = digitalRead(BUTTON_6);
int button5 = digitalRead(BUTTON_5);
int button4 = digitalRead(BUTTON_4);
int button3 = digitalRead(BUTTON_3);
int button2 = digitalRead(BUTTON_2);
int button1 = digitalRead(BUTTON_1);
// Matikan semua LED terlebih dahulu
for (int i = 0; i < 8; i++)
{
digitalWrite(ledPins[i], LOW);
}
// Hidupkan LED sesuai dengan tombol yang ditekan
if (button1 == HIGH && button2 == HIGH && button3 == HIGH) { // Jika 3 tombol pertama ditekan
digitalWrite(ledPins[0], HIGH);
digitalWrite(ledPins[1], HIGH);
digitalWrite(ledPins[2], HIGH);
} else if (button4 == HIGH && button5 == HIGH && button6 == HIGH) { // Jika tombol 4, 5, dan 6 ditekan
for (int i = 0; i < 7; i++) { // LED running dengan 6 LED
digitalWrite(ledPins[i], HIGH);
delay(100); // delay untuk efek bergerak
digitalWrite(ledPins[i], LOW); // matikan LED sebelum pindah ke LED berikutnya
}
} else if (button7 == HIGH && button8 == HIGH) { // Jika 2 tombol terakhir ditekan
for (int i = 0; i < 6; i++) { // LED running dengan 6 LED
digitalWrite(ledPins[i+1], HIGH); // LED bergerak ke kanan
delay(100); // delay untuk efek bergerak
digitalWrite(ledPins[i], LOW); // matikan LED sebelum pindah ke LED berikutnya
}
}
}
b. Flowchart
5. Kondisi [Kembali]Kondisi : Percobaan 1 Kondisi 6
6. Video Simulasi [Kembali]
7. Download File
[Kembali]
Download Simulasi Rangkaian Klik disini
Download HTML Klik disini
Download Video Simulasi Klik disini
Download Listing Code Klik disini
Download Listing Code Klik disini
Download Datasheet ARDUINO UNO klik disini
Download Datasheet LED Klik disini
Download Datasheet SW - SPDT Klik Disini
Donwload Datasheet Resistor Klik Disini
Tidak ada komentar:
Posting Komentar