Menampilkan Display Seven Segment dengan TM1637 Module dan Arduino

Seven segment adalah tampilan display yang terdiri dari tujuh segment yang dipancari LED sehingga membentuk karakter alfanumerik tertentu. Pada dasarnya seven segment ini menampilkan karakter angka saja, tapi untuk karakter huruf tertentu seperti ‘A’, ‘b’, ‘c’, ‘d, ‘o’, dst juga dapat ditampilkan (asal terdiri dari 7 segment karakter). Untuk karakter yang sulit seperti huruf ‘R’, ‘Q’, ‘W’, dll tidak dapat ditampilkan. Jadi untuk seven segment ini benar-benar terbatas untuk menampilkan karakter huruf. Jika Anda membutuhkan display yang lebih fleksibel, sebaiknya menggunakan display LCD (misal LCD 1602, 2004, OLED, dll).

Untuk menampilkan karakter alfanumerik caranya cukup mudah, cukup dengan memberikan tegangan 5V (atau Ground) pada kaki pin masing-masing segment, tergantung tipe seven segment apakah common cathode atau common anode.

seven segment common anode cathode

Namun kerumitan akan terjadi saat Anda akan menampilkan misalnya 3 atau 4 digit karakter alfanumerik. Bisa dihitung berapa kebutuhan pinout mikrokontroller untuk total segment. Anda bisa saja menggunakan metode segment untuk menghemat pinout, namun mungkin nanti script handlingnya akan cukup rumit. Belum lagi nanti Anda harus menggunakan driver rangkaian yang tepat agar nyala segment cukup terang saat ditampilkan menggunakan metode scanning

metode scanning seven segment

Untuk mengatasi kerumitan di atas, bersyukurlah kita hidup di jaman yang serba maju. Adalah sebuah IC driver seven segment berjuluk TM1637 yang mampu mengerjakan kerumitan itu semua dalam single chip. Bahkan IC ini sudah dijual dalam bentuk modul siap pakai, lengkap dengan seven segment 4 digit, sehingga Anda cukup menempelkannya ke rangkaian Anda. Berikut ini adalah tampilan modul tersebut beserta keterangan pinout-nya

tm1637 module pinout

Perhatikan bahwa untuk menampilkan 4 digit display alfanumerik, Anda hanya cukup menggunakan 2 pin digital saja. Sangat sangat hemat resource, bukan? Apalagi sudah tersedia library yang akan memudahkan Anda menampilkan angka dan huruf tertentu ke 4 buah seven segment. Saya yakin dalam waktu 5 menit saja Anda akan mampu melakukannya 🙂 .

Alat dan Bahan:

  1. 4 digit seven segment module TM1637
  2. Arduino (bisa uno, nano atau yang lain)
  3. 4 kabel jumper (tipenya menyesuaikan Arduino yang Anda gunakan)

Oke, kita coba ya. Silahkan download dulu library nya di sini. Tambahkan library tersebut ke Arduino IDE. Jika belum tahu cara menambahkan library bisa baca caranya di sini.

Hubungkan Arduino dan module TM1637 sesuai rangkaian sbb:

rangkaian arduino tm1637 seven segment

Berikutnya bikin sketch sederhana berikut untuk menampilkan karakter angka di 4 seven segment yang ada di module TM1637

#include <TM1637Display.h>

#define CLK 3
#define DIO 2

unsigned int angka = 0;
TM1637Display display(CLK, DIO);

void setup()
{
  display.setBrightness(0x0f);  //maximum brightness
}


void loop()
{
  for(angka = 0; angka < 9999; angka++) 
  {
    display.showNumberDec(angka); //tampilkan angka
    delay(100);  
  }
}

Upload sketch dan beberapa detik kemudian seharusnya akan tampil angka mulai dari 0 sampai 9999 di module TM1637 Anda. Mudah, bukan?

Resume Sketch Arduino – TM1637 Seven Segment Driver

Beberapa function penting pada sketch di atas adalah sebagai berikut. Function ini adalah function yang terdapat pada library ‘TM1637Display.h’ yang tadi Anda download

display.setBrightness(0x0f); ==> untuk mengatur kecerahan led pada seven segment. Angka 0x0F dapat Anda ubah mulai dari 0x0A untuk mengatur kecerahan LED yang diinginkan

display.showNumberDec(angka); ==> menampilkan angka ke seven segment

Demikian sedikit tutorial pengenalan modul TM1637 untuk menampilkan 4 digit angka ke seven segment. Pada tutorial berikutnya akan saya bahas lebih advanced untuk function-function lainnya, misalnya bagaimana menampilkan custom segment, menyalakan led ‘:’ pada modul, menampilkan angka mulai dari depan, dsb

0 0 votes
Article Rating

Leave a Reply

14 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Gunawan

Mas Ajie mau nanya… bagaimana kalau modul TM1637 lebih dari satu?

Gunawan

trus gimana membedakan antara modul satu dengan yang lainnya untuk menampilkannya, CLK, DIO

bagus

mas aji saya mau tanya, display seven segmen nya di modif ke 2.3 inci apa saja yang diperlukan?

ahmad

mas aji . kalo nilai yg di tampilkan di 7segment adalah nilai yg berubah ubah, sperti nilai sensor suhu bagaimna ya kodingnya ?

Ahmad

Display.ShowNumberDec(angka) ,

Jdi nanti yg dalam () ini ya yg di rubah bang ?
misal kalo yg mau di tmpilkan data suhu
Jadi
Display.ShoNumberDec(suhu) ,

Arif

trus koding untuk masukin angka komanya gimana mas aji ??, saya kalo angka int sudah bisa tapi kalo float blm bisa mas aji

Mula Warman

Mas, klo library untuk TM1637 yang IC bukan module, sehingga bisa display 6 digit yang mana ya? Klo boleh minta link nya

Saya coba tm1637Display, ternyata hanya 4 digit

Thanks sebelumnya

Mula Warman

Thanks, saya sudah coba beberapa library berbeda, tetep keluarnya 4 digits. Padahal di datasheet nya TM1637 bisa 6 digit

14
0
Would love your thoughts, please comment.x
()
x