Laporan Proyek 1

18
Laporan Praktikum Laboratorium MIKROKONTROLER 1 AVR AT89S52 Proyek 01 Luaran Diuun o!"#$ K"!ompok EK%2& ' (1 (1 %A)" Kurnia*an NIM +,+2,1+,2,(1 (8 %-ari -ai#o! Aur.n +,+2,1+,2,(8 15 22 % Mu#amma) Amin Mar/u0i % Tau i0 Arra.i) +,+2,1+,2,15 +,+2,1+,2,22 Do"n$ Dr, Samu"! ETA3 In4%T" #,6M,T, PRO7RAM ST DI TEKNIK ELEKTRONIKA R SAN TEKNIK ELEKTRO POLITEKNIK NE7ERI SEMARAN7 2(1:%2(15

description

laporan proyek mikrokontroler tahun 2015.nyala LEDlampu kedap kedip sederhana

Transcript of Laporan Proyek 1

Lab. Mikrokontroler I15

Laporan Praktikum

Laboratorium MIKROKONTROLER 1AVR AT89S52

Proyek 01Luaran

Disusun oleh:

Kelompok EK-2C / 0101- Ade KurniawanNIM3.32.13.2.01

08- Faris Faishol Auryn3.32.13.2.08

1522 - Muhammad Amin Marzuqi- Taufiq Arrasyid3.32.13.2.153.32.13.2.22

Dosen: Dr. Samuel BETA; Ing-Tech.,M.T.

PROGRAM STUDI TEKNIK ELEKTRONIKAJURUSAN TEKNIK ELEKTROPOLITEKNIK NEGERI SEMARANG2014-2015

Proyek 01LUARAN

1. Tujuan Tujuan dari percobaan ini praktikan dapat : Memahami cara kerja sistem pengendali masukan luaran digital secara keseluruhan dan mampu membuat sistem untuk membaca masukan dan menghasilkan luaran digital Memahami cara kerja perangkat keras (rangkaian) pengendali masukan luaran digital dan mampu menghubungkan mikrokontroler AVR AT89C52 dengan rangkaian penggerak masukan luaran Memahami cara kerja perangkat lunak (program) dan perintah bahasa assembly mikrokontroler AVR AT89C52 dan mampu membuat program untuk rangkaian penggerak masukan luaran Memahami cara kerja sistem tunda pada perangkat lunak dan mampu membuat program tunda

2. Dasar Teori Untuk berhubungan dengan dunia luar mikrokontroler AVR AT 8952 mempunyai empat buah pintu masukan luaran 8 bit yaitu: P0, P1, P2 dan P3. Setiap pintu mempunyai alamat dan dapat berfungsi sebagai masukan maupun luaran. Alamat pintu P0=80h, P1=90h, P2=A0h dan P3=B0h. Selain itu setiap dari setiap pintu juga memiliki alamat bit tersendiri dan dapat diakses secara individu.

Perintah dasar peralihan data untuk membaca/menulis data dari/ke pintu yaitu:Membaca 1 byte data dari luar(masukan)Menulis 1 byte data ke luar(luaran)

movA,Pxx:0/1/2/3movPx,#xxxxxxxxb#yyy#zzhnilai segera biner /des /hex

xxhxx: alamat pintuxxh,Axx: alamat pintu

Membaca 1 bit data dari luar(masukan)Menulis 1 bit data ke luar(luaran)

movC,Px.yx:0/1/2/3y:0,1, ... 7movPx.y,Cx:0/1/2/3y:0,1, ... 7

xxhxx: alamat bit pintuxxh,xx: alamat bit pintu

setbPx.yx:0/1/2/3y:0,1, ... 7

clr

3. Praktikum 3.1. LED 3.1.1. PermasalahanMembuat progam untuk menampilkan kode kelompok LED (1:padam 0:menyala)Masukan: tidak adaProses: peralihan data segera ke pintu P0Keluaran: pintu P0.0-7 (8 buah LED).Gambar rangkaian :

Membuat tabel hasil perhitungan dan hasil percobaan, membandingkan dan menjelaskan hasil keduanya.

Tabel 1 Tampilan LEDD0D1D2D3D4D5D6D7LED YANG PADAM

01111100LED yang padam yaitu LED pada P0.0, P0.6, P0.7

3.1.2. Penyelesaian

3.1.2.1. Diagram Alir

3.1.2.2. Program

