Sabtu, 12 November 2016

Percobaan pada seven segment Jika angka genap di tekan maka akan menampilkan huruf E berkedip dengan delay 100ms









1. Pastikan semua supply dalam keadaan off
2. Hubungkan jumper seperti gambar dibawah
3. Buatlah listing program yang telah ada pada modul.
4. Hidupkan supply pada modul
5. Upload program pada rangkaian
6. Tekan tombol Reset
7. Amati percobaan, jika tidak sesuai perbaiki rangkaian atau program
8. Jika sesuai, maka selesai dan demokan pada instruktur atau asisten yang mengawas
9. Matikan supply pada modul




1.Hardware [Kembali]



a. Mikrokontroler Arduino 2560



b.Seven segment


Seven Segment adalah salah satu perangkatlayar untuk menampilkan sistem angka 
desimal yang merupakan alternatif dari layar dot-matrix. Seven Segment memiliki
7 Segmen dimana setiap segmen dikendalikan secara On dan Off untuk mennampilkan
angka yang di inginkan. Angka-angka dari 0 sampai 9 dapat ditampilkan dengan
menggunakan beberapa kombinasi segmen. Seven Segment juga dapat menampilkan Huruf
Hexadecimal dari A sampai F.

c. Keypad






Kepad merupakan komponen elektronik yang digunakan sebagai 
masukan, disusun dari beberapa tombol/switch dengan teknik matrix.
Pada praktikum kali ini, saya menggunakan Keypad 3x4 dimana terdiri
atas 3 Kolom dan 4 Baris. Dimana Keypad disini berfungsi sebagai
input/masukan pada praktikum saya kali ini. Proses scaning untuk 
membaca penekanan tombol pada matrix keypad dilakukan secara 
bertahap kolom demi kolom dari pertama sampai kolom ke 3 dan
baris ke 4. Misal di asumsikan keypad aktif LOW dan dihubungkan 
ke port mikrokontroller dengan jalur kolom adalah jalur input dan 
jalur baris adalah jalur output maka proses scanning matrix dapat
dituliskan sebagai berikut : 

a. Mengirimkan logika Low untuk kolom 1 dan logika high untuk
kolom yang lain kemudian membaca data baris.Misal tombol SW1
ditekan maka data baris pertama akan Low sehingga data baris yang
dibaca adalah 0111, atau tombol yang ditekan tombol SW5 maka data
baris ke 2 Low sehingga data yang terbaca 1011, atau tombol SW9 
yang ditekan sehingga data yang terbaca 1101, atau tombol SW13
ditekan maka data yang dibaca adalah 1110 atau tidak ada tombol 
pada kolom pertama yang ditekan maka data pembacaan baris akan 
1111. 

b. Mengirimkan logika Low untuk kolom 2 dan logika High untuk
kolom yang lain kemudian membaca data baris



2.Rangkaian Simulasi [Kembali]




Prinsip Kerja: 

Pada percobaan yang telah dilakukan pada modul 2 kondisi 7, yaitu percobaan pada 7 segment, jika angka genap ditekan pada keypad maka akan menampilkan karakter E pada 7 segment ,dimana percobaan ini memerlukan beberapa komponen yaitu :
  • Arduino 2560 yang berfungsi sebagai otak dari rangkaian ini 
  • Seven segment yang berfungsi sebagai keluaran 
  • keypad yang berfungsi sebagai masukan
Pada rangkaian, seven segment dihubungkan pada arduino sebagai output dan keypad  sebagai input. Dimana apabila angka genap ditekan pada keypad  maka akan menampilkan karakter 'E' berkedip dengan delay 100ms pada seven segment .

