Lompat ke konten Lompat ke sidebar Lompat ke footer

mengenal modul segmet TM1637

Modul TM1637 ini sebenernya display 7-segment yang udah dipakein driver IC khusus namanya TM1637 juga, buatan Titan MicroElectronics. Yang bikin modul ini keren adalah kamu cuma butuh 2 pin aja buat kontrol 4 digit display, nggak kayak display 7-segment biasa yang butuh sampai 12 pin. Jadi hemat banget pin mikrokontroler kamu.

Modulnya sendiri ukuran kecil, sekitar 42 x 24 x 12 mm, dengan display 0.36 inch yang cukup terang. Di tengah-tengah display ada titik dua (colon) yang cocok banget buat bikin jam digital. Plus, brightness-nya bisa diatur lewat software, ada 8 level dari paling redup sampe paling terang.

Yang paling praktis dari modul ini adalah dia pake komunikasi two-wire (mirip I2C tapi nggak sepenuhnya sama), jadi wiring-nya simple banget. Terus IC TM1637-nya juga otomatis refresh display sendiri, jadi mikrokontroler kamu nggak perlu pusing urus refresh terus-menerus.


Spesifikasi Modul TM1637

Berikut spesifikasi lengkap modul TM1637 yang perlu kamu tau:

Parameter Spesifikasi
Driver IC TM1637 (Titan MicroElectronics)
Jumlah Digit 4 digit 7-segment
Ukuran Display 0.36 inch
Warna LED Merah (paling umum)
Tipe Display Common Anode
Tegangan Operasi 3.3V - 5V DC
Konsumsi Arus 30-80 mA (tergantung brightness)
Arus Maksimal 85 mA (semua segment ON, brightness max)
Level Brightness 8 level (0-7, adjustable via software)
Jumlah Pin 4 pin (CLK, DIO, VCC, GND)
Interface Two-wire serial (mirip I2C, tapi beda protokol)
Clock Maksimal 10 MHz
Ukuran Modul 42 x 24 x 12 mm
Mounting Holes 4 x M2 screw holes
Fitur Tambahan Colon display (titik dua di tengah)


Pinout Modul TM1637

Modul TM1637 cuma punya 4 pin yang super simple:

  • VCC: Pin power supply, hubungkan ke 5V atau 3.3V. Modul ini fleksibel, bisa jalan di keduanya.
  • GND: Pin ground, hubungkan ke ground mikrokontroler.
  • CLK: Pin clock signal. Ini yang ngasih timing buat komunikasi. Bisa pake pin digital mana aja di Arduino.
  • DIO: Pin data input/output. Lewat pin ini data dikirim bolak-balik antara mikrokontroler dan modul. Juga bisa pake pin digital mana aja.

Yang enak dari modul ini, kamu nggak harus pake pin tertentu kayak I2C yang harus SDA/SCL. Pin CLK sama DIO bisa dipilih bebas, asal pin digital.


IC Driver TM1637

IC TM1637 ini otaknya modul. Chip ini khusus dirancang buat drive LED 7-segment dengan sistem multiplexing. Jadi dia nggak nyalain semua digit sekaligus, tapi nyalain satu-satu dengan cepet banget sampe mata kita ngeliatnya nyala semua. Teknik ini yang bikin konsumsi dayanya rendah.

IC ini punya internal MCU, data latch, sama LED driver yang high voltage. Dia juga punya register address 6 byte (dari 00H-05H) buat nyimpen data display. Meskipun bisa handle 6 digit, tapi modul yang umum dipake cuma 4 digit aja.

Protokol komunikasinya two-wire serial yang mirip I2C tapi nggak perlu slave address. Data transfer-nya pake ACK signal buat mastiin data dikirim dengan benar. Di datasheet juga disebutin IC ini tahan interferensi, cocok buat aplikasi kitchen appliances yang suka ada gangguan elektromagnetik.


Display 7-Segment

Display 7-segment itu terdiri dari 7 LED yang disusun bentuk angka "8". Setiap segment diberi label huruf dari 'a' sampe 'g'. Buat nampilin angka tertentu, tinggal nyalain segment yang sesuai. Misalnya buat angka 3, nyalain segment a, b, c, d, sama g.

Modul TM1637 ini pake display tipe common anode, yang artinya semua anode dari segment-segment itu terhubung jadi satu. IC TM1637 memang dirancang khusus buat common anode, jadi kalau kamu mau ganti display-nya harus yang common anode juga, nggak bisa pake common cathode.

Selain 7 segment utama, ada juga segment tambahan buat decimal point sama colon. Modul TM1637 yang umum dijual ada 2 versi: yang pake decimal point atau yang pake colon di tengah. Yang pake colon lebih populer karena cocok buat bikin jam.


