Laporan Akhir 1 uP dan uC Modul 1
Laporan Akhir 1 Modul 1
(Percobaan 1)
1. Rangkai komponen sesuai percobaan dan kondisi yang dipilih.
2. Buat program menggunakan Arduino IDE.
3. Compile program yang telah dibuat lalu Upload ke dalam Arduino Uno.
4. Uji coba program pada rangkaian percobaan sesuai dengan kondisi yang diinginkan.
5. Selesai
2. Hardware dan Diagram Blok [Kembali]
4. Rangkaian Simulasi dan Prinsip Kerja [Kembali]
Rangkaian Simulasi :
Prinsip Kerja :
Pada rangkaian ini, tombol terhubung ke pin A0-A3, 12, dan 13 Arduino sebagai input, sedangkan 8 LED terhubung ke pin 2-9 sebagai output. Saat tombol pertama (terhubung ke pin 13) ditekan, LED pertama aktif. Namun, ketika tombol kedua dan seterusnya ditekan, LED berikutnya tidak aktif karena program Arduino membaca input yang sama dengan kondisi awal, menyebabkan LED tidak berubah. LED pertama bisa aktif karena menerima logika LOW saat ditekan, sehingga menyebabkan perbedaan logika antara kondisi awal dan akhir sehingga LED pertama menyala.
Flowchart :
Listing Program :
// Mendefinisikan pin untuk LED
int led[] = {2, 3, 4, 5, 6, 7, 8, 9};
// Mendefinisikan pin untuk tombol dari A0 sampai A5, dan pin digital 12 dan 13
#define PB1 A0
#define PB2 A1
#define PB3 A2
#define PB4 A3
#define PB5 A4
#define PB6 A5
#define PB7 12
#define PB8 13
void setup()
{
// Memulai komunikasi serial
Serial.begin(9600);
// Mengatur pin tombol sebagai input
pinMode(PB1, INPUT);
pinMode(PB2, INPUT);
pinMode(PB3, INPUT);
pinMode(PB4, INPUT);
pinMode(PB5, INPUT);
pinMode(PB6, INPUT);
pinMode(PB7, INPUT);
pinMode(PB8, INPUT);
// Mengatur pin LED sebagai output
for (int i = 0; i < 8; i++)
{
pinMode(led[i], OUTPUT);
}
}
void loop()
{
// Membaca status dari setiap tombol
int b7 = digitalRead(PB7);
int b8 = digitalRead(PB8);
int b6 = digitalRead(PB6);
int b5 = digitalRead(PB5);
int b4 = digitalRead(PB4);
int b3 = digitalRead(PB3);
int b2 = digitalRead(PB2);
int b1 = digitalRead(PB1);
// Mematikan semua LED terlebih dahulu
for (int i = 0; i < 8; i++)
{
digitalWrite(led[i],HIGH);
}
// Menyalakan LED yang sesuai dengan tombol yang ditekan
// Jika tombol ditekan (HIGH), LED yang sesuai akan dinyalakan
if (b8 == HIGH) digitalWrite(led[7], LOW);
if (b7 == HIGH) digitalWrite(led[6], HIGH);
if (b6 == HIGH) digitalWrite(led[5], HIGH);
if (b5 == HIGH) digitalWrite(led[4], HIGH);
if (b4 == HIGH) digitalWrite(led[3], HIGH);
if (b3 == HIGH) digitalWrite(led[2], HIGH);
if (b2 == HIGH) digitalWrite(led[1], HIGH);
if (b1 == HIGH) digitalWrite(led[0], HIGH);
}
5. Link Download [Kembali]
Datasheet Button klik disini
Datasheet LED klik disini






Tidak ada komentar:
Posting Komentar