MODUL II ANTARMUKA MIKROKONTROLER DENGAN

MODUL II ANTARMUKA MIKROKONTROLER DENGAN TOGGLE SWITCH
Imam Arief SN (110534406826)
TanggalPercobaan: 20/09/2012
PTE408 – Praktikum Mikroprosesor

Laboratorium Mikroprosesor S1 Pendidikan Teknik Elektro–Fakultas Teknik
Universitas Negeri Malang
Abstrak
Mikokontroler sebagai alat pemproses
program untuk menjalankan perintah
menggunakan bahasa mesin. Dengan
menggunakan toggle switch untuk
psrsmeter
input
dengan
cara
memasukan
inputan
program
sebelumnya pada mikrokontroler akan
terlihat hasil keluarannya dari nyala

atau tidaknya lampu LED.
Kata kunci: mikrokontroler, LED, toggle
switch.
1. PENDAHULUAN

Dalam modul I/O yang dipakai dalam
praktikum, saklar toggle yang digunakan
diberi rangkaian tambahan berupa rangkaian
LED untuk melihat secara langsung logika
yang ada pada saklar. Kedelapan rangkaian
saklar tersebut dihubungkan ke sebuah soket
jumper bernama input. Berikut gambar
rangkaian yang menggunakan toggle switch

Mikrokontroler
merupakan
keluarga
mikroprosesor yaitu sebuah chip yang dapat
melakukan pemprosesan data secara digital
sesuai dengan perintah bahasa computer

yang diberikan perusahaan pembuatnya.
Banyak aplikasi yang dapat dibangun
berbasis mikrokontroler, hal ini dikarenakan
bentuk yang Compaq san sederhana untuk
membangun
suatu
system
berbasis
mikrokontroler.
Saklar toggle merupakan bentuk saklar
yang paling sederhana, dioperasikan secara
manual dengan sebuah tuas. Menurut
konvensinya,
posisi
tuas
kebawah
mengindikasikan pada keadaan off atau
terbuka, sedangkan apabila tuas keadaan
keatas diindikasi saklar dalam kondisi on atau
tertutup/terhubung.

Untuk memfungsikan toggle switch
supaya
bisa
menyalakan
LED
sesuai
keinginan diperlukan program-program yang
dapat didownload kedalam memori chip.
Dengan demikian LED bisa menyala sesuai
dengan bit pada toggle switch.

2. STUDI PUSTAKA
Saklar Toggle adalah saklar elektrik yang
digerakkan secara manual oleh batang
mekanik. Saklar toogle tersedia dalam
berbagai bentuk dan ukuran, serta digunakan
dalam berbagai aplikasi. Gambar dibawah
memperlihatkan bentuk fisik dan symbol
saklar toggle.


3. METODOLOGI

Alat dan bahan yang digunakan:







1 set PC/Laptop untuk memprogrogram melalui
Code Vision dan Khazama
1 buah ISP Downloader AVR
1 buah minimum AVR
1 buah I/O
1 buah kabel printer USB
2 buah kabel pita hitam

Prosedur:


LaporanPraktikum - LaboratoriumMikroprosesor S1 PendidikanTeknikElektro– FT UM

1

Soket
jumper
PORTB
pada
minimum
system
dihubungkan dengan soket jumper port Output pada
I/O. Soket jumper PORTC pada minimum system dengan
soket jumper INPUT I/O

b. Jika switch Bit 1 berlogika 1 maka
LED nit 7 menyala
while (1)
{
if(PINC.1==1)
PORTB.7=1; }


Buka Program Code Vision AVR

Membuat projek baru dengan inisialisasi PORTB sebagai
output (DDRB=FFH) dan output value=0 (PORTB=00H),
dan PORTC sebagai input (DDRC=00H) dan resistor
pullup dihubungkan (PORTC=FFH) sehingga pada
program bagian inisialisasi PORTB dan PORTC terlihat
sebagai berikut:

c. Jika switch bit 2 berlogika 1 maka
LED menyala dengan konfigurasi
ON-OFF-ON-OFF-ON-OFF-ON-OFF
(bit7-bit0)
while (1)
{
if(PINC.2==1)

PORTB=0x00;
DDRB=0xff;


PORTB=0b10101010; }

PORTC=0xff;
DDRC=0x00;
Tambahkan delarasi variable local dalam program
utama:
unsigned char data_in;

