Anda di halaman 1dari 14

MODUL PRAKTIKUM

SISTEM MIKROKONTROLER

Disusun Untuk Memenuhi Tugas Matakuliah Elektronika Digital


Dibimbing Oleh Ibu Dyah Lestari, S.T., M.ENG

Kelompok :
Gempur Riadis S (160534611682)
Hanina Mareta (160534611676)
Mohammad Agung W (160534611617)
Wardatul Jannah (160534611170)

LABORATORIUM MIKROPROSESSOR
JURUSAN TEKNIK ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS NEGERI MALANG
September 2017
KATA PENGANTAR

Puji syukur ke hadirat Tuhan YME, revisi petunjuk praktikum yang kedua telah selesai.
Perubahan yang dilakukan dalam Modul Praktikum Sistem Mikrokontroler ini dari modul
praktikum sebelumnya merupakan perubahan berkaitan dengan model pembelajaran yang
diterapkan. Untuk meningkatkan kemampuan mahasiswa dalam menulis program sampai dengan
menganalisis program tersebut, langkah-langkah praktikum diarahkan pada penyelesaian problem
solving dimana menuntut mahasiswa untuk menulis program dari awal sampai akhir tanpa bantuan
wizard yang ada dalam editor bahasa pemrograman yang digunakan yaitu Code Vision AVR.
Harapannya, pemahaman mahasiswa semakin baik, mahir menulis program untuk
mikrokontroler, dan mampu menjelaskan algoritma program tersebut. Akan tetapi, perbaikan yang
telah dilakukan akan selalu berkelanjutan sesuai dengan perkembangan serta masukan dari
berbagai pihak.
Kami menyampaikan terima kasih yang besar-besarnya pada semua pihak yang telah
terlibat dalam penyusunan modul praktikum ini, yaitu teknisi dan asisten praktikum di
Laboratorium Mikroprosessor. Akhir kata, semoga semua usaha yang telah dilakukan
berkontribusi pada kompetensi lulusan program Studi yang ada di Jurusan Teknik Elektro Fakultas
Teknik Universitas Negeri Malang.

Malang, Agustus 2015

Penulis
TUJUAN

 Mengetahui dan memahami cara mengantarmukakan mikrokontroler dengan rangkaian


input saklar toggle.
 Mengetahui dan memahami bagaimana memrogram mikrokontroler untuk membaca data
input dari saklar toggle.

SAKLAR TOGGLE

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

(a) Salah satu toggle switch (b) Simbol elektronik

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.
Rangkaian LED sama dengan rangkaian dalam
Modul I. Kedelapan rangkaian saklar tersebut
dihubungkan ke sebuah soket jumper bernama
INPUT.
PERINTAH DASAR MEMBACA DATA

 Sebelum membaca data, perlu dibuat deklarasi variabel untuk data yang dimasukkan. Data
