MODUL II
SEVEN SEGMENT
A. TUJUAN
Mahasiswa mampu memahami program arduino untuk menampilkan karakter
pada seven segment.
C. DASAR TEORI
2. Common Katoda
C.2 Arduino
1. Microcontroller ATmega328
2. Operasi dengan daya 5V Voltage
3. Input Tegangan (disarankan) 7-12V
4. Tegangan (batas) 6-20V
5. Digital I / O Pins 14 (dimana 6 memberikan output PWM)
6. Analog Input Pin 6
7. DC Lancar per I / O Pin 40 mA
Praktikum Mikroprosesor 2021 Modul II -5
Modul II Seven Segmen
2. Arduino Nano
Arduino nano memiliki ukuran yang relatif kecil dan sangat
sederhana. Dengan ukurannya yang kecil, bukan berarti jenis Arduino
ini tidak mampu menyimpan banyak fasilitas. Hampir sama dengan tipe
Arduino UNO, Arduino Nano dibekali dengan prosesor ATMega328P
dengan bentuk SMD dan memiliki 14 Pin Digital I/O, 8 Pin Analog
Input (lebih banyak dari Uno), dan menggunakan FTDI untuk
pemograman lewat Mikro USB. Selain itu juga ada yang menggunakan
prosesor ATMega168.
3. Arduino Mega
Arduino Mega umumnya dibuat menggunaka jenis
mikrokontroler ATMega 2560. Sesuai dengan namanya, Arduino ini
dibekali dengan prosesor ATMega2560 yang memiliki 54 pin digital
I/O (dimana 15 pin dapat digunakan sebagai output PWM), 16 pin
analog input, 4 pin UART, 2x3 pin ICSP (untuk memprogram Arduino
dengan software lain), dan kabel USB komputer yang sekaligus
digunakan sebagai sumber tegangan.
4. Arduino Micro
Arduino Micro adalah suatu jebis Arduino yang dibekali dengan
mikrokontroler ATMega32U4. Ukurannya lebih panjang dari Arduino
Nano dan Arduino Pro Mini, karena memang fasilitasnya lebih banyak
yaitu dengan 20 pin digital I/O (7pin bisa digunakan untuk Output
PWM), 12 pin analog Input, dan Mikro USB.
Serial mengacu pada komunikasi USB (CDC); untuk TTL serial pada
pin 0 dan 1, menggunakan kelas Serial 1.
D. LANGKAH PERCOBAAN
Menampilkan Karakter Pada Seven Segment Melalui Software Proteus:
1. Menyiapkan alat dan bahan
2. Membuka software Proteus pada Komputer/Laptop
3. Menyiapkan komponen yang akan digunakan pada software
Proteus, diantaranya:
a. 7SEG-COM-CATHODE
b. Arduino (NANO/UNO/MEGA)
c. Ground
4. Menyusun rangkaian seperti gambar dibawah ini:
void setup() {
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
}
void f()
{
digitalWrite(2, 1); //A
digitalWrite(3, 0); //B
digitalWrite(4, 0); //C
digitalWrite(5, 0); //D
digitalWrite(6, 1); //E
digitalWrite(7, 1); //F
digitalWrite(8, 1); //G
}
void satu()
{
digitalWrite(2, 0); //A
digitalWrite(3, 0); //B
digitalWrite(4, 0); //C
digitalWrite(5, 0); //D
digitalWrite(6, 1); //E
digitalWrite(7, 1); //F
digitalWrite(8, 0); //G
}
void b()
{
digitalWrite(2, 0); //A
digitalWrite(3, 0); //B
digitalWrite(4, 1); //C
digitalWrite(5, 1); //D
digitalWrite(6, 1); //E
digitalWrite(7, 1); //F
digitalWrite(8, 1); //G
}
void nol()
{
digitalWrite(2, 1); //A
digitalWrite(3, 1); //B
digitalWrite(4, 1); //C
digitalWrite(5, 1); //D
digitalWrite(6, 1); //E
digitalWrite(7, 1); //F
digitalWrite(8, 0); //G
}
void enam()
{
digitalWrite(2, 1); //A
digitalWrite(3, 0); //B
digitalWrite(4, 1); //C
digitalWrite(5, 1); //D
digitalWrite(6, 1); //E
digitalWrite(7, 1); //F
digitalWrite(8, 1); //G
}
void tujuh()
{
digitalWrite(2, 1); //A
digitalWrite(3, 1); //B
digitalWrite(4, 1); //C
digitalWrite(5, 0); //D
digitalWrite(6, 0); //E
digitalWrite(7, 0); //F
digitalWrite(8, 0); //G
}
void delapan()
{
digitalWrite(2, 1); //A
digitalWrite(3, 1); //B
digitalWrite(4, 1); //C
void sembilan()
{
digitalWrite(2, 1); //A
digitalWrite(3, 1); //B
digitalWrite(4, 1); //C
digitalWrite(5, 1); //D
digitalWrite(6, 0); //E
digitalWrite(7, 1); //F
digitalWrite(8, 1); //G
}
void loop() {
f();
delay(t);
satu();
delay(t);
b();
delay(t);
nol();
delay(t);
satu();
delay(t);
enam();
delay(t);
tujuh();
delay(t);
delapan();
delay(t);
sembilan();
delay(t);
}
6. Men-Klik Verify.
7. Men-Copy alamat file “…/NamaFile.ino.elf” dan
tempelkan pada arduino di software Proteus.
Contoh:
C:\Users\ACER\AppData\Local\Temp\build2af1774250f3cefcea684ff7d723
daae.tmp/blink.ino.elf
Kemudian tempelkan pada arduino di software Proteus.
E. DATA HASIL
E.1. Gambar Rangkaian
a. seven segmen common katoda
1 = 0000110
7 = 1110000
- = 0000001
f = 1000111
1 = 0000110
b = 0011111
1 = 0000110
1 = 0000110
8 = 1111111
0 = 1111110
0 = 1111110
8 = 1111111
1 = 1111001
7 = 0001111
- = 1111110
f = 0111000
1 = 1111001
b = 1100000
1 = 1111001
1 = 1111001
8 = 00000000
0 = 0000001
0 = 0000001
8 = 0000000
F. Analisa
F.1 Analisa Rangkaian
a. Seven Segmen common katoda
G. KESIMPULAN
1. Pada seven segment jenis common katoda (aktif high) inputan yang harus
diberikan dari arduino harus merupakan logika 1 atau high agar sevent
segment aktif. Untuk membentuk suatu angka (0-9) dan huruf (a-f) pada
seven segment, inputan yang terhubung dengan arduino harus di
programkan untuk mengeluarkan logika 1 dengan urutan tertentu agar
membentuk angka/huruf yang diingin kan.
2. Pada seven segment jenis common Anoda (aktif low) inputan yang harus
diberikan dari arduino harus merupakan logika 0 atau low agar sevent
segment aktif. Untuk membentuk suatu angka (0-9) dan huruf (a-f) pada
seven segment, inputan yang terhubung dengan arduino harus di
programkan untuk mengeluarkan logika 0 dengan urutan tertentu agar
membentuk angka/huruf yang diinginkan.
DAFTAR PUSTAKA
Junaidi dan Prabowo, Yulian dwi, 2018. Project Sistem Kendali Elektronik
Berbasis Arduino . Bandar Lampung, Aura CV. Anugrah utama
Raharja.
Rangkaian:
Scriptt:
int pushbutton = 0;
int counter = 0;
int pushbuttonUp = 0;
int lastpushbuttonUp = 0;
void setup()
{
pinMode(A, OUTPUT);
pinMode(B, OUTPUT);
pinMode(C, OUTPUT);
pinMode(D, OUTPUT);
pinMode(E, OUTPUT);
pinMode(F, OUTPUT);
pinMode(G, OUTPUT);
pinMode(pushbutton, INPUT);
}
void loop()
{
pushbuttonUp=digitalRead(pushbutton);
if (pushbuttonUp!=lastpushbuttonUp)
{
if (pushbuttonUp==HIGH){
if(counter==9){
counter=-1;
}
counter++;
ubahnomor(counter);
delay(200);
}
delay(50);
}
ubahnomor(counter);
}
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, HIGH);
break;
case 1:
//menampilkan angka 1
digitalWrite(A, HIGH);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
break;
case 2:
//menampilkan angka 2
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, HIGH);
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, HIGH);
digitalWrite(G, LOW);
break;
case 3:
//menampilkan angka 3
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, LOW);
digitalWrite(E, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, LOW);
break;
case 4:
//menampilkan angka 4
digitalWrite(A, HIGH);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
break;
case 5:
//menampilkan angka 5
digitalWrite(A, LOW);
digitalWrite(B, HIGH);
digitalWrite(C, LOW);
digitalWrite(D, LOW);
digitalWrite(E, HIGH);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
break;
case 6:
//menampilkan angka 6
digitalWrite(A, LOW);
digitalWrite(B, HIGH);
digitalWrite(C, LOW);
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
break;
case 7:
//menampilkan angka 7
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
break;
case 8:
//menampilkan angka 8
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
break;
case 9:
//menampilkan angka 9
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, LOW);
digitalWrite(E, HIGH);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
break;
}
}