15 Okt 2019

7-Segment

7-Segment

Pada latihan ini akan belajar bagaimana menampilkan data/angka pada 7-segment. Rangkaian dan library yang digunakan pada latihan ini mengacu pada Digit Shield. Untuk bisa menampilkan angka pada 7-segment memerlukan komponen IC 74LS595 (Shift Register) dan IC 74LS247 (BCD to 7-segment).

Pada pemogramannya menggunakan beberapa fungsi khusus yang sudah dibuat menjadi library, seperti fungsi DigitShield.begin() digunakan pada awal inisialisasi, fungsi DigitShield.setvalue(value) digunakan untuk menampilkan angka pada 7-segment bisa berupa nilai hasil pembacaan sensor, jam pembacaan dari modul RTC, dll.

Kebutuhan Komponen:

— 1 x Arduino UNO
— 1 x 4 7-segment
— 1 x IC 74LS595
— 1 x IC 74LS247
— 8 x Resistor 100Ω
— 4 x Resistor 10kΩ

Komponen yang digunakan pada Shield:

1 x 4x7-segment yang terhubung ke D5, D6, D7 & D8.


Rangkaian:


Upload sketch:

Buka software Arduino IDE apabila menggunakan PC/Laptop. Jika menggunakan Android dapat membuka aplikasi Bluino Loader yang sudah diinstal dari Google Playstore. Buka sketch Latihan 11 yang sudah diunduh dan disimpan pada folder Examples sebelumnya.

Untuk membuka sketch temukan file di: BluinoLoader > examples > Belajar_Arduino_Dasar > Latihan_11

Cara lain dapat juga upload sketch langsung melalui aplikasi ini ke Arduino melalui USB OTG atau Bluetooth dengan cara menekan ikon upload (tanda panah ke kanan) dibawah.
/* Bluino Starter Shield
  Latihan 11 7-segment

  To display number counter-up 0 - 9999 on sevent segment.

  Version 1.0 9/2017 MK
*/


#include <digitshield.h>




int counter = 0;

// Create a Digit Shield connected to Arduino pins 5,6,7,8
// Connected to pins 5,6,7,8 on the shield, respectively.
DigitShieldClass digitShield(5, 6, 7, 8);

void setup() {
  DigitShield.begin();      // Initialize the Digit Shield. This is required before use.
}

void loop() {
  digitShield.setValue(counter);    // Set an integer value to display
  counter = counter + 1;    // Counter-up added 1
  delay(300);               // Delay time when increasing counter
  if (counter >= 9999) {    // Reset counter to 0 if reach 10000
    counter = 0;
  }
}

Catatan kode:

#include <digitshield.h>
Kode berikut memberitahu Arduino untuk meyertakan library DigitShield. Tanpa menggunakan library ini, nanti semua fungsi yang berhubungan dengan 7-segment tidak akan dikenali, maka pastikan kamu sudah mendownload library tersebut dan menyimpannya pada subfolder libraries serta pada awal baris kode menyertakannya.
digitShield.setValue(counter);
Fungsi ini akan menampilkan angka pada 7-segment, data yang dapat ditampilakan dapat berupa integer atau double (bilangan desimal mempunyai angka dibelakang koma).

Apa yang seharusnya kamu lihat:

Kamu akan melihat nilai pada 7-segment mencacah naik dari 0 sampai 9999, dengan jeda waktu 300 ms tiap perbuahan angkanya sesuai dengan delay. Jika tidak tampil, pastikan sketch sudah masuk kedalam Arduino.



0 comments:

Posting Komentar