3 ii laporan praktikum mikrokontroler - count up n down

Post on 10-Jul-2016

272 Views

Category:

Documents

7 Downloads

Preview:

Click to see full reader

DESCRIPTION

Arduino Uno - seven segment - RUD Counter

TRANSCRIPT

LAPORAN PRAKTIKUM MIKROKONTROLER

PROYEK 3 – RUD COUNTER ( RANDOM, UP, AND DOWN )

FIQI S. KHOIR 13306141062

LABORATORIUM ELEKTRONIKA DAN INSTRUMENTASI

A. Tujuan1. Merancang perangkat Seven Segment yang dikombinasikan dengan

perangkat Arduino UNO sebagai perangkat yang berfungsi sebagai Pencacah

B. Program

C. Desain

D. Pembahasan

Percobaan Proyek 3 bertujuan untuk merancang perangkat Seven Segment yang dikombinasikan dengan perangkat Arduino UNO sebagai perangkat yang berfungsi sebagai Pencacah Naik, Turun , dan Acak.

Percobaan menggunakan 2 buah seven segment, dimana seven segment pertama berfungsi sebagai display satuan, sedangkan seven segment kedua berfungsi sebagai display puluhan. Sistem control yang digunakan adalah Arduino UNO. Dan Sub Program yang digunakan ada 3, yaitu Program untuk melakukan count up, count down , serta count random. Setiap pengalihan program menggunakan push button, dengan push button 1 untuk mengaktifkan count random, push button 2 untuk mengaktifkan count down, sedang push button 3 sebagai count up.

Sebelum melakukan programming pada ke tiga sub program, yang pertama kali dilakukan adalah mengatur deklarasi yang digunakan, yaitu,

CountDown : fungsi untuk cacah turun

CountUp : fungsi untuk cacah naik

CountRandom : fungsi untuk cacah random

CountRandom1 : fungsi untuk bilangan random satuan

CountRandom2 : fungsi untuk bilangan random puluhan

biner1 : fungsi untuk bilangan satuan

biner2 : fungsi untuk bilangan puluhan

n : fungsi pin

k : fungsi for untuk loop bilangan puluhan

l : fungsi for untuk loop bilangan satuan

Kemudian mengatur nyalanya seven segment berdasarkan perintah dari pin, dengan aturan byte, yaitu :

byte angka[10] = {

0b0111111, //0

0b0000110, //1

0b1011011, //2

0b1001111, //3

0b1100110, //4

0b1101101, //5

0b1111101, //6

0b0000111, //7

0b1111111, //8

0b1101111}; //9

a. Void Setup

Pada bagian void setup, mengatur pin pin Arduino yang akan digunakan. Mulai dari pin arduino 0-13 sebagai output, kemudian pin A0-A3 sebagai input push button. Pin A0 difungsikan sebagai pin 14, dst. Selanjutnya

… for(k=0;k<=9;k++){

for(l=0;l<=9;l++){

for(n=0;n<=6;n++){ …

b. Void Loop

Pertama mengatur loop for , mulai dari k sebagai puluhan ,l sebagai satuan, dan n sebagai pin yang men-trigger seven segment untuk menyala secara fungsi binary yang telah dideklarasikan sebelumnya.

1. Sub Program Count Up

Pertama mengatur fungsi If, dengan fungsi count up dalam keadaan HIGH. Kemudian pada loop for , untuk fungsi k adalah k++ dan l adalah l++. Selanjutnya, mengatur fungsi biner untuk membaca fungsi n sebagai fungsi binary yang akan menyalakan seven segment dalam bentuk decimal dengan fungsi binary. Kemudian memberikan selang waktu 100 milisekon sebagai jeda, sehingga display puluhan merupakan perubahan dalam detik , sedang display satuan merupakan perubahan dalam 0,1 detik :

for(k=0;k<=9;k++) {

for(l=0;l<=9;l++) {

for(n=0;n<=6;n++) {

biner1=bitRead(angka[l],n);

digitalWrite(n,biner1);

}

for(n=0;n<=6;n++){

biner2=bitRead(angka[k],n);

digitalWrite(n+7,biner2);

}

delay(100);

Screen Shoot Count-Up

1. Start ( CountUp==HIGH)

2. End

2. Sub Program Count Down

Pertama mengatur fungsi If, dengan fungsi count down dalam keadaan HIGH. Kemudian pada loop for , untuk fungsi k adalah k-- dan l adalah l--. Selanjutnya, mengatur fungsi biner untuk membaca fungsi n sebagai fungsi binary yang akan menyalakan seven segment dalam bentuk decimal dengan fungsi binary. Kemudian memberikan selang waktu 100 milisekon sebagai jeda, sehingga display puluhan merupakan perubahan dalam detik , sedang display satuan merupakan perubahan dalam 0,1 detik :

for(k=0;k<=9;k--) {

for(l=0;l<=9;l--) {

for(n=0;n<=6;n++) {

biner1=bitRead(angka[l],n);

digitalWrite(n,biner1);

}

for(n=0;n<=6;n++){

biner2=bitRead(angka[k],n);

digitalWrite(n+7,biner2);

}

delay(100);

Screen Shoot Count-Down

1. Start ( CountDown==HIGH)

2. End

3. Sub Program Count Random

Pertama mengatur fungsi If, dengan fungsi count random dalam keadaan HIGH. Kemudian mengatur bagian puluhan seven segment sebagai CountRandom2, dan satuan seven segment sebagai CountRandom1. Selanjutnya, mengatur fungsi biner untuk membaca fungsi n sebagai fungsi binary yang akan menyalakan seven segment dalam bentuk decimal dengan fungsi binary.

CountRandom1=random(0,9);

CountRandom2=random(0,9);

for(n=0;n<=6;n++){

biner1=bitRead(angka[CountRandom1],n);

biner2=bitRead(angka[CountRandom2],n);

digitalWrite(n,biner1);

digitalWrite(n+7,biner2);

}

delay(100);

}

}

Screen Shoot Count-Random

1. Click1 ( CountRandom==HIGH)

2. Click2 ( CountRandom==HIGH)

3. Click3 ( CountRandom==HIGH)

top related