Oleh Mohd Qhairul Bakri dalam Tutorial Arduino
Tahap Kesukaran : Baru Mula Belajar

>> Pengenalan <<

Paparan 7 segmen merupakan sebuah komponen yang banyak digunakan pada peralatan elektronik seharian. Komponen ini dapat memaparkan nombor digit dan ada juga yang boleh memaparkan huruf-huruf tertentu. Ia juga terdapat dalam pelbagai pilihan warna.

Gambar paparan 7 segmen

>> ASAS OPERASI <<

Secara asasnya, komponen ini mempunyai konsep operasi yang sama seperti diod pemancar cahaya (LED) bezanya cuma komponen ini mempunyai tujuh buah LED yang dipanggil segmen dan disusun membentuk angka “8”. Kebiasaanya terdapat lagi satu LED untuk memaparkan titik perpuluhan pada bahagian bawah kanan komponen ini.

Untuk memudahkan proses pembelajaran dan koding, setiap LED pada komponen ini dilabel dengan A, B, C, D, E, F, dan G, manakala titik perpuluhan pula dilabel dengan TP. Tutorial ini menggunakan paparan 7 segmen jenis common cathode.

Rajah label LED dan pin pada paparan 7 segmen

Terdapat dua versi paparan 7 segmen iaitu “common cathode” dan “common anode”.

  • Pada common cathode, semua pin cathode disambungkan ke ground manakala anode pula disambungkan ke pin digital. LED dinyalakan dengan memberi signal HIGH pada anode.
  • Pada common anode, semua pin anode disambungkan ke Vcc manakala cathode pula disambungkan ke pin digital. LED dinyalakan dengan memberi signal LOW pada cathode.

Rajah Common Cathode Dan Common Anode

>> KOMPONEN YANG ANDA PERLUKAN <<

Tutorial ini akan mengajar anda cara-cara menggunakan paparan 7 segmen dengan papan Arduino Uno. Antara komponen yang anda perlukan ialah :

>> Sambungan litar <<

Litar Skematik

Pin Paparan 7 Segmen Pin Arduino UNO
A D11
B D10
C D8
D D7
E D6
F D12
G D13
TP D9
GND GND

>> kod arduino <<

// Developer: Mohd Qhairul Bakri
// Tarikh: 4 Feb 2019

#define g 13
#define f 12
#define a 11
#define b 10
#define tp 9
#define c 8
#define d 7
#define e 6

void setup() 
{
  pinMode(a, OUTPUT);
  pinMode(b, OUTPUT);
  pinMode(c, OUTPUT);
  pinMode(d, OUTPUT);
  pinMode(e, OUTPUT);
  pinMode(f, OUTPUT);
  pinMode(g, OUTPUT);
  pinMode(tp, OUTPUT);
  
}

void loop() 
{
  digit0();
  delay(1000);
  digit1();
  delay(1000);
  digit2();
  delay(1000);
  digit3();
  delay(1000);
  digit4();
  delay(1000);
  digit5();
  delay(1000);
  digit6();
  delay(1000);
  digit7();
  delay(1000);
  digit8();
  delay(1000);
  digit9();
  delay(1000);
}

void digit1()
{
  digitalWrite(a, LOW);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, LOW);
  digitalWrite(e, LOW);
  digitalWrite(f, LOW);
  digitalWrite(g, LOW);
  digitalWrite(tp, LOW);
}

void digit2()
{
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, LOW);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, LOW);
  digitalWrite(g, HIGH);
  digitalWrite(tp, LOW);
}

void digit3()
{
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, LOW);
  digitalWrite(f, LOW);
  digitalWrite(g, HIGH);
  digitalWrite(tp, LOW);
}

void digit4()
{
  digitalWrite(a, LOW);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, LOW);
  digitalWrite(e, LOW);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  digitalWrite(tp, LOW);
}

void digit5()
{
  digitalWrite(a, HIGH);
  digitalWrite(b, LOW);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, LOW);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  digitalWrite(tp, LOW);
}

void digit6()
{
  digitalWrite(a, HIGH);
  digitalWrite(b, LOW);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  digitalWrite(tp, LOW);
}

void digit7()
{
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, LOW);
  digitalWrite(e, LOW);
  digitalWrite(f, LOW);
  digitalWrite(g, LOW);
  digitalWrite(tp, LOW);
}

void digit8()
{
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  digitalWrite(tp, LOW);
}

void digit9()
{
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, LOW);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  digitalWrite(tp, LOW);
}

void digit0()
{
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, HIGH);
  digitalWrite(g, LOW);
  digitalWrite(tp, LOW);
}

Setelah memuat naik kod di atas, paparan 7 segment akan membuat kiraan daripada 0 hingga 9 secara berulang. Selamat mencuba!

>> TAHNIAH, ANDA HEBAT <<

Kini anda telah mengenali serba sedikit mengenai komponen 7 segmen dan cara operasi komponen ini seterusnya menyelesaikan tutorial paparan 7 segmen bersama Arduino Uno.

Baca tutorial lain yang disediakan oleh penulis Mohd Qhairul Bakri di Arduino Bagaimana Untuk Menggunakan Modul Sensor Hujan.

Kunjungi sekarang kedai Arduino Pulau Pinang di

Nadi Eleczone Solutions
Lot 1667, Tingkat 1, Jalan Teluk Air Tawar, Taman Air Tawar Indah, 13050 Butterworth, Penang
019 – 249 3264

TINGGALKAN JAWAPAN BALAS ANDA

Sila masukkan ulasan anda!
Sila masukkan nama anda di sini