Prinsip Kerja: Pada percobaan kali ini, yaitu menampilkan teks dari kiri ke kanan pada lcd. Dimana membutuhkan beberapa komponen, yaitu Mikroprosesor ATMega 128 yang berfungsi sebagai otak dari rangkaian ini, LCD berfungsi sebagai keluaran berupa karakter, serta Switch yang berfungsi sebagai masukan/input. Serta juga menambahkan kristal sebagai 'Clock' atau sering disebut juga sebagai pendetak bagi Mikroprosesor ATMega 128. Pada rangkaian, LCD dihubungkan pada PORT A dan SWITCH pada PORT B. Dimana apabila salah satu Switch ditekan dan bernilai 1, maka pada LCD akan menampilkan 'Nama : Setiawan MH'

Today Deal $50 Off : https://goo.gl/efW8Ef




3.Flow Chart [Kembali]






4.Listing Program [Kembali]


 #include <Keypad.h>    //memasukan pustaka keypad
                          
char tombol[4][3] =     //menyatakan tombol di keypad adalah kolom 3 dan baris 4
{            //pembuka tata letak keypad
  {'1', '2', '3'},      //deklarasi posisi tombol keypad
  {'4', '5', '6'},      //deklarasi posisi tombol keypad
  {'7', '8', '9'},    //deklarasi posisi tombol keypad
  {'*', '0', '#'}       //deklarasi posisi tombol keypad
};            //penutup tata letak keypad

byte pin[] = {2, 3, 4, 5, 6, 7, 8, 9};    //deklarasi pin arduino pada   seven segment dengan tipe data byte
byte pinBaris[] = {17, 18, 19, 20};    //deklarasi pin arduino yang dihubungkan ke baris pada keypad
byte pinKolom[] = {14, 15, 16};        //deklarasi pin arduino yang dihubungkan ke kolom pada keypad

Keypad keypad = Keypad(makeKeymap(tombol), //digunakan untuk menciptakan objek keypad
                pinBaris, pinKolom, 4, 3); //objek keypad yaitu empat kali tiga


void setup()  //fungsi utama
{
  pinMode(10,OUTPUT);     //pin 10 arduino digunakan sebagai output
  digitalWrite(10,LOW);   //pin 10 pada arduino digunakan pada keaadan low
 
}

void loop()  //fungsi perulangan pada program
{
   char kode = keypad.getKey(); //fungsi membaca tombol apa pada keypad yang ditekan
  if (kode == NO_KEY) //keadaan jika tombol tidak ditekan
    return;          // perintah return dieksekusi

  else if(kode == '0' || kode == '2' || kode == '4' || kode == '6' || kode == '8')  //kondisi dimana tombol angka genap di tekan
  { for (int a=0; a<=5; a++){  //fungsi perulangan jika memenuhi syarat maka akan terus berulang
    digitalWrite(2,HIGH);      //pin 2 seven segment hidup
    digitalWrite(3,LOW);       //pin 3 seven segment mati
    digitalWrite(4,LOW);       //pin 4 seven segment mati
    digitalWrite(5,HIGH);      //pin 5 seven segment hidup
    digitalWrite(6,HIGH);      //pin 6 seven segment hidup
    digitalWrite(7,HIGH);      //pin 7 seven segment hidup
    digitalWrite(8,HIGH);      //pin 8 seven segment hidup
    digitalWrite(9,LOW);       //pin 9 seven segment mati
    delay (100);            //delay selama 100ms
    digitalWrite(2,LOW);       //pin 2 seven segment mati
    digitalWrite(3,LOW);       //pin 3 seven segment mati
    digitalWrite(4,LOW);       //pin 4 seven segment mati
    digitalWrite(5,LOW);       //pin 5 seven segment mati
    digitalWrite(6,LOW);       //pin 6 seven segment mati
    digitalWrite(7,LOW);       //pin 7 seven segment mati
    digitalWrite(8,LOW);       //pin 8 seven segment mati
    digitalWrite(9,LOW);       //pin 9 seven segment mati
    delay (100);            //delay selama 100ms
    ;
  }
}


}





5.Video [Kembali]





6.Kondisi [Kembali]

  • Menampilkan karakter "E" berkedip dengan delay 100ms ketika angka genap pada  keypad ditekan



7. Link Download [Kembali]