1. Tujuan[ K E M B A L I]
- Merangkai dan menguji aplikasi output pada mikrokontroller Arduino
- Merangkai dan menguji input pada mikrokontroller Arduino
- Merangkai dan menguji I/O pada mikrokontroller Arduino
- 7 Segment
- Arduino
- Jumper
- USB
- Breadboard
Kondisi praktikum adalah menampilkan angka 5-1 secara berurutan. Pin-pin pada 7 segment dihubungkan kepada arduino. Pin a pada 7 segment dihubungkan pada pin 9 pada arduino. Pin b-8, c-7, d-6, e-5, f-4, g-3, DP-2. Pin com pada 7 segment dihubungkan pada ground karena 7 segment yang digunakan merupakan tipe common cathode.
Sebagai power untuk arduino, arduino dihubungkan menggunakan USB ke laptop.
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, LOW);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
digitalWrite(9, LOW);
delay(100);
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
digitalWrite(5, HIGH);
digitalWrite(6, HIGH);
digitalWrite(7, LOW);
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
digitalWrite(9, LOW);
delay(100);
}
Flowchart:
7 Segment menampilkan angka 5-1 secara berurutan.
1. Analisa rangkaian terhadap kondisi setiap kelompok (bagaimana menghubungkan antara kaki kaki 7 segment). Jika terjadi kesalahan, berikan penjelasan.
Kondisi praktikum adalah menampilkan angka 5-1 secara berurutan. Pin-pin pada 7 segment dihubungkan kepada arduino. Pin a pada 7 segment dihubungkan pada pin 9 pada arduino. Pin b-8, c-7, d-6, e-5, f-4, g-3, DP-2. Pin com pada 7 segment dihubungkan pada ground karena 7 segment yang digunakan merupakan tipe common cathode.
Sebagai power untuk arduino, arduino dihubungkan menggunakan USB ke laptop.
2. Jika 7 segment nya diganti menjadi common anoda. Bagaimana pengaruh terhadap rangkaian.
Jika kita mengganti 7 segment menjadi common anoda, maka segment yang aktif pada 7 segment adalah segment yang tadinya tidak aktif ketika pada percobaan yang menggunakan 7 segment common cathode. Karena prinsip 7 segmen common cathode akan aktif jika kita memberikan logika HIGH, sedangkan common anoda aktif jika diberi logika LOW.
3. Jelaskan listing program sesuai dengan kondisi masing masing
Pertama-tama kita mendeklarasikan pin 2-9 sebagai pin yang digunakan untuk disambungkan kepada 7 segment. Di dalam fungsi void setup (semua kode dalam fungsi ini hanya dieksekusi sekali) dilakukan perulangan for dengan kondisi i=0 dan diulang selama syarat i<9 masih terpenuhi. Nilai diincrement pada setiap kali perulangan. Perulangan dilakukan untuk mendeklarasikan pin yang digunakan sebagai OUTPUT.
Selanjutnya fungsi void loop untuk mengatur output dari arduino. Mengatur output menggunakan syntax digitalWrite(pin,nilai);. Pada parameter nilai dimasukan HIGH atau LOW sebagai nilai logika 1 atau 0.
Contoh kode untuk menampilkan angka 5 (mengaktifkan pin 3, 4, 6, 7, 9):
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, LOW);
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, LOW);
digitalWrite(9, HIGH);
Sesudah menulis kode untuk menampilkan angka 5, program diberi delay 100ms (0,1 detik) sebagai jeda sebelum mengeksekusi kode selanjutnya. Setelah itu kita tulis kode untuk menampilkan angka 4-1 dengan delay 100ms di antara tiap angka.
Tidak ada komentar:
Posting Komentar