Kontrol Brightness

Salah satu fitur keren dari TM1637 adalah kontrol brightness yang bisa diatur via software. Ada 8 level brightness dari 0 (paling redup) sampe 7 (paling terang). Di library Arduino, biasanya pake fungsi setBrightness() buat ngatur ini.

Selain level brightness, kamu juga bisa on/off display tanpa harus matiin power. Ini berguna banget kalau mau bikin efek blinking atau display yang nyala-mati. Konsumsi daya juga ikut turun kalau brightness-nya dikecilin atau display-nya di-off.


Konsumsi Daya

Konsumsi daya modul TM1637 ini cukup hemat. Dalam kondisi normal sekitar 30 mA, kalau semua segment nyala dengan brightness maksimal bisa sampai 80-85 mA. Ini jauh lebih rendah dari display 7-segment biasa yang nggak pake multiplexing.

Karena pake sistem multiplexing, IC TM1637 cuma nyalain satu digit dalam satu waktu, jadi total arus yang ditarik nggak terlalu gede. Buat proyekmu yang battery-powered, modul ini cukup efisien asal brightness-nya nggak di-set maksimal terus.


Aplikasi Praktis Modul TM1637

Modul TM1637 ini serbaguna banget. Berikut beberapa aplikasi praktis yang bisa kamu bikin:

  • Jam Digital: Aplikasi paling umum. Colon di tengah display udah pas banget buat format HH:MM. Tinggal kombinasiin dengan RTC module kayak DS3231, kamu bisa bikin jam digital yang akurat.
  • Timer dan Stopwatch: Cocok buat countdown timer atau stopwatch. Kamu bisa bikin timer masak, timer olahraga, atau timer buat fotografi.
  • Termometer Digital: Gabungin dengan sensor suhu DHT11/DHT22 atau DS18B20, kamu bisa display suhu ruangan. Display 4 digit cukup buat nampilin suhu dengan satu atau dua angka desimal.
  • Counter: Bisa buat hitung produk di conveyor, hitung orang yang lewat sensor, atau counter parkir. Range nya 0-9999, cukup buat kebanyakan aplikasi counting.
  • Speedometer Sepeda: Kombinasiin dengan sensor hall effect atau reed switch di roda sepeda, kamu bisa bikin speedometer digital sederhana yang nampilin kecepatan dalam km/h.
  • Display Sensor Jarak: Pake sensor ultrasonic HC-SR04, kamu bisa nampilin jarak dalam cm. Cocok buat sensor parkir atau pengukur jarak otomatis.
  • RPM Meter: Buat motor atau mesin, kamu bisa bikin RPM meter dengan sensor tachometer. Display 4 digit cukup buat nampilin RPM sampai 9999.
  • Voltage Meter: Kombinasiin dengan voltage divider, kamu bisa display tegangan. Cocok buat monitoring battery atau power supply.
  • Score Display: Buat game atau kompetisi, display ini bisa jadi scoreboard sederhana. Brightness yang bisa diatur juga bikin dia cocok buat berbagai kondisi lighting.


Platform Development

Modul TM1637 ini kompatibel dengan berbagai platform development:

  • Arduino IDE: Platform paling populer. Ada library TM1637Display by Avishay Orpaz yang sangat lengkap dan gampang dipake.
  • ESP32/ESP8266: Bisa langsung pake library Arduino yang sama. Cocok buat project IoT yang butuh display lokal.
  • Raspberry Pi: Ada library Python buat TM1637. Kamu bisa kontrol lewat GPIO pins yang di-set sebagai digital output.
  • MicroPython: Ada library TM1637 buat MicroPython, cocok buat ESP32 atau boards lain yang support MicroPython.
  • PlatformIO: Library TM1637 juga tersedia di PlatformIO, jadi kamu bisa pake di berbagai boards dengan mudah.


Setup dengan Arduino IDE

Buat mulai pake modul TM1637 dengan Arduino, ikuti langkah berikut:

  1. Buka Arduino IDE, terus pergi ke Sketch > Include Library > Manage Libraries
  2. Di kotak search, ketik "TM1637" terus cari library yang dibuat oleh Avishay Orpaz
  3. Klik Install, tunggu sampe selesai
  4. Restart Arduino IDE kamu
  5. Sekarang kamu bisa include library-nya di sketch dengan #include <TM1637Display.h>

Buat wiring-nya super gampang:

  • Hubungkan VCC modul ke 5V Arduino (atau 3.3V kalau pake board 3.3V)
  • Hubungkan GND modul ke GND Arduino
  • Hubungkan CLK modul ke pin digital Arduino (misalnya pin 2)
  • Hubungkan DIO modul ke pin digital Arduino (misalnya pin 3)