bisa bertipe char. Deklarasi variabel diletakkan di variabel lokal pada main program.
void main (void)
{
//Declare your local variables here
unsigned char data_in;

 Untuk membaca data byte ke PORTX (X=A, B, C, D) digunakan statement
data_in = PINX;
contoh: data_in = PINB;
 Untuk membaca data bit ke PORTX.Y (X=A, B, C, D dan Y=0, 1, 2 , 3, 4, 5, 6, 7)
digunakan statement
data_in = PINX.Y;
contoh: data_in = PINB.1;

ALAT DAN BAHAN YANG DIGUNAKAN

 1 set PC/Laptop yang sudah berisi program Code Vision dan Khazama
 1 buah catu daya DC +5V
 1 buah multimeter
 1 buah ISP Downloader AVR
 1 buah sistem minimum AVR
 1 buah I/O
 1 buah kabel printer USB
 2 buah kabel pita hitam

PROSEDUR

1. Hubungkan soket jumper PORTB pada minimum system dengan soket jumper OUTPUT
pada I/O dan soket jumper PORTC pada minimum system dengan soket jumper INPUT
pada I/O
2. Buka program Code Vision AVR
3. Buat file baru dengan cara klik File>>New, atau klik icon Create a New File or Project,
atau ketik Ctrl + N. Kemudian muncul dialog box, pilih Project pada File Type, kemudian
klik OK.
4. Kemudian klik No ketika muncul dialog box untuk menanyakan apakah ingin
menggunakan CodeWizardAVR

5. Kemudian pilih lokasi penyimpanan file dan buat folder baru dengan nama “praktikum 2”
untuk menyimpan file.
6. Kemudian simpan file pada folder tersebut dan berinama file dengan nama ”saklar“ dan
klik Save.
7. Kemudian muncul dialog box Configure Project. Pada subtab Code Generation pada tab C
Compiler pilih chip ATmega8535 dan ubah Clock menjadi 4 Mhz. Kemudian klik OK

8. Buat file Source baru dengan cara klik File>>New, atau klik icon Create a New File or
Project, atau ketik Ctrl + N. Kemudian muncul dialog box, pilih Source pada File Type,
kemudian klik OK. Kemudian Save as file Source itu dengan nama ”saklar“ dan simpan di
dalam direktori yang sama yaitu di dalam folder “praktikum 2”.
9. Hubungkan file Project dengan File Source dengan Cara klik Project>> Configure

10. Pada dialog box, klik Add pada tab Input Files. Kemudian pilih file yang sudah anda
simpan tadi dan klik Open. Kemudian klik OK.

11. Jika sudah ditambahkan, maka pada Code Navigator akan terlihat saklar.c.
12. Tambahkan file header

13. Buat program utama dan inisialisasikan 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:

14. Tambahkan deklarasi variabel lokal di bawah ini dalam program utama.

15. Tuliskan dalam program utama tepatnya tuliskan program didalam while (1)

16. Compile program tersebut dengan cara klik Project>> Compile atau ketik F9.
17. Jika ada error , koreksi program yang error dan perbaiki. Jika sudah tidak ada yang error
build program tersebut dengan cara klik Project>> Build atau klik Shift + F9.
18. Hubungkan kabel usb printer antara PC/ Laptop dengan trainer.
19. Buka aplikasi Khanzama AVR Programmer. Pilih ATmega8535 pada pilihan chip AVR.
Kemudian buka program kompilasi saklar.hex biasanya terdapat pada folder atau sub
derektori..\Exe yang terdapat pada folder “praktikum 2 “ dengan cara klik file>> Load
Flash File to Buffer atau ketik Ctrl + L kemudian klik Open.
20. Klik Auto Program kemudian pindahkan saklar sesuai tabel 2.1 dibawah, amati dan catat
nyala LED.

Tabel 2.1 Program Saklar1


No. Saklar LED
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
1 0 0 0 0 0 0 0 1
2 0 0 0 0 0 0 1 1
3 0 0 0 0 0 1 0 1
4 0 0 0 0 1 0 0 1
5 0 0 0 1 0 0 0 1
6 0 0 1 0 0 0 0 1
7 0 1 0 0 0 0 0 1
8 1 0 0 0 0 0 0 1
9 1 1 1 1 1 1 1 1

21. Hapus program yang ada pada program utama tepatnya program di dalam while (1)
kemudian tuliskan program di dalam while(1).

22. Compile dan Build program, jika ada yang error perbaiki program. Masukkan file hex
menggunakan Khanzama AVR Programer. Klik auto program.
23. Pindahkan saklar sesuai tabel 3.1 dibawah, amati dan catat nyala LED.

Tabel 3.1 Program Saklar2


No. Saklar LED
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
1 0 0 0 0 0 0 0 1
2 0 0 0 0 0 0 1 1
3 0 0 0 0 0 1 0 0
4 0 0 0 0 1 0 0 1
5 0 0 0 1 0 0 0 0
6 0 0 1 0 0 0 0 1
7 0 1 0 0 0 0 0 0

24. Buat program untuk masing–masing algoritma berikut dengan menggunakan if :


a) Jika switch bit 0 berlogika 1 maka LED bit 4 menyala.
b) Jika switch bit 1 berlogika 1 maka LED bit 7 menyala.
25. Buat satu program untuk masing–masing algoritma berikut dengan menggunakan if-else.
a) Jika switch bit 0 berlogika 1 maka LED bit 4 menyala.
b) Jika switch bit 1 berlogika 1 maka LED bit 7 menyala.
c) Jika switch bit 2 berlogika 1 maka LED menyala dengan konfigurasi
ON-OFF-ON-OFF-ON-OFF-ON-OFF (bit7-bit0).
d) Jika switch bit 3 berlogika 1 maka LED menyala dengan konfigurasi
OFF-ON-OFF-ON-OFF-ON-OFF-ON (bit7-bit0).
e) Jika switch bit 4 berlogika 1 maka LED menyala semua.
f) JIka switch bit 5 berlogika 1 maka LED mati semua.
g) Jika switch bit 6 berlogika 1 maka LED menyala berurutan mulai dari bit0 ke bit7 lalu
kembali lagi ke bit0 dengan delay 1 detik
h) Jika switch bit 7 berlogika 1 maka LED akan menyala dengan nilai sama dengan dua
digit terakhir NIM anda.

DATA HASIL PERCOBAAN

1. Tabel 2.1

 Scrypt
 Tabel hasil
No. Saklar LED Dokumentasi
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1

2 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1

3 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 1

4 0 0 0 0 1 0 0 1 0 0 0 0 1 0 0 1

5 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 1
6 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 1

7 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1

8 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1

9 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

2. Tabel 3.1

 Scrypt
 Tabel hasil
No. Saklar LED Dokumentasi
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0

2 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0

3 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0

4 0 0 0 0 1 0 0 1 1 0 0 0 0 0 0 0

5 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0
6 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 0

7 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0

3. Source code program pada percobaan langkah 9


4. Source code program pada percobaan langkah 10

ANALISA DATA

1. Analisa Program Saklar1 dan Saklar2


Jawab :
- Pada skript program saklar 1 menggunakan perintah output dari LED merupakan semua
bit mulai dari bit 0 sampai bit 7 akan menampilkan output yang sesuai dengan nilai
input setiap bit
- Pada scrypt program yang kedua “
2. Instruksi apa yang digunakan untuk membaca data input?
Jawab :
Untuk membaca data perlu dibuat deklarasi variabel yang dimasukkan. Deklarasi variabel
tersebut diletakkan di variabel lokal pada main program. Statement data_in dalam program
lah yang digunakan untuk membaca data PORTX dan ditampilkan pada PORTY

3. Apakah perbedaan program yang menggunakan if dan if-else?


Jawab :
Saat menggunakan program yang menggunakan if terdapat satu kondisi dimana jika
kondisi tersebut benar maka pernyataan didalamnya akan dijalankan dalam pemrosesan
program. Jika kondisi tersebut salah maka pemrosesan program akan selesai.
Saat menggunakan program yang menggunakan if-else terdapat dua kondisi
dimana jika kondisi pertama benar maka pernyataan yang ada di kondisi pertama akan
dijalankan dalam pemrosesan program. Jika kondisi pertama salah maka akan menjalankan
kondisi kedua yang mana terdapat pernyataan didalamnya.

Anda mungkin juga menyukai