d. Jika switch bit 3 berlogika 1 maka
LED menyala dengan konfigurasi
OFF-ON-OFF-ON-OFF-ON-OFF-ON
(bit7-bit0)
while (1)
{
if(PINC.3==1)

Lakukan Percobaan sesuai perintah pada Modul

PORTB=0b01010101;}


4. HASIL DAN ANALISIS
Tabel Percobaan Program Saklar1
No.
1
2
3
4
5
6
7
8
9

7
0
0
0
0
0

0
0
1
1

6
0
0
0
0
0
0
1
0
1

5
0
0
0

0
0
1
0
0
1

Saklar
4 3
0 0
0 0
0 0
0 1
1 0
0 0
0 0
0 0
1 1

2

0
0
1
0
0
0
0
0
1

1
0
1
0
0
0
0
0
0
1

0
1
1
1
1
1
1
1
1
1

7
0
0
0
0
0
0
0
1
1

6
0
0
0
0
0
0
1
0
1

5
0
0
0
0
0
1
0
0
1

4
0
0
0
0
1
0
0
0
1

LED
3 2
0 0
0 0
0 1
1 0
0 0
0 0
0 0
0 0
1 1

e. Jika switch bit 4 berlogika 1 maka
LED menyala semua
1
0
1
0
0
0
0
0
0
1

0
1
1
1
1
1
1
1
1
1

1
2
3
4
5
6
7

7
0
0
0
0
0
0
0

6
0
0
0
0
0
0
1

5
0
0
0
0
0
1
0

Saklar
4 3 2
0 0 0
0 0 0
0 0 1
0 1 0
1 0 0
0 0 0
0 0 0

1
0
1
0
0
0
0
0

0
1
1
0
1
0
1
0

7
1
1
0
1
0
1
0

6
0
0
0
0
0
0
0

5
0
0
0
0
0
0
0

4
0
0
0
0
0
0
0

LED
3 2
0 0
0 0
0 0
0 0
0 0
0 0
0 0

1
0
0
0
0
0
0
0

0
0
0
0
0
0
0
0

1) Buat Program menggunakan fungsi if:
a. Jika switch bit 0 berlogika maka
LED bit 4 menyala
while (1)
{
if(PINC.0==1)
PORTB.4=1; }

f.

Jika switch bit 5 berlogika 1 maka
LED mati semua
while (1)
{
if(PINC.5==1)
PORTB=0x00; }

Tabel Percobaan Program Saklar2
No.

while (1)
{
if(PINC.4==1)
PORTB=0xf; }

g. Jika switch bit 6 berlogika 1 maka
LED menyala berurutan mulai dari
bit7 lalu kembali lagi ke bit0
dengan delay 1 detik
while (1)
{
if(PINC.6==1){
PORTB=0b00000001;
delay_ms(1000);
PORTB=0b00000010;
delay_ms(1000);
PORTB=0b00000100;
delay_ms(1000);
PORTB=0b00001000;
delay_ms(1000);
PORTB=0b00010000;
delay_ms(1000);
PORTB=0b00100000;

LaporanPraktikum - LaboratoriumMikroprosesor S1 PendidikanTeknikElektro– FT UM

2

delay_ms(1000);
PORTB=0b01000000;
delay_ms(1000);
PORTB=0b10000000;
delay_ms(1000);
PORTB=0b00000001;
delay_ms(1000);}

e. Jika switch bit 4 berlogika 1 maka
LED menyala semua
while (1)
{
if(PINC.4==1)
PORTB=0xf;
else
PORTB=0x00; }

h. Jika switch bit 7 berlogika 1 maka
LED akan menyala dengan nilai
sama dengan dua digit terakhir
NIM anda. (NIM=26)
while (1)
{
if(PINC.7==1)
PORTB=0b00011010; }

2) Buat Program menggunakan fungsi ifelse:
a. Jika switch bit 0 berlogika maka
LED bit 4 menyala
while (1)
{
if(PINC.0==1)
PORTB.4=1;
else
PORTB.4=0; }

b.

Jika switch Bit 1 berlogika 1 maka
LED nit 7 menyala
while (1)
{
if(PINC.1==1)
PORTB.7=1;
else
PORTB.7=0; }

c. Jika switch bit 2 berlogika 1 maka
LED menyala dengan konfigurasi
ON-OFF-ON-OFF-ON-OFF-ON-OFF
(bit7-bit0)
while (1)
{
if(PINC.2==1)
PORTB=0b10101010;
else
PORTB=0b00000000; }