Contoh kode sederhana buat nampilin angka:

#include <TM1637Display.h>

#define CLK 2
#define DIO 3

TM1637Display display(CLK, DIO);

void setup() {
  display.setBrightness(7); // Set brightness maksimal
}

void loop() {
  display.showNumberDec(1234); // Nampilin angka 1234
  delay(1000);
}


Tips dan Trik

Beberapa tips buat maksimalin penggunaan modul TM1637:

  • Brightness Otomatis: Kamu bisa pake sensor LDR buat adjust brightness otomatis sesuai cahaya ruangan. Ini bikin display tetap nyaman dilihat di berbagai kondisi lighting.
  • Leading Zeros: Fungsi showNumberDec() punya parameter buat nampilin atau nggak nampilin angka nol di depan. Ini berguna buat display jam supaya tetap format 00:00.
  • Decimal Point: Kalau modul kamu punya decimal point, bisa dipake buat display data sensor dengan presisi lebih tinggi, kayak suhu 25.5°C.
  • Custom Characters: Kamu bisa bikin karakter sendiri dengan ngontrol segment individual pake fungsi setSegments(). Cocok buat display huruf atau simbol khusus.
  • Kabel Pendek: Pake kabel jumper yang nggak terlalu panjang buat CLK sama DIO. Kabel panjang bisa bikin display flicker karena noise.


Troubleshooting

Kalau display kamu bermasalah, cek hal-hal berikut:

  • Display Nggak Nyala: Pastiin power supply udah bener (VCC ke 5V, GND ke GND). Coba cek juga jumper wire-nya, kadang ada yang longgar.
  • Display Kedip-kedip: Biasanya karena kabel CLK atau DIO yang terlalu panjang atau ada noise. Coba pake kabel yang lebih pendek atau tambahkan kapasitor 100pF di pin DIO sama CLK.
  • Segment Random: Cek pin CLK sama DIO di kode kamu udah sesuai dengan wiring yang bener. Kadang kesalahan mapping pin bikin display nampil acak.
  • Brightness Rendah: Jangan gunain 3.3V kalau bisa, pake 5V buat hasil yang lebih optimal. Atau cek lagi setting brightness di kode.
  • Masalah Kapasitor: Ada beberapa modul yang dari pabrik punya kapasitor dengan nilai yang salah (1uF atau 10uF instead of decoupling cap). Kalau display bermasalah, coba lepas kapasitor yang ada di bottom side modul.


Perbandingan dengan Display Lain

Gimana modul TM1637 dibanding alternatif lain?

  • TM1637 vs MAX7219: MAX7219 bisa handle lebih banyak digit (sampai 8 digit) dan punya protocol SPI yang lebih standar. Tapi TM1637 lebih murah dan cukup buat kebanyakan project yang cuma butuh 4 digit.
  • TM1637 vs 74HC595: Shift register kayak 74HC595 lebih murah lagi, tapi kamu harus refresh display sendiri dari mikrokontroler. TM1637 otomatis refresh, jadi mikrokontroler bisa fokus ke task lain.
  • TM1637 vs LCD 16x2: LCD bisa nampilin huruf dan angka dengan lebih fleksibel, tapi TM1637 lebih hemat daya dan lebih terang, cocok buat outdoor atau kondisi cahaya terang.
  • TM1637 vs OLED: OLED lebih keren dan bisa nampilin grafik, tapi TM1637 lebih murah, lebih terang, dan lebih tahan lama buat aplikasi yang cuma butuh display angka.

Pilih TM1637 kalau: kamu butuh display angka yang simple, hemat pin mikrokontroler (cuma 2 pin), budget terbatas, dan nggak butuh display huruf atau grafik kompleks.


Kesimpulan

Modul TM1637 adalah solusi praktis buat project yang butuh display angka. Dengan cuma 2 pin kontrol, brightness adjustable, dan harga yang terjangkau, modul ini jadi pilihan favorit buat berbagai aplikasi dari jam digital sampai sensor display.

Kelebihan utamanya ada di kesederhanaan wiring dan library yang udah mature di berbagai platform. Konsumsi dayanya juga cukup rendah berkat sistem multiplexing. Yang paling penting, modul ini reliable dan cocok buat pemula yang baru belajar elektronika.

Modul ini recommended banget buat kamu yang lagi bikin project Arduino atau ESP32 dan butuh display numerik yang simple tapi fungsional. Harganya murah, mudah dipake, dan hasilnya lumayan bagus.