Tugas Pendahuluan Modul 1

 Tugas Pendahuluan

 


1. Kondisi[KEMBALI]

a. Percobaan 1

Kondisi 3: Kondisi awal LED mati, lalu hidup bergantian dari pinggir ke tengah.

b. Percobaan 2

Kondisi 9: Menampilkan angka 9, 7, dan 5 secara bergantian.


2. Gambar Rangkaian Simulasi[KEMBALI]

a. Percobaan 1

Gambar 1: Rangkaian Percobaan 1

b. Percobaan 2

Gambar 2: Rangkaian Percobaan 2


3. Video Simulasi[KEMBALI]

a. Percobaan 1


b. Percobaan 2



4. Prinsip Kerja Rangkaian[KEMBALI]

a. Percobaan 1

Pada percobaan ini, terdapat 8 buah LED red yang masing-masingnya terhubung secara seri dengan resistor 220 Ohm. Masing-masing LED ini terhubung ke kaki output arduino pada pin 2 sampai 9. Pada arduino diinputkan program sebagai berikut:

void setup()  //semua kode dalam fungsi ini hanya dibaca sekali
{
pinMode (2, OUTPUT); //menyatakan pin yang dihubungkan ke LED sebagai OUTPUT
pinMode (3, OUTPUT);
pinMode (4, OUTPUT);
pinMode (5, OUTPUT);
pinMode (6, OUTPUT);
pinMode (7, OUTPUT);
pinMode (8, OUTPUT);
pinMode (9, OUTPUT);
}
void loop() //Semua kode dalam fungsi ini dibaca berulang
{
digitalWrite(2, HIGH);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(9, HIGH);
delay(100); //Jarak waktu 100 ms sebelum memulai perulangan
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
digitalWrite(8, HIGH);
digitalWrite(9, LOW);
delay(100); //Jarak waktu 100 ms sebelum memulai perulangan
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, HIGH);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, HIGH);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
delay(100); //Jarak waktu 100 ms sebelum memulai perulangan
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, HIGH);
digitalWrite(6, HIGH);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
delay(100); //Jarak waktu 100 ms sebelum memulai perulangan
}

Pada program tersebut, dibuatkan 4 kondisi LED aktif. Kondisi pertama, dengan menjalankan fungsi digitalWrite, pin 2 dan 9 diberi logika HIGH, yang artinya arduino menerjemahkan tegangan input 5V sebagai logika HIGH. Sedangkan pin 3-8 diberi logika LOW yang artinya arduino menerjemahkan input 0V menjadi logika LOW.

Pada kondisi kedua juga demikian, hanya pin 3 dan 8 yang berlogika HIGH. Pada kondisi ketiga, hanya pin 4 dan 7 yang berlogika HIGH. Dan pada kondisi keempat, hanya pin 5 dan 6 yang borlogika HIGH. Masing-masing kondisi ini akan diulang oleh fungsi void loop yang mana terdapat delay sebesar 100 ms untuk setiap kondisi sebelum perulangan. Dengan demikian, LED akan hidup secara bergantian dari pinggir ke tengah.

b. Percobaan 2

Pada percobaan ini terdapat sebuah seven segmen yang masing-masing kakinya terhubung ke pin 2 sampai 9 arduino. Seven segmen ini berjenis common katoda, yang artinya akan aktif saat diberi input HIGH. Sesuai dengan kondisi percobaan, bahwa angka yang ditampilkan adalah angka 9, 7, dan 5 secara bergantian. Berikut program yang diinputkan pada arduino:

byte pin[] = {2, 3, 4, 5, 6, 7, 8, 9}; //Deklarasi pin yang digunakan pada 7-segment dengan tipe data byte
void setup()  //Semua kode dalam fungsi ini hanya dieksekusi sekali
{ for (int i = 0; i < 9; i++) //Kondisi perulangan dari 0 hingga batas kecil dari 9; Increase
{
pinMode(pin[i], OUTPUT); //Deklarasi pin yang digunakan sebagai OUTPUT
}
}
void loop()   //Semua kode dalam fungsi ini di eksekusi berulang
{
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, LOW);
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
delay(1000); //Jarak waktu 1000 ms sebelum memulai perulangan
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
delay(1000); //Jarak waktu 1000 ms sebelum memulai perulangan
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, LOW);
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, LOW);
digitalWrite(9, HIGH);
delay(1000); //Jarak waktu 1000 ms sebelum memulai perulangan
}

Pada program diatas dideklarasikan pin-pin output arduino, yaitu pin 2-9. Setelah itu deklarasi perulangan angka dari 0-9. Pada fungsi void loop, terdapat 3 kondisi saat seven segmen aktif. Kondisi pertama untuk menampilkan angka 9, maka pin 3, 4, 6, 7, 8, dan 9 diberi logika HIGH. Kondisi kedua untuk menampilkan angka 7, maka pin 7, 8 , 9 diberi logika HIGH. Dan kondisi ketiga untuk menampilkan angka 5, pin 3, 4, 6, 7, dan 9 diberi input HIGH. Masing-masing kondisi memiliki delay waktu 1000 ms sebelum melakukan perulangan. Dengan demikian akan tampil pada seven segmen angka 9, 7, dan 5 secara bergantian.


5. Link Download[KEMBALI]

Download File Rangkaian Proteus [disini]

Download Video Percobaan 1 [disini]

Download Video Percobaan 2 [disini]

Download Program Arduino Percobaan 1 [disini]

Download Program Arduino Percobaan 2 [disini]

Tidak ada komentar:

Posting Komentar