d. Jika switch bit 3 berlogika 1 maka
LED menyala dengan konfigurasi
OFF-ON-OFF-ON-OFF-ON-OFF-ON
(bit7-bit0)
while (1)
{
if(PINC.3==1)
PORTB=0b01010101;
else
PORTB=0b00000000; }

f.

Jika switch bit 5 berlogika 1 maka
LED mati semua
while (1)
{
if(PINC.5==1)
PORTB=0x00;
else
PORTB=0x00; }

g. Jika switch bit 6 berlogika 1 maka
LED menyala berurutan mulai dari
bit7 lalu kembali lagi ke bit0
dengan delay 1 detik
while (1)
{
if(PINC.6==1){
PORTB=0b00000001;
delay_ms(1000);
PORTB=0b00000010;
delay_ms(1000);
PORTB=0b00000100;
delay_ms(1000);
PORTB=0b00001000;
delay_ms(1000);
PORTB=0b00010000;
delay_ms(1000);
PORTB=0b00100000;
delay_ms(1000);
PORTB=0b01000000;
delay_ms(1000);
PORTB=0b10000000;
delay_ms(1000);
PORTB=0b00000001;
delay_ms(1000);
else
PORTB=0x00; }

h. Jika switch bit 7 berlogika 1 maka
LED akan menyala dengan nilai
sama dengan dua digit terakhir
NIM anda.(26)
while (1)
{
if(PINC.7==1)
PORTB=0b00011010;
else
PORTB=0x00; }

3) Buat program keseluruhan:

LaporanPraktikum - LaboratoriumMikroprosesor S1 PendidikanTeknikElektro– FT UM

3

while(1)
{
A1=PINC.0;
A2=PINC.1;
A3=PINC.2;
A4=PINC.3;
A5=PINC.4;
A6=PINC.5;
A7=PINC.6;
A8=PINC.7;
A9=PINC;
if (A1 == 1)
{
PORTB=0x10;}
else if(A2==1){
PORTB=0x80;}
else if (A3==1){
PORTB=0xaa;}
else if (A4==1){
PORTB=0x55;}
else if (A5==1){
PORTB=0xf;}
else if (A6==1){
PORTB=0x00;}
else if (A7==1){
PORTB=0x01;
delay_ms(1000);
PORTB=0x02;
delay_ms(1000);
PORTB=0x04;
delay_ms(1000);
PORTB=0x08;
delay_ms(1000);
PORTB=0x10;
delay_ms(1000);
PORTB=0x20;
delay_ms(1000);
PORTB=0x40;
delay_ms(1000);
PORTB=0x80;
delay_ms(1000);
PORTB=0x40;
delay_ms(1000);
PORTB=0x20;
delay_ms(1000);
PORTB=0x10;
delay_ms(1000);
PORTB=0x08;
delay_ms(1000);
PORTB=0x04;
delay_ms(1000);
PORTB=0x02;
delay_ms(1000);
PORTB=0x01;
delay_ms(1000);
}
else if (A8==1){
PORTB=0b00011010;}
else if (A9==0){
PORTB=0x00;}

fungsi if-else perintah yang diinputkan
bisa lebih dari satu pernyataan.

6. KESIMPULAN
Berdasarkan percobaan
disimpulkan bahwa:

diatas

dapat

a) Saklar toggle dapat menjalankan
program bila saklar dalam kondisi On,
namun jika dalam kondisi Off saklar
tidak akan menjalankan program.
b) Fungsi
If
dalam
pemrograman
digunakan menjalan perintah jika
pernyataan benar, namun jika salah
perintah tidak dijalankan.
c) Fungsi If-else dalam pemrograman
digunakan
untuk
pernyataan
majemuk. Jika pernyataannya bukan
pernyataan pertama maka yang akan
dijalankan pernyataan selanjutnya.

DAFTARPUSTAKA
[1]

Jackstar
H.
PanduanPenulisanLaporan,
Publishing, Bandung, 2008.

S.,
Jacks

[2]

Adel S. Sedra dan Kennet C. Smith,
Microelectronic Circuits, Oxford
University Press, USA, 1997.

[3]

mikrolab.wordpress.com

[4]

Datasheet ATMega 8535

5. ANALISA
Program menggunakan fungsi If hanya
satu perintah yang dijalankan, sedangkan
LaporanPraktikum - LaboratoriumMikroprosesor S1 PendidikanTeknikElektro– FT UM

4