16
TUGAS SISTEM MIKROPROSESSOR PUSH BUTTON – 7 SEGMEN NAMA : GANANG SAPUTRO NIM : 14/363579/TK/41672 JURUSAN TEKNIK ELEKTRO & TEKNOLOGI INFORMASI FAKULTAS TEKNIK UNIVERSITAS GADJAH MADA

Tugas Sistem Mikroprosessor-sismik2 41672

Embed Size (px)

DESCRIPTION

7 Segment

Citation preview

TUGAS SISTEM MIKROPROSESSORPUSH BUTTON 7 SEGMEN

NAMA: GANANG SAPUTRONIM: 14/363579/TK/41672

JURUSAN TEKNIK ELEKTRO & TEKNOLOGI INFORMASI FAKULTAS TEKNIK UNIVERSITAS GADJAH MADAYOGYAKARTA2015

Program Pada Virtual Bread Board

int pinA = 3;int pinB = 4;int pinC = 5;int pinD = 6;int pinE = 7;int pinF = 8;int pinG = 9;const int buttonPin = 0;int buttonState = 0;void setup() {pinMode(buttonPin, INPUT);pinMode(pinA, OUTPUT);pinMode(pinB, OUTPUT);pinMode(pinC, OUTPUT);pinMode(pinD, OUTPUT);pinMode(pinE, OUTPUT);pinMode(pinF, OUTPUT);pinMode(pinG, OUTPUT);}

void loop() {buttonState = digitalRead(buttonPin); if(buttonState == HIGH){for(int i=0;i < 16;i++) {tampilkan(i);delay(1000);}}}

void tampilkan(int kode){switch(kode) {case 0:digitalWrite(pinA, 0);digitalWrite(pinB, 1);digitalWrite(pinC, 1);digitalWrite(pinD, 1);digitalWrite(pinE, 1);digitalWrite(pinF, 1);digitalWrite(pinG, 1);break;case 1:digitalWrite(pinA, 0);digitalWrite(pinB, 0);digitalWrite(pinC, 0);digitalWrite(pinD, 0);digitalWrite(pinE, 1);digitalWrite(pinF, 1);digitalWrite(pinG, 0);break;case 2:digitalWrite(pinA, 1);digitalWrite(pinB, 0);digitalWrite(pinC, 1);digitalWrite(pinD, 1);digitalWrite(pinE, 0);digitalWrite(pinF, 1);digitalWrite(pinG, 1);break;case 3:digitalWrite(pinA, 1);digitalWrite(pinB, 0);digitalWrite(pinC, 0);digitalWrite(pinD, 1);digitalWrite(pinE, 1);digitalWrite(pinF, 1);digitalWrite(pinG, 1);break;case 4:digitalWrite(pinA, 1);digitalWrite(pinB, 1);digitalWrite(pinC, 0);digitalWrite(pinD, 0);digitalWrite(pinE, 1);digitalWrite(pinF, 1);digitalWrite(pinG, 0);break;case 5:digitalWrite(pinA, 1);digitalWrite(pinB, 1);digitalWrite(pinC, 0);digitalWrite(pinD, 1);digitalWrite(pinE, 1);digitalWrite(pinF, 0);digitalWrite(pinG, 1);break;case 6:digitalWrite(pinA, 1);digitalWrite(pinB, 1);digitalWrite(pinC, 1);digitalWrite(pinD, 1);digitalWrite(pinE, 1);digitalWrite(pinF, 0);digitalWrite(pinG, 1);break;case 7:digitalWrite(pinA, 0);digitalWrite(pinB, 0);digitalWrite(pinC, 0);digitalWrite(pinD, 0);digitalWrite(pinE, 1);digitalWrite(pinF, 1);digitalWrite(pinG, 1);break;case 8:digitalWrite(pinA, 1);digitalWrite(pinB, 1);digitalWrite(pinC, 1);digitalWrite(pinD, 1);digitalWrite(pinE, 1);digitalWrite(pinF, 1);digitalWrite(pinG, 1);break;case 9:digitalWrite(pinA, 1);digitalWrite(pinB, 1);digitalWrite(pinC, 0);digitalWrite(pinD, 0);digitalWrite(pinE, 1);digitalWrite(pinF, 1);digitalWrite(pinG, 1);break;case 10:digitalWrite(pinA, 1);digitalWrite(pinB, 1);digitalWrite(pinC, 1);digitalWrite(pinD, 0);digitalWrite(pinE, 1);digitalWrite(pinF, 1);digitalWrite(pinG, 1);break;case 11:digitalWrite(pinA, 1);digitalWrite(pinB, 1);digitalWrite(pinC, 1);digitalWrite(pinD, 1);digitalWrite(pinE, 1);digitalWrite(pinF, 0);digitalWrite(pinG, 0);break;case 12:digitalWrite(pinA, 0);digitalWrite(pinB, 1);digitalWrite(pinC, 1);digitalWrite(pinD, 1);digitalWrite(pinE, 0);digitalWrite(pinF, 0);digitalWrite(pinG, 1);break;case 13:digitalWrite(pinA, 1);digitalWrite(pinB, 0);digitalWrite(pinC, 1);digitalWrite(pinD, 1);digitalWrite(pinE, 1);digitalWrite(pinF, 1);digitalWrite(pinG, 0);break;case 14:digitalWrite(pinA, 1);digitalWrite(pinB, 1);digitalWrite(pinC, 1);digitalWrite(pinD, 1);digitalWrite(pinE, 0);digitalWrite(pinF, 0);digitalWrite(pinG, 1);break;case 15:digitalWrite(pinA, 1);digitalWrite(pinB, 1);digitalWrite(pinC, 1);digitalWrite(pinD, 0);digitalWrite(pinE, 0);digitalWrite(pinF, 0);digitalWrite(pinG, 1);break;}}

Pada program ini, saya menampilkan 7 Segmen dengan tampilan dari angka 0 sampai dengan 9, beserta huruf A sampai F. Pada program ini saya menggunakan fungsi switch case dan break untuk melakukan looping dari case 0 sampai case 15 (Case 0 sampai 9 merupakan angka 1 sampai dengan 9, Case 10 sampai 15 merupakan huruf A sampai F). Pada program ini saya gunakan juga fungsi if sebagai fungsi on bila button bernilai HIGH, namun tidak saya berikan fungsi else sebagai tanda off bila button bernilai LOW, sehingga ketika button bernilai LOW, hanya akan terjadi pemberhentian looping apabila kondisi for telah terpenuhi.

Hasil eksekusi program pada Virtual BreadBoardCase 0

Case 1

Case 2

Case 3

Case 4

Case 5

Case 6

Case 7

Case 8

Case 9

Case 10

Case 11

Case 12

Case 13

Case 14

Case 15