;=========================================;P011a-LED; program untuk menampilkan kode kelompok;pada LED (1:padam 0:menyala);----------------------------------------;Materi baru:;- Luaran LED (Pintu P0);- memodifikasi rangkaian EdSIM lewat (DI/LD);----------------------------------------;Komponen:;- 1x Bargraf (8xLED);- 1x R Net 120 ohm;========================================

;=== Deklarasi variabel ===kodeC1 equ 11000001b;kode kelompokled equ P0;LED terpasang di pintu P0

;=== Pengesetan Awal ====ORG 0;alamat awal

;=== Program Utama ===

mulai:;tampilkan kodeMOV A,#kodeC1 ;ambbil kodeMOV led,A ;tampilkan di LED SJMP mulai ;kembali ke mulai;=== Sub program ===

;=== Tabel Konversi ===END;selesai

3.1.2.3. Hasil Percobaan

Tampilan hasil simulasi EdSim, M-IDE, Proteus dan hasil nyata terlihat (dapat berupa foto) Tampilan Logic Diagram pada EdSim

Tampilan pada Source Code Pane pada EdSim;=========================================;P011a-LED; program untuk menampilkan kode kelompok;pada LED (1:padam 0:menyala);----------------------------------------;Materi baru:;- Luaran LED (Pintu P0);- memodifikasi rangkaian EdSIM lewat (DI/LD);----------------------------------------;Komponen:;- 1x Bargraf (8xLED);- 1x R Net 120 ohm;========================================

;=== Deklarasi variabel ===kodeC1 equ 11000001b;kode kelompokled equ P0;LED terpasang di pintu P0

;=== Pengesetan Awal ====ORG 0;alamat awal

;=== Program Utama ===

mulai:;tampilkan kode MOV A,#kodeC1;ambbil kode MOV led,A;tampilkan di LED SJMP mulai;kembali ke mulai;=== Sub program ===

;=== Tabel Konversi ===END;selesai

Tampilan output pada EdSim

Tampilan output pada Proteus

Untuk mendapatkan hasil percobaan ini, langkah percobaan yang dilakukan adalah sebagai berikut:1. Membuka aplikasi EdSim51DI, geser kursor ke tombol [ DI i LD ], klik [ LI ]. Setelah muncul menunya, mencari LED 0 lalu dikonfigurasi pada P [0] bit [0]. Kemudian simpan, keluar, dan buka kembali 2. Memasukkan program, mengkompilasi [Assm], menjalankan program langkah per langkah [ Step ]. Amati perubahan setiap langkah3. Sebelum keluar simpan dengan nama: p011a-LED.asm dan .hex4. Buka Proteus dan uji coba pada file P0-led5. Jika berhasil lalu hubungkan bootloader ke pintu USB komputer dan ke konektor [PROGRAMER]. Nyalakan modul pelatihan6. Membuka program isp dan menggunggah file p011a-LED.hex ke dalam modul7. Amati output pada modul

3.1.3. Pembahasan

Pada bagian deklarasi variabel, kode kelompok dideklarasikan sebagai kodeC1 yang bernilai 11000001b. Sedangkan led dideklarasikan sebagai output yakni pada PORT 0. Sebelum memasukkan program utama pada mikro dilakukan pengesetan awal terlebih dahulu, yaitu ORG 0 untuk menyatakan nomor memori yang dipakai setelah perintah itu. Mulai digunakan sebagai label. MOV A, #kodeC1 berfungsi memindakan segera data kodeC1 yakni 11000001b pada pada A sehingga pada A akan berisi data dari kodeC1. MOV led,A berfungsi memindahkan segera data dari A menuju led yakni Output. SJMP mulai berfungsi untuk melompat ke label yang telah dideklarasikan untuk alamat kode yang pendek yaitu mulai. Kemudian program ditutup dengan END.

3.2. LEDnot3.2.1. PermasalahanMembuat progam untuk menampilkan kode kelompok LED (0:padam 1:menyala)Masukan: tidak adaProses: peralihan data segera ke pintu P0Keluaran: pintu P0.0-7 (8 buah LED).Gambar rangkaian :

Membuat tabel hasil perhitungan dan hasil percobaan, membandingkan dan menjelaskan hasil keduanya.

Tabel 1 Tampilan LEDD0D1D2D3D4D5D6D7LED YANG PADAM

10000011LED yang padam yaitu LED pada P0.1, P0.2, P0.3, P0.4, P0.5

3.2.2. Penyelesaian

3.2.2.1. Diagram Alir

3.2.2.2. Program

;=========================================;P011b-LEDnot;program untuk menampilkan kode kelompok;pada LED (0:padam 1:menyala);----------------------------------------;Materi baru:;- Luaran LED (Pintu P0);- membalik keadaan(komplemen/not);----------------------------------------;Komponen:;- 1x Bargraf (8xLED);- 1x R Net 120 ohm;========================================

;=== Deklarasi variabel ===kodeC1 equ 11000001b;kode kelompokled equ P0;LED terpasang di pintu P0

;=== Pengesetan Awal ====ORG 0;alamat awal

;=== Program Utama ===

mulai:;tampilkan kode MOV A,#kodeC1 ;ambbil kode CPL A ;membalikkan 01 MOV led,A ;tampilkan di LED SJMP mulai;kembali ke mulai;=== Sub program ===

;=== Tabel Konversi ===END;selesai

3.2.2.3. Hasil Percobaan

Tampilan Logic Diagram pada EdSim

Tampilan Source Code Pane pada EdSim;=========================================;P011b-LEDnot;program untuk menampilkan kode kelompok;pada LED (0:padam 1:menyala);----------------------------------------;Materi baru:;- Luaran LED (Pintu P0);- membalik keadaan(komplemen/not);----------------------------------------;Komponen:;- 1x Bargraf (8xLED);- 1x R Net 120 ohm;========================================

;=== Deklarasi variabel ===kodeC1 equ 11000001b;kode kelompokled equ P0;LED terpasang di pintu P0

;=== Pengesetan Awal ====ORG 0;alamat awal

;=== Program Utama ===

mulai:;tampilkan kode MOV A,#kodeC1 ;ambbil kode CPL A ;membalikkan 01 MOV led,A ;tampilkan di LED SJMP mulai;kembali ke mulai;=== Sub program ===

;=== Tabel Konversi ===END;selesai

Tampilan output pada EdSim

Tampilan output pada Proteus

Untuk mendapatkan hasil percobaan ini, langkah percobaan yang dilakukan adalah sebagai berikut:8. Membuka aplikasi EdSim51DI, geser kursor ke tombol [ DI i LD ], klik [ LI ]. Setelah muncul menunya, mencari LED 0 lalu dikonfigurasi pada P [0] bit [0]. Kemudian simpan, keluar, dan buka kembali 9. Memasukkan program, mengkompilasi [Assm], menjalankan program langkah per langkah [ Step ]. Amati perubahan setiap langkah10. Sebelum keluar simpan dengan nama: p011b-LEDnot.asm dan .hex11. Buka Proteus dan uji coba pada file P0-led12. Jika berhasil lalu hubungkan bootloader ke pintu USB komputer dan ke konektor [PROGRAMER]. Nyalakan modul pelatihan13. Membuka program isp dan menggunggah file p011b-LEDnot.hex ke dalam modul14. Amati output pada modul

3.2.3. Pembahasan

Pada bagian deklarasi variabel, kode kelompok dideklarasikan sebagai kodeC1 yang bernilai 11000001b. Sedangkan led dideklarasikan sebagai output yakni pada PORT 0. Sebelum memasukkan program utama pada mikro dilakukan pengesetan awal terlebih dahulu, yaitu ORG 0 untuk menyatakan nomor memori yang dipakai setelah perintah itu. Mulai digunakan sebagai label. MOV A, #kodeC1 berfungsi memindakan segera data kodeC1 yakni 11000001b pada pada A sehingga pada A akan berisi data dari kodeC1. CPL A berfungsi membalikkan data biner pada A dari 0 menjdi 1 dan 1 menjadi 0, pada A terdapat kode biner 11000001b sehingga jika di balik kodenya menjadi 00111110b. MOV led,A berfungsi memindahkan segera data dari A menuju led yakni Output. SJMP mulai berfungsi untuk melompat ke label yang telah dideklarasikan untuk alamat kode yang pendek yaitu mulai. Kemudian program ditutup dengan END.

3.3. LEDkit 3.3.1. PermasalahanMembuat progam untuk menampilkan kode kelompok LED (1:padam 0:menyala)Masukan: tidak adaProses: peralihan data segera ke pintu P0Keluaran: pintu P0.0-7 (8 buah LED).Gambar rangkaian :

Membuat tabel hasil perhitungan dan hasil percobaan, membandingkan dan menjelaskan hasil keduanya.

Tabel 1 Tampilan LEDD0D1D2D3D4D5D6D7LED YANG PADAM

10000011LED yang padam yaitu LED pada P0.1, P0.2, P0.3, P0.4, P0.5.

3.3.2. Penyelesaian

3.3.2.1. Diagram Alir

3.3.2.2. Program

;=========================================;P011c-LEDkit;program untuk menampilkan kode kelompok;pada LED di KIT(0:padam 1:menyala);----------------------------------------;Materi baru:;- Luaran LED (Pintu P0);- membalik keadaan(komplemen/not);- mmenyesuaikan posisi LED pada kit;----------------------------------------;Komponen:;- 1x Bargraf (8xLED);- 1x R Net 120 ohm;========================================

;=== Deklarasi variabel ===kodeC1 equ 11000001b;kode kelompokkodeC1k equ 10000011b;kode kelompokled equ P0;LED terpasang di pintu P0

;=== Pengesetan Awal ====ORG 0;alamat awal

;=== Program Utama ===

mulai:;tampilkan kode MOV A,#kodeC1k;ambbil kode CPL A;membalikkan 01 MOV led,A;tampilkan di LED SJMP mulai;kembali ke mulai;=== Sub program ===

;=== Tabel Konversi ===END;selesai

3.3.2.3. Hasil Percobaan

Tampilan hasil simulasi EdSim, M-IDE, Proteus dan hasil nyata terlihat (dapat berupa foto)

;=========================================;P011a-LED; program untuk menampilkan kode kelompok;pada LED (1:padam 0:menyala);----------------------------------------;Materi baru:;- Luaran LED (Pintu P0);- memodifikasi rangkaian EdSIM lewat (DI/LD);----------------------------------------;Komponen:;- 1x Bargraf (8xLED);- 1x R Net 120 ohm;========================================

;=== Deklarasi variabel ===kodeC1 equ 11000001b;kode kelompokled equ P0;LED terpasang di pintu P0

;=== Pengesetan Awal ====ORG 0;alamat awal

;=== Program Utama ===

mulai:;tampilkan kode MOV A,#kodeC1;ambbil kode MOV led,A;tampilkan di LED SJMP mulai;kembali ke mulai;=== Sub program ===

;=== Tabel Konversi ===END;selesai

Untuk mendapatkan hasil percobaan ini, langkah percobaan yang dilakukan adalah sebagai berikut:15. Membuka aplikasi EdSim51DI, geser kursor ke tombol [ DI i LD ], klik [ LI ]. Setelah muncul menunya, mencari LED 0 lalu dikonfigurasi pada P [0] bit [0]. Kemudian simpan, keluar, dan buka kembali 16. Memasukkan program, mengkompilasi [Assm], menjalankan program langkah per langkah [ Step ]. Amati perubahan setiap langkah17. Sebelum keluar simpan dengan nama: p011c-LEDkit.asm dan .hex18. Buka Proteus dan uji coba pada file P0-led19. Jika berhasil lalu hubungkan bootloader ke pintu USB komputer dan ke konektor [PROGRAMER]. Nyalakan modul pelatihan20. Membuka program isp dan menggunggah file p011c-LEDkit.hex ke dalam modul21. Amati output pada modul

3.3.3. Pembahasan

Pada bagian deklarasi variabel, kode kelompok dideklarasikan sebagai kodeC1k yang bernilai 11000001b. Sedangkan led dideklarasikan sebagai output yakni pada PORT 0. Sebelum memasukkan program utama pada mikro dilakukan pengesetan awal terlebih dahulu, yaitu ORG 0 untuk menyatakan nomor memori yang dipakai setelah perintah itu. Mulai digunakan sebagai label. MOV A, #kodeC1 berfungsi memindakan segera data kodeC1 yakni 11000001b pada pada A sehingga pada A akan berisi data dari kodeC1. CPL A berfungsi membalikkan data biner pada A dari 0 menjdi 1 dan 1 menjadi 0, pada A terdapat kode biner 11000001b sehingga jika di balik kodenya menjadi 00111110b. MOV led,A berfungsi memindahkan segera data dari A menuju led yakni Output. SJMP mulai berfungsi untuk melompat ke label yang telah dideklarasikan untuk alamat kode yang pendek yaitu mulai. Kemudian program ditutup dengan END.

4. Simpulan

Bagian ini berisi simpulan yang dapat ditarik dari hasil praktikum ini. Simpulan merupakan sesuatu hal yang baru dapat ditarik setelah melakukan praktikum dan menganalisis hasilnya. Beberapa simpulan yang dapat ditarikdari dari praktikum ini:1. Perintah ....2. =====================

P01 Pengendali Luaran Digital