Menampilkan angka 00 hingga 99 pada Seven Segment
Menggunakan seven segment secara bersamaan menggunakan board Arduino Uno untuk menampilkan 00 hingga 90 tanpa efek charlieplexing.

Komponen yang Digunakan
Jenis Jenis Seven segmen
Seven segment Digital (SSD) ada 2 jenis yaitu anoda dan katoda. Seven segment yang digunakan pada project ini adalah jenis anoda.
Jika Anda menggunakan jenis Common Cathode, Anda hanya perlu mengubah angka 0 menjadi 1 dan sebaliknya pada codingannya.
Kita akan menggunakan pin 0 hingga 13 pada papan Arduino, tidak menghubungkan titik karena kita tidak membutuhkannya.
SSD(1) di sini mengacu pada SSD yang menampilkan angka puluhan.
SSD(2) di sini mengacu pada SSD yang menampilkan angka satuan
Menghubungkan pin Arduino ke pin SSD:
Hubungkan pin 3 dan 8 pada kedua SSD ke 3.3V. (Gunakan resistor)
Karena ini untuk SSD Anoda Umum, LED akan menyala ketika nilainya RENDAH/0.
Jika Anda menggunakan SSD Katoda Umum, hubungkan pin 3 dan 8 ke ground, lalu LED akan menyala saat dihubungkan ke HIGH/1.
Jangan biarkan tegangan 5 V melewati LED Anda, Anda harus menggunakan resistor.
Hasil: Angka dari 00 hingga 99 ditampilkan.
Video tutorial :
Skema
//SSD is Seven-Segment Display
void setup()
{
for (int i = 0; i <= 13; i++)
pinMode(i, OUTPUT); //Set all pins from 0 to 13 as OUTPUT
}
//The line below is the array containing all the binary numbers for the digits on a SSD from 0 to 9
const int number[11] = {0b1000000, 0b1111001, 0b0100100, 0b0110000, 0b0011001, 0b0010010, 0b0000010, 0b1111000, 0b0000000, 0b0010000};
void loop()
{
for (int tens = 0; tens < 10; tens++)
{
display_tens(tens);
}
}
void display_tens(const int tens)
{
int pin1, a, ones;
//pin1 is just used to deal with pins of the 1st SSD which desplays the tens digit
for (pin1 = 0, a = 0; pin1 < 7; pin1++, a++)
{
digitalWrite(pin1, bitRead(number[tens], a));
}
for (ones = 0; ones < 10; ones++)
{
display_ones(ones);
delay(300);
//I have given a delay of 300 milliseconds. You can put your own Time!!
}
}
void display_ones(const int x)
{ int pin2, b;
//pin2 is just used to deal with pins of the 2nd SSD which desplays the ones digit
for (pin2 = 7, b = 0; pin2 <= 13; pin2++, b++)
{
digitalWrite(pin2, bitRead(number[x], b));
}
}credit article translated from KVLakshmiSri hackster.io




















