BAGIAN III PORT PARALEL MIKROKONTROLER ATMEL KELUARGA 51

Ukuran: px
Mulai penontonan dengan halaman:

Download "BAGIAN III PORT PARALEL MIKROKONTROLER ATMEL KELUARGA 51"

Transkripsi

1 III.1. PENDAHULUAN BAGIAN III PORT PARALEL MIKROKONTROLER ATMEL KELUARGA 51 Mikrokontroler AT89C51/52/55 (keluarga 51) mempunyai 40 kaki, 32 kaki di antaranya digunakan sebagai Port paralel. Satu Port paralel terdiri dari 8 kaki, dengan demikian 32 kaki tersebut membentuk 4 buah Port paralel, yang masing-masing dikenal sebagai Port 0, Port 1, Port 2 dan Port 3. Nomor dari masing-masing jalur (kaki) dari Port paralel mulai dari 0 sampai 7, jalur (kaki) pertama Port 0 disebut sebagai P0.0 dan jalur terakhir untuk Port 3 adalah P3.7. Perhatikan gambar III.1.A dan III.1.B untuk diagram pin AT89C51/52, perhatikan perbedaannya. (A) Diagram Pin AT89C51 (B)Diagram Pin AT89C52 Gambar III.1. Diagram Pin Mikrokontroler Atmel Keluarga 51 III.2. FUNGSI-FUNGSI KAKI (PIN) Vcc Suplai tegangan. GND Ground atau pentanahan. RST Masukan reset. Kondisi logika 1 selama 2 siklus mesin saat osilator bekerja akan mereset mikrokontroler yang bersangkutan. ALE/PROG Keluaran ALE atau Adreess Latch Enable menghasilkan pulsa-pulsa untuk mengancing byte rendah (low byte) alamat selama pengaksesan memori eksternal. Kaki ini juga berfungsi sebagai masukan pulsa program (the program pulse input) atau PROG selama pengisian flash PEROM. Pada operasi normal, ALE akan berpulsa dengan laju 1/6 dari frekuensi kristal dan dapat digunakan sebagai pewaktuan (timing) atau pendetakan (clocking) rangkaian eksternal. Catatan, ada satu pulsa yang dilompati selama pengaksesan memori data eksternal. Jika dikehendaki, operasi ALE bisa dimatikan dengan cara mengatur bit 0 dari SFR lokasi 8Eh. Jika isinya 1, ALE hanya akan aktif selama dijumpai instruksi MOVX atau MOVC. Selain itu, kaki ini akan 55

2 secara lemah di-pulled high. Mematikan bit ALE tidak akan ada efeknya jika mikrokontroler mengeksekusi program secara eksternal. PSEN Program Store Enable merupakan sinyal baca untuk memori program eksternal. Saat mikrokontroler keluarga 51 menjalankan program dari memori eksternal, PSEN akan diaktifkan dua kali per siklus mesin, kecuali dua aktivasi PSEN dilompati (diabaikan) saat mengakses memori data eksternal. EA /Vpp EA atau External Access Enable harus selalu dihubungkan ke ground, jika mikrokontroler akan mengeksekusi program dari memori eksternal lokasi 0000h hingga FFFFh. Selain dari itu, EA harus dihubungkan ke Vcc agar mikrokontroler mengakses program secara internal. Kaki ini juga berfungsi menerima tegangan 12 volt (Vpp) selama pengisian flash, khususnya untuk tipe mikrokontroler 12 volt Vpp (yaitu dengan kode IC AT89C51/52 xxxx, sedangkan yang berkode AT89C51/52 xxxx-5, menggunakan tegangan 5 volt Vpp). III.3. STRUKTUR PORT DAN CARA-KERJA Pada dasarnya Mikrokontroler Atmel keluarga 51 mempunyai dua kelompok instruksi untuk mengeluarkan data ke Port paralel (tanda x artinya sama seperti kondisi sebelumnya): elompok instruksi pertama bekerja pada Port seutuhnya, artinya 8 jalur dari Port bersangkutan, misalnya MOV P3,#FFh membuat ke-delapan jalur Port 0 semuanya dalam kondisi logika 1 (atau isinya dalam biner); elompok instruksi kedua hanya berpengaruh pada salah satu jalur atau bit dari Port, misalnya instruksi SETB P3.4 artinya men-set bit-4 dari Port 3 (bit-4 dari Port 3 = 1 xxx1 xxxx) atau instruksi CLR P3.3 digunakan untuk me-nolkan bit-3 dari Port 3 (bit-3 dari Port 3 = 0 xxxx 0xxx). Selain itu Port paralel bisa pula dipakai untuk menerima masukan sinyal digital dari luar mikrokontroler: nstruksi MOV A,P3 digunakan untuk membaca data (digital) pada seluruh bit (bit 0 hingga 7 = 8-bit) Port 1 kemudian menyimpannya dalam akumulator; Pembacaan data bisa juga dilakukan hanya pada satu bit Port saja, misalnya instruksi JNB P3.7,$ digunakan untuk memantau bit P3.7, jika P3.7=0, mikrokontroler akan kembali melaksanakan instruksi tersebut (lompat ke label $ artinya ke lokasi tersebut lagi), mikrokontroler akan meneruskan kembali instruksi berikutnya jika P3.7=1 (Catatan: Instruksi yang berlawanan dengan JNB adalah JB). Satu hal yang perlu diperhatikan, agar data dari luar bisa dibaca dengan benar, sebelumnya, jalur Port yang bersangkutan harus diinisialisasi terlebih dulu dengan cara mengisi dengan logika 1 terutama jika suatu port berfungsi ganda, sebagai masukan dan keluaran sekaligus, kecuali jika sejak awal dan seterusnya Port yang bersangkutan hanya digunakan sebagai masukan saja. Hal ini akan dijelaskan lebih lanjut pada pasal yang membahas tentang konstruksi internal port-port pada Mikrokontroler Atmel keluarga 51. Keempat Port pada keluarga 51 tersebut bersifat dwi-arah dan masing-masing memiliki sebuah pengancing (latch), perhatikan gambar III.2 (A s/d D), yang diacu dalam program sebagai Register Fungsi Khusus (RFK atau SFR) sebagai P0, P1, P2 dan P3. Selain itu juga memiliki sebuah penggerak keluaran (output driver) dan sebuah penyangga masukan (input buffer) pada masingmasing kaki-kaki Port. Penggerak-penggerak keluaran Port 0 dan 2 serta penyangga masukan dari Port 0 digunakan dalam pengaksesan memori eksternal. Pada aplikasi semacam ini, Port 0 mengeluarkan byte rendah alamat memori eksternal, dimultipleks secara waktu dengan byte yang akan dituliskan atau dibaca 56

3 (ke/dari memori eksternal). Port 2 mengeluarkan byte tinggi dari alamat memori eksternal jika lebar alamatnya 16-bit, selain itu, kaki-kaki Port 2 tetap meneruskan menghasilkan isi SFR dari P2. Semua kaki-kaki Port 3 dan dua kaki Port 1 (pada seri keluarga 51 yang tipe 52 memiliki 3 pewaktu) memiliki ragam-fungsi. Kaki-kaki port-port tersebut tidak hanya sekedar kaki-kaki Port paralel, namun juga menyediakan beberapa fungsi khusus sebagaimana ditunjukkan pada Tabel III.1. Tabel III.1. Fungsi-Fungsi Khusus Kaki-Kaki Port 3 Dan 1 Kaki Port Fungsi Keterangan alternatif P3.0 (1) T2 masukan eksternal pewaktu/pencacah 2 P3.1 (1) T2EX pemicu Capture/Reload pewaktu/pencacah 2 P3.0 RXD saluran masukan serial P3.1 TXD saluran keluaran serial P3.2 INT0 interupsi eksternal 0 P3.3 INT1 interupsi eksternal 1 P3.4 T0 masukan eksternal pewaktu/pencacah 0 P3.5 T1 masukan eksternal pewaktu/pencacah 1 P3.6 WR sinyal tanda baca memori data eksternal P3.7 RD sinyal tanda tulis memori data eksternal Catatan (1): P3.0 dan P3.1 memiliki fungsi ini hanya untuk seri 52 yang memiliki 3 pewaktu Fungsi-fungsi alternatif tersebut, sebagaimana ditunjukkan pada tabel III.1, hanya dapat diaktifkan jika bit-bit pengancing (latch) Port yang bersangkutan berisi 1, selain itu kaki-kaki port akan tetap terkirim 0. Mengapa? Perhatikan gambar III.2.D (untuk Port 3); jika flip-flop pengancing mendapatkan data 1, maka gerbang NAND selalu meng-inversi data dari fungsi keluaran alternatif, jika datanya 1, maka keluaran NAND adalah 0, sehingga mematikan transistor FET, dengan demikian keluaran kaki port langsung tersambung ke Vcc alias terkirim 1 (sesuai data yang dituliskan ke port). Gambar III.2. Konstruksi internal Port-port Mikrokontroler Atmel keluarga 51 Jika sekarang isi dari pengancing adalah 0, maka keluaran dari gerbang NAND akan selalu 1, sehingga selalu menghidupkan transistor FET, akibatnya keluaran dari kaki-kaki port akan selalu 57

4 terkirim 0 (tidak peduli data yang dituliskan ke port). Untuk pembacaan port sebagai fungsi alternatif tidak ada masalah, data masukan melalui kaki-kaki port kemudian masuk melalui penyangga pertama dan diteruskan sebagai fungsi keluaran alternatif. III.3.1. KONFIGURASI-KONFIGURASI PORT I/O Pada gambar III.2.A sampai dengan III.2.D ditunjukkan diagram fungsional dari masingmasing port yang masing-masing mengandung sebuah pengancing (latch) bit dan penyangga (buffer) I/O. Penyangga bit (sama dengan satu bit register Pi) merupakan jenis D-flip-flop, yang akan memasukkan (dengan sinyal clock) nilai atau data dari bus internal sebagai tanggapan sinyal tulis ke pengancing dari CPU. Data yang terbaca dari port itu sendiri ditempatkan dalam bus internal sebagai tanggapan atas sinyal baca kaki/pin dari CPU. Beberapa instruksi yang digunakan untuk membaca port akan mengaktifkan sinyal baca pengancing (read latch) dan lainnya mengaktifkan sinyal baca kaki/pin (read pin). Sebagaimana ditunjukkan pada gambar III.2.A dan III.2.C, penggerak keluaran dari Port 0 dan 2 dapat diubah dari keluaran pengancing (latch) ke arah bus ALAMAT (untuk P2) dan ALAMAT/DATA (untuk P0) internal melalui sinyal KONTROL internal yang diisi 1 (secara internal pula) yang kemudian bisa digunakan dalam pengaksesan memori eksternal. Selama pengaksesan memori eksternal tersebut, isi pengancing P2 tetap tidak berubah, tetapi 1 harus dituliskan ke pengancing P0, dengan demikian P0 tidak dapat digunakan sebagai port serbaguna selama pengaksesan memori eksternal tersebut, hal ini akan dijelaskan lebih lanjut pada alinea-alinea berikut. Jika bit pengancing P3 berisi 1, maka aras keluaran dikontrol oleh sinyal fungsi alternatif keluaran, sebagaimana ditunjukkan pada gambar III.2.D. Aras kaki P3.i yang sesungguhnya selalu tersedia bagi kaki-kaki fungsi alternatif masukan. Port 1, 2 dan 3 memiliki pullup internal. Port 0 memiliki keluaran saluran terbuka atau open drain. Masing-masing jalur I/O dapat digunakan secara independen sebagai masukan atau keluaran, hanya saja, sesuai penjelasan sebelumnya, Port 0 tidak dapat digunakan sebagai jalur I/O serbaguna selama pengaksesan memori eksternal atau dijadikan sebagai jalur ALAMAT/DATA. Agar dapat digunakan sebagai masukan, bit pengancing port yang bersangkutan harus diisi 1, yang akan mematikan transistor FET penggerak keluaran. Sehingga, untuk Port 1, 2 dan 3, kaki-kakinya ditarik tinggi (pulled high) oleh pullup internal, tetapi bisa juga ditarik rendah (pulled low) dengan suatu sumber eksternal. Port 0 tidak memiliki pullup internal. Pullup FET (FET bagian atas) di dalam penggerak keluaran P0 digunakan hanya pada saat port mengirimkan 1 selama pengaksesan memori eksternal. Selain dari itu, pullup FET akan selalu mati. Konsekuensinya, jalur-jalur P0 yang digunakan sebagai jalur keluaran merupakan saluran terbuka (open drain). Penulisan 1 ke bit pengancing membuat kedua FET keluaran menjadi mati, dengan demikian kondisi kaki-kakinya menjadi mengambang (float). Dalam kondisi seperti ini, dapat digunakan sebagai masukan berimpedansi tinggi. Karena Port 1, 2 dan 3 telah memiliki pullup internal yang pasti, mereka kadang dinamakan sebagai port-port kuasi-dwi-arah (quasi-bidirectional). Saat dikonfigurasi sebagai masukan, maka ditarik tinggi dan memberikan arus (source current I il ) saat ditarik rendah secara eksternal. Port 0, di sisi lain, merupakan Port 0 dwi-arah yang sebenarnya, karena akan mengambang jika dikonfigurasi sebagi masukan. Fungsi reset akan menuliskan 1 ke seluruh bit-bit pengancing port pada keluarga 51. Jika kemudian 0 dituliskan ke pengancing, pengancing dapat dikonfigurasi sebagai masukan jika 1 dituliskan padanya. III.3.2. RINGKASAN SPESIFIKASI MASING-MASING PORT Berikut ini disajikan ringkasan spesifikasi dari masing-masing Port (Port 0, 1, 2 dan 3) yang secara umum telah dibahas pada pasal-pasal sebelumnya. III Port 0 Port 0 merupakan port keluaran/masukan (I/O) bertipe open drain bidirectional (perhatikan gambar III.2.A dan penjelasan sebelumnya). Sebagai port keluaran, masing-masing kaki dapat 58

5 menyerap arus (sink) delapan masukan TTL (sekitar 3,8 ma). Pada saat 1 dituliskan ke kaki-kaki Port 0 ini, maka kaki-kaki Port 0 dapat digunakan sebagai masukan-masukan berimpedansi tinggi. Port 0 juga dapat dikonfigurasikan sebagai bus alamat/data bagian rendah (low byte) selama proses pengaksesan memori data dan program eksternal. Jika digunakan dalam mode ini Port 0 memiliki pullup internal (tapi lemah). Port 0 juga menerima kode-kode yang dikirimkan kepadanya selama proses pengisian program dan mengeluarkan kode-kode selama proses verifikasi program yang telah tersimpan dalam flash. Dalam hal ini dibutuhkan pullup eksternal selama proses verifikasi program. III Port 1 Port 1 merupakan Port I/O dwi-arah yang dilengkapi dengan pullup internal (perhatikan gambar III.2.B). Penyangga keluaran Port 1 mampu memberikan/menyerap arus empat masukan TTL (sekitar 1,6 ma). Jika 1 dituliskan ke kaki-kaki Port 1, maka masing-masing kaki akan di-pulled high dengan pullup internal sehingga dapat digunakan sebagai masukan. Sebagai masukan, jika kaki-kaki Port 1 dihubungkan ke ground (di-pulled low), maka masing-masing kaki akan memberikan arus (source) karena di-pulled high secara internal. Port 1 juga menerima alamat bagian rendah (low byte) selama pengisian program dan verifikasi flash. III Port 2 Port 2 merupakan Port I/O dwi-arah dengan dilengkapi pullup internal (perhatikan gambar III.2.C). Penyangga keluaran Port 2 mampu memberikan/menyerap arus empat masukan TTL (sekitar 1,6 ma). Jika 1 dituliskan ke kaki-kaki Port 2, maka masing-masing kaki akan di-pulled high dengan pullup internal sehingga dapat digunakan sebagai masukan. Sebagai masukan, jika kaki-kaki Port 2 dihubungkan ke ground (di-pulled low), maka masing-masing kaki akan memberikan arus (source) karena di-pulled high secara internal. Port 2 akan memberikan byte alamat bagian tinggi (high byte) selama pengambilan instruksi dari memori program eksternal dan selama pengaksesan memori data eksternal yang menggunakan perintah dengan alamat 16-bit (misalnya: Dalam aplikasi ini, jika ingin mengirimkan 1, maka digunakan pullup internal yang sudah disediakan. Selama pengaksesan memori data eksternal yang menggunakan perintah dengan alamat 8-bit (misalnya: Port 2 akan mengirimkan isi dari SFR P2. Port 2 juga menerima alamat bagian tinggi selama pemrograman dan verifikasi flash. III Port 3 Port 3 merupakan Port I/O dwi-arah dengan dilengkapi pullup internal (perhatikan gambar III.2.D). Penyangga keluaran Port 3 mampu memberikan/menyerap arus empat masukan TTL (sekitar 1,6 ma). Jika 1 dituliskan ke kaki-kaki Port 3, maka masing-masing kaki akan di-pulled high dengan pullup internal sehingga dapat digunakan sebagai masukan. Sebagai masukan, jika kaki-kaki Port 3 dihubungkan ke ground (di-pulled low), maka masing-masing kaki akan memberikan arus (source) karena di-pulled high secara internal. Port 3, sebagaimana Port 1, memiliki fungsi-fungsi alternatif sebagaimana telah ditunjukkan pada Tabel III.1, antara lain menerima sinyal-sinyal kontrol (P3.6 dan P3.7), bersama-sama dengan Port 2 (P2.6 dan P2.7) selama pengisian program dan verifikasi flash. 59

6 III.4. CONTOH-CONTOH APLIKASI PENGGUNAAN PORT III.4.1. MENGHIDUPKAN LED MELALUI KANAL PARALEL III Tujuan Dalam pasal ini akan dijelaskan bagaimana menghidupkan (sekaligus mengendalikan) beberapa LED melalui port paralel AT89C51 dengan berbagai macam kombinasi. III Rangkaian Aplikasi Rangkain minimum untuk menghidupkan 8 LED melalui Port 1 ditunjukkan pada gambar III.3. Yang perlu diperhatikan adalah konfigurasi rangkaian LED itu sendiri, yaitu Common Anode (CA), artinya untuk menghidupkan LED pada Port 1 yang bersangkutan harus dikirim atau dituliskan logika 0. Hal ini berkaitan dengan penjelasan sebelumnya (perhatikan juga gambar III.1.B), Jika 0 kita tulis ke Port 0 maka keluaran dari lacth (yang Q ) akan menghidupkan FET sehingga baik kaki Port 0 maupun resistor pullup internal akan di pulled-low (secara internal juga), sehingga LED yang terhubungkan secara Common Anode bisa menyala. Sedangkan jika menggunakan rangkaian Common Khatode (CK), maka untuk menyalakan LED butuh penulisan 1, namun penulisan 1 ini menyebabkan Port 0 menjadi masukan berimpedansi (karena adanya resistor pullup internal) dan hanya cocok untuk masukan bukan keluaran (arus dari pullup internal tidak kuat untuk menyalakan LED karena ordenya µa, sedangkan keluarannya bisa mencapai sekitar 3,8 ma). Hal ini berlaku juga untuk Port 2 dan Port 3. Penggunaan resistor 330 ohm sebagai pembatas arus, dengan tegangan Vcc 5 volt maka arusnya sekitar 15 ma dan ini cukup untuk menghidupkan LED (biasanya sekitar 10 ma). Vcc LED Merah 30 Pf 12 MHz CRYSTAL 30 Pf Resistor 330 ohm Vcc P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INTO P3.3/INT1 P3.4/TO P3.5/T1 P3.6/WR P3.7/RD XTAL1 PSEN 9 XTAL2 30 RST ALE/PROG 31 EA/VPP AT89C51 Resistor Vcc 10 K 10 Uf Gambar III.3 Rangkaian Aplikasi Menghidupkan LED Melalui Kanal Paralel III Program Pertama Program bab3_01.asm merupakan aplikasi untuk membuat kelompok 4 (empat) LED mati-hidup secara bergantian (flip-flop): 1: ;-- BAB3_01.ASM : ; 3: ; LAMPU FLIP-FLOP PADA PORT 1 4: ; 5: ; : ORG 0H ; PROGRAM DITEMPATKAN PADA LOKASI 0000H 7: ; 8: MULAI: MOV P1,# B ; LED P1.4 S/D P1.7 NYALA (HEKSA= #0FH) 60

7 9: ACALL DELAY ; LAKUKAN PENUNDAAN SESAAT (SUB. DELAY) 10: MOV P1,# B ; LED P1.0 S/D P1.3 NYALA (HEKSA= #0F0H) 11: ACALL DELAY ; LAKUKAN PENUNDAAN SESAAT (SUB. DELAY) 12: SJMP MULAI ; ULANGI LAGI DARI AWAL 13: ; 14: ;-SUBRUTIN DELAY : ; 16: ; SUBRUTIN INI HANYA SEKEDAR MELAKUKAN PENUNDAAN SESAAT DENGAN CARA 17: ; MENGULANGI PROSES (PENGURANGAN ISI REGISTER) HINGGA DICAPAI SUATU 18: ; KONDISI TERTENTU 19: ; 20: ; : DELAY: MOV R0,#5H ; ISI REGISTER R0 DENGAN 5 (5X ULANG) 22: DELAY1: MOV R1,#0FFH ; ISI REGISTER R1 DENGAN 255 (255X ULANG 23: DELAY2: MOV R2,#0 ; ISI REGISTER R2 DENGAN 0 (256X ULANG) 24: DJNZ R2,$ ; R2=R2-1, JIKA R2 BELUM 0 ULANGI LAGI 25: DJNZ R1,DELAY2 ; R1=R1-1, JIKA R1 BELUM 0 ULANGI DELAY2 26: DJNZ R0,DELAY1 ; R0=R0-1, JIKA R0 BELUM 0 ULANGI DELAY1 27: RET ; KEMBALI KE PEMANGGIL SUBRUTIN DELAY 28: END Baris 8-12 merupakan program utama, sedangkan baris 1-5 dan merupakan komentar sekaligus berisi keterangan program, baris 6 digunakan agar instruksi dituliskan mulai alamat 0h. Baris 8 digunakan untuk mengirimkan data B (biner) ke Port 1 agar lampu LED4 - LED7 (berkaitan dengan P1.4-P1.7) menyala, kemudian diikuti dengan mengerjakan tundaan (baris-9) yaitu mengerjakan sub-rutin Delay, kemudian bergantian LED0-LED3 (berkaitan dengan P1.0- P1.3) dinyalakan (baris-10), kemudian (baris-11) tundaan lagi. Proses ini diulang dari awal dengan instruksi SJMP MULAI pada baris 12. Baris merupakan program sub-rutin DELAY yang prosesnya bisa digambarkan melalui diagram yang ditunjukkan pada gambar III.4. Perhatikan perhitungan waktu sebagai berikut: dikerjakan cycle 1:DELAY: MOV R0,#5 1 x 1 2:DELAY1: MOV R1,#0FFH 1 x 1 3:DELAY2: MOV R2,#0 1 x 1 4: DJNZ R2,$ 256 x 255 x 5 = x 2 5: DJNZ R1,DELAY : DJNZ R0,DELAY1 5 x 2 7: RET Baris 4 dikerjakan sebanyak x, karena instruksi tersebut dikerjakan selama 2 siklus maka waktu totalnya x 2 = siklus, masih ditambah dengan pengulangan kedua (255 x 3 siklus) 765 siklus dan pengulangan yang ketiga, DELAY1, sebesar 5 x 3 siklus = 15 siklus, sehingga total siklus = = siklus. Jika menggunakan frekuensi kristal 12 MHz waktu yang dibutuhkan untuk meyelesaikan sub-rutin ini adalah siklus x 1 µd = µd = 0,65 detik untuk pewaktuan yang lebih akurat bisa digunakan timer yang akan dibahas pada bagian IV. 61

8 Mulai isi register 0 dengan 5x ulang (R0 <- #5) isi register 1 255x ulang (R1 <- #0FFh) isi register 2 dengan 256x ulang (R2 <- #0) Tidak Tidak turunkan isi register 1 (R1 <- R1-1) apakah isi register 1 = 0 turunkan isi register 0 (R0 <- R0-1) turunkan isi register 2 (R2 <- R2-1) apakah isi regsiter 0 = 0 Tidak Ya apakah isi register 2 = 0 Selesai Ya Gambar III.4 Diagram Alir Sub-rutin DELAY III Langkah-langkah Menyimpan Program ke Flash Memori Menggunakan Easy-Programmer Setelah program ditulis menggunakan editor teks, lakukan kompilasi program hingga menghasilkan berkas dalam format heksa atau biner kemudian lakukan download program tersebut ke AT89C51/52/55 menggunakan alat pemrograman yaitu Easy-Programmer menggunakan program EZ31.EXE, yang jika diaktifkan akan memiliki tampilan seperti pada gambar III.5. Gambar III.5. Tampilan EZ Uploader Versi

9 Pilih kanal serial COM1 atau COM2 sesuai letak kabel serial Easy Programmer-nya kemudian tunggu hingga muncul pesan yang menyatakan bahwa programmer sudah siap untuk digunakan (tanda OFFLINE akan berganti dengan identifikasi mikrokontroler yang terpasang pada programmer yang bersangkutan, misalnya AT89C51, dst); Pilih tombol SEND untuk mengirimkan berkas heksa yang akan di-download ke mikrokontroler yang bersangkutan (Anda akan ditanya nama berkas yang akan digunakan pada jendela dialog yang dimunculkan), jika proses pengisian program sudah selesai, jangan lupa untuk mematikan sumber daya programmernya sebelum mencabut IC mikrokontroler yang bersangkutan. Sekarang mikrokontroler tersebut sudah siap untuk dipindahkan ke papan percobaan Anda (breadboard, PCB prototipe dan lain-lain); Buatlah rangkaian sebagaimana yang ditunjukkan pada gambar III.3 pada papan breadboard, jangan lupa untuk menghubungkan dengan catu-daya 5 Volt (pin 20 untuk GND dan 40 untuk Vcc pada keping mikrokontroler yang digunakan, AT89C51/52/55) serta rangkaian kristal yang disediakan. Kemudian amati bagaimana program yang telah tersimpan di dalam mikrokontroler tersebut dijalankan! III Program Kedua Sekarang kita akan memodifikasi program tersebut sedemikian hingga bisa untuk menghidupkan lampu LED (sebanyak empat) dalam kelompok genap dan ganjil secara bergantian sebagaimana program berikut: 1: ;- BAB3_02.ASM : ; 3: ; LAMPU FLIP-FLOP GENAP DAN GANJIL PADA PORT 1 4: ; 5: ; : ORG 0H 7: ; 8: MULAI: MOV P1,# B ; LED P1.0, P1.2, P1.4 DAN P1.6 MENYALA (=55H) 9: ACALL DELAY ; LAKUKAN PENUNDAAN SESAAT... 10: MOV P1,# B ; LED P1.1, P1.3, P1.5 DAN P1.7 MENYALA (=0AAH) 11: ACALL DELAY ; LAKUKAN PENUNDAAN SESAAT... 12: SJMP MULAI ; ULANGI LAGI DARI AWAL 13: ; 14: ;-SUBRUTIN DELAY : ; 16: ; SUBRUTIN INI HANYA SEKEDAR MELAKUKAN PENUNDAAN SESAAT DENGAN CARA 17: ; MENGULANGI PROSES (PENGURANGAN ISI REGISTER) HINGGA DICAPAI SUATU 18: ; KONDISI TERTENTU 19: ; 20: ; : DELAY: MOV R0,#5H ; ISI REGISTER R0 DENGAN 5 (5X ULANG) 22: DELAY1: MOV R1,#0FFH ; ISI REGISTER R1 DENGAN 255 (255X ULANG 23: DELAY2: MOV R2,#0 ; ISI REGISTER R2 DENGAN 0 (256X ULANG) 24: DJNZ R2,$ ; R2=R2-1, JIKA R2 BELUM 0 ULANGI LAGI 25: DJNZ R1,DELAY2 ; R1=R1-1, JIKA R1 BELUM 0 ULANGI DELAY2 26: DJNZ R0,DELAY1 ; R0=R0-1, JIKA R0 BELUM 0 ULANGI DELAY1 27: RET ; KEMBALI KE PEMANGGIL SUBRUTIN DELAY Baris sama seperti program sebelumnya (BAB3_01.ASM), sedangkan baris-8 dan 10, masingmasing digunakan untuk menghidupkan LED secara selang-seling, ingat logika 0 digunakan untuk menghidupkan LED yang bersangkutan. Jika terlalu panjang konstanta # B pada baris-8 dapat diganti dengan format bilangan heksa, yaitu #55H, sedangkan baris 10 dapat diganti dengan #0AAH (awali dengan 0 jika bilangan heksa diawali dengan huruf). 63

10 III Program Ketiga Modifikasi program lainnya adalah untuk menghidupkan lampu LED (sebanyak dua) dimulai dari LED pada posisi P1.3 dan P1.4, P1.2 dan P1.5, P1.1 dan P1.6, P1.0 dan P1.7 kemudian menyalakan LED agar bergerak ke tengah atau kembali ke posisi awal dari LED yang menyala, dan programnya ditunjukkan berikut ini: 1: ;- BAB3_03.ASM : ; 3: ; LAMPU BERGERAK DARI TENGAH KE PINGGIR KEMUDIAN KEMBALI LAGI... 4: ; 5: ; : ORG 0H 7: ; 8: MULAI: MOV P1,# B ; DUA LAMPU TENGAH MENYALA, P13 DAN P1.4 (=0E7H) 9: ACALL DELAY ; LAKUKAN PENUNDAAN SESAAT... 10: MOV P1,# B ; DUA LAMPU BERIKUTNYA MENYALA, P1.2 DAN P1.5 11: ACALL DELAY ; LAKUKAN PENUNDAAN SESAAT... 12: MOV P1,# B ; DUA LAMPU BERIKUTNYA MENYALA, P1.1 DAN P1.6 13: ACALL DELAY 14: MOV P1,# B ; DUA LAMPU BERIKUTNYA MENYALA, P1.0 DAN P1.7 15: ACALL DELAY 16: MOV P1,# B ; DUA LAMPU BERIKUTNYA MENYALA, P1.1 DAN P1.6 17: ACALL DELAY 18: MOV P1,# B ; DUA LAMPU BERIKUTNYA MENYALA, P1.2 DAN P1.5 19: ACALL DELAY 20: SJMP MULAI ; LOMPAT KE ALAMAT DG LABEL MULAI 21: ; 22: ;-SUBRUTIN DELAY : ; 24: ; SUBRUTIN INI HANYA SEKEDAR MELAKUKAN PENUNDAAN SESAAT DENGAN CARA 25: ; MENGULANGI PROSES (PENGURANGAN ISI REGISTER) HINGGA DICAPAI SUATU 26: ; KONDISI TERTENTU 27: ; 28: ; : DELAY: MOV R0,#5H ; ISI REGISTER R0 DENGAN 5 (5X ULANG) 30: DELAY1: MOV R1,#0FFH ; ISI REGISTER R1 DENGAN 255 (255X ULANG 31: DELAY2: MOV R2,#0 ; ISI REGISTER R2 DENGAN 0 (256X ULANG) 32: DJNZ R2,$ ; R2=R2-1, JIKA R2 BELUM 0 ULANGI LAGI 33: DJNZ R1,DELAY2 ; R1=R1-1, JIKA R1 BELUM 0 ULANGI DELAY2 34: DJNZ R0,DELAY1 ; R0=R0-1, JIKA R0 BELUM 0 ULANGI DELAY1 35: RET ; KEMBALI KE PEMANGGIL SUBRUTIN DELAY 36: END Sekarang program tampak lebih panjang dikarenakan baris 8 19 digunakan untuk memberikan efek lampu LED menyala bergeser dari tengah ke pinggir kemudian kembali ke tengah lagi, dan seterusnya (instruksi baris-20). Perhatikan keterangan pada tiap-tiap komentar di tiap-tiap baris (baris-8, 10, 12, 14, 16 dan 18). III Program Keempat Program berikut ini merupakan aplikasi untuk membuat LED menyala bergantian (bergeser) dari P1.0 ke P1.7 kemudian kembali ke awal lagi secara berulang-ulang : 1: ;- BAB3_04.ASM : ; 3: ; LAMPU BERJALAN DARI P1.0 S/D P1.7 KEMUDIAN KEMBALI LAGI 4: ; 5: ; : ORG 0H 7: ; 8: MOV A,# B ; DATA LAMPU MENYALA DIKIRIM MELALUI AKUMULATOR 9: ; AGAR P1.0 PERTAMA KALI MENYALA, AKUMULATOR 10: ; DIISI DENGAN B ATAU 0FEH 11: MULAI: 64

11 12: MOV P1,A ; KIRIMKAN DATA DI AKUMUALTOR KE PORT 1 13: ACALL DELAY ; LAKUKAN PENUNDAAN SESAAT 14: RL A ; ROTASIKAN ISI AKUMULATOR KE KIRI 15: ; +->------>----->----->+ 16: ; 17: ; +< <--+ 18: SJMP MULAI ; ULANGI LAGI DARI AWAL 19: ; 20: ;-SUBRUTIN DELAY : ; 22: ; SUBRUTIN INI HANYA SEKEDAR MELAKUKAN PENUNDAAN SESAAT DENGAN CARA 23: ; MENGULANGI PROSES (PENGURANGAN ISI REGISTER) HINGGA DICAPAI SUATU 24: ; KONDISI TERTENTU 25: ; 26: ; : DELAY: MOV R0,#0 ; ISI REGISTER R0 DENGAN 0 (256X ULANG) 28: DELAY1: MOV R1,#0 ; ISI REGISTER R1 DENGAN 0 (256X ULANG) 29: DJNZ R1,$ 30: DJNZ R0,DELAY1 31: RET 32: END Pada program BAB3_04.ASM ini, digunakan instruksi untuk menggeser bit ke kiri dan sekaligus merotasi (baris-14). Pertama siapkan data yang akan dikirimkan ke Port 1 di akumulator (baris-8), kemudian kirimkan ke Port 1 (baris-12), lakukan tundaan sesaat supaya efek penggeseran bisa diikuti dengan mata (jika anda menghilangkan baris-13 ini, maka mata akan melihat bahwa semua lampu LED menyala, padahal tidak, tetap bergantian, karena terlalu cepat sehingga mata manusia melihatnya seakan-akan menyala semua), kemudian lakukan penggeseran ke kiri sekaligus merotasi melalui akumulator (baris-14). Perintah RL (dan RR) hanya bisa digunakan untuk akumulator saja, sehingga sejak awal sudah kita persiapkan datanya disimpan di akumulator, Anda bisa saja menyimpan data di tempat lain, register misalnya, tetapi saat melakukan rotasi bit ke kanan atau ke kiri salinlah dulu ke akumulator kemudian baru disalin lagi ke tempat semula. Kita bisa memodifikasi program agar LED menyala bergantian dengan arah berlawanan (dari P1.7 ke P1.0), baris-8 kita ganti dengan instruksi MOV A,# B ; simpan data B (=7Fh) ke Akumulator Baris-14 kita ganti dengan instruksi RR A III Program Kelima ; putar isi akumulator ke kanan 1 bit Program BAB3_05.ASM berikut ini digunakan untuk menyalakan LED dari kanan ke kiri dan dari kiri ke kanan sehingga nampak seperti pingpong: 1: ;- BAB3_05.ASM : ; 3: ; LAMPU MENYALA PINGPONG KIRI KE KANAN, KANAN KE KIRI DI PORT 1 4: ; 5: ; : ORG 0H 7: ; 8: MOV A, #0FEH ; SIMPAN DATA B KE AKUMULATOR (P1.0 9: ; MENYALA DULUAN) 10: MULAI: 11: MOV P1,A ; KIRIM DATA KE PORT 1 12: ACALL DELAY ; TUNDA SEBENTAR 13: RL A ; PUTAR ISI AKUMULATOR KE KIRI 1 BIT 14: CJNE A,#7FH,MULAI ; APAKAH A= B? TIDAK, ULANGI LAGI! 15: MULAI1: ; YA, LANJUTKAN KE PROSES BERIKUT... 16: MOV P1,A ; KIRIM DATA KE PORT 1 17: ACALL DELAY ; TUNDA SEBENTAR 18: RR A ; PUTAR ISI AKUMULATOR KE KANAN 1 BIT 19: CJNE A,#0FEH,MULAI1 ; APAKAH A= B? TIDAK, ULANGI LAGI! 65

12 20: SJMP MULAI ; YA, ULANGI LAGI DARI PALING AWAL... 21: ; 22: ;-SUBRUTIN DELAY : ; 24: ; SUBRUTIN INI HANYA SEKEDAR MELAKUKAN PENUNDAAN SESAAT DENGAN CARA 25: ; MENGULANGI PROSES (PENGURANGAN ISI REGISTER) HINGGA DICAPAI SUATU 26: ; KONDISI TERTENTU 27: ; 28: ; : DELAY: MOV R0,#0 ; ISI REGISTER R0 DENGAN 0 (256X ULANG) 30: DELAY1: MOV R1,#0 ; ISI REGISTER R1 DENGAN 0 (256X ULANG) 31: DJNZ R1,$ 32: DJNZ R0,DELAY1 33: RET 34: END Program ini mirip dengan program sebelumnya (BAB3_04.ASM). Baris digunakan untuk menyalakan LED secara bergantian dari P1.0 hingga P1.7, data awal disiapkan di baris 8 (melalui akumulator seperti pada program sebelumnya). Data dikirimkan ke Port 1 (baris-11), kemudian lakukan tundaan (baris-12), selanjutnya digeser-putar ke kiri (baris-13). Pada baris-14 dilakukan pengujian apakah logika 0 yang digeser ke kiri sudah mencapai bit paling kiri, bit ke 7 atau P1.7 atau datanya adalah # B (=#7FH)? Jika sudah maka lanjutkan untuk proses penggeseran ke kanan (baris 16 19), jika belum lakukan pengulangan lagi mulai baris-11, demikian seterusnya. Untuk proses penggeseran ke kanan (baris 16-19), sebagai data yang menunjukkan bahwa logika 0 yang digeser ke kanan sudah mencapai bit ke 1 (terkanan) atau P1.0 adalah # B (=#0FEH) sebagaimana bisa dilihat pada baris-19. Proses ini diulang-ulang terus-menerus (baris-20) sehingga diperoleh efek lampu LED menyala secara ping-pong. III.4.2. APLIKASI PORT UNTUK PENGGERAK 7-SEGMENT III Tujuan Program aplikasi Port 0 sebagai penggerak (driver) penampil 7-segment (7-segment display). III Rangkaian Aplikasi Vcc segment f g P A A a b c d e Pf 12 MHz CRYSTAL Resistor 330 ohm Vcc XTAL1 PSEN 9 XTAL2 30 RST ALE/PROG 30 Pf AT89C P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 EA/VPP P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INTO P3.3/INT1 P3.4/TO P3.5/T1 P3.6/WR P3.7/RD Resistor Vcc 10 K 10 Uf Gambar III.6.a. Rangkaian Aplikasi Penggerak 7-Segment 66

13 Gambar III.6.b. Struktur Penampil LED 7-segment Catatan: Perhatikan hubungan antara Port 0 dengan penampil 7-segment yang disusun sebagai berikut: Mikrokontroler 7-segment (common Anoda) P0.0 pin a P0.1 pin b P0.2 pin c P0.3 pin d P0.4 pin e P0.5 pin f P0.6 pin g P0.7 pin dot_point Rangkaian penggerak penampil 7-Segment ditunjukkan pada gambar III.6.a. Kali ini digunakan Port 0 dengan konfigurasi common Anode (seperti pada contoh sebelumnya). Dilihat dari struktur Port 0 pada gambar III.2.A, serta sifat-sifat dari Port 0, akan lebih mudah mengkonfigurasi LED dalam 7-segment dengan common Anode. Dengan demikian untuk menghidupkan atau menyalakan LED diperlukan logika 0 pada Port 0. Agar tampilan 7-segment menampilkan angka 0 maka LED a, b, c, d, e dan f harus dinyalakan (perhatikan gambar III.6.b) untuk itu dikirimkan logika 0 pada bit-bit yang terkait yaitu P0.0, P0.1, P0.2, P0.3, P0.4 dan P0.5, sehingga data yang terkirim adalah = C0h. Untuk lengkapnya perhatikan tabel III.2. Program akan menampilkan angka 0 s/d 9 secara bergantian kemudian berulang lagi. Baris-8, 10, 12, 14, 16, 18, 20, 22, 24 dan 26 digunakan untuk menyalakan 7 segment sesuai angka 0 s/d 9. Tabel III.2. Daftar Heksa Dari Tampilan Angka Pada 7-Segment Tampilan P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 Heksa Angka dp g f e d c b a C F A B F III Program Pertama 1: ;- BAB3_06.ASM : ; 67

14 3: ; MENGHIDUPKAN DISPLAY LED 7 SEGMENT UNTUK MENAMPILKAN ANGKA 0 S/D 9 4: ; CARA 1 : DATA LANGSUNG DIKELUARKAN KE PORT YANG BERSANGKUTAN 5: ; 6: ; : ORG 0H 8: ; 9: MULAI: 10: MOV P0,#0C0H ; KELUARKAN KODE ANGKA 0 PORT 0 11: ACALL DELAY ; LAKUKAN PENUNDAAN SESAAT... 12: MOV P0,#0F9H ; KELUARKAN KODE ANGKA 1 PORT 0 13: ACALL DELAY ; LAKUKAN PENUNDAAN SESAAT... 14: MOV P0,#0A4H ; KELUARKAN KODE ANGKA 2 PORT 0 15: ACALL DELAY 16: MOV P0,#0B0H ; KELUARKAN KODE ANGKA 3 PORT 0 17: ACALL DELAY 18: MOV P0,#99H ; KELUARKAN KODE ANGKA 4 PORT 0 19: ACALL DELAY 20: MOV P0,#92H ; KELUARKAN KODE ANGKA 5 PORT 0 21: ACALL DELAY 22: MOV P0,#82H ; KELUARKAN KODE ANGKA 6 PORT 0 23: ACALL DELAY 24: MOV P0,#0F8H ; KELUARKAN KODE ANGKA 7 PORT 0 25: ACALL DELAY 26: MOV P0,#80H ; KELUARKAN KODE ANGKA 8 PORT 0 27: ACALL DELAY 28: MOV P0,#90H ; KELUARKAN KODE ANGKA 9 PORT 0 29: ACALL DELAY 30: SJMP MULAI ; ULANGI LAGI DARI AWAL 31: ; 32: ;-SUBRUTIN DELAY : ; 34: ; SUBRUTIN INI HANYA SEKEDAR MELAKUKAN PENUNDAAN SESAAT DENGAN CARA 35: ; MENGULANGI PROSES (PENGURANGAN ISI REGISTER) HINGGA DICAPAI SUATU 36: ; KONDISI TERTENTU 37: ; 38: ; : DELAY: MOV R0,#2 ; ISI REGISTER R0 DENGAN 2 (2X ULANG) 40: DELAY1: MOV R1,#0FFH ; ISI REGISTER R1 DENGAN FF (255X ULANG) 41: DELAY2: MOV R2,#0 ; ISI REGISTER R2 DENGAN 0 (256X ULANG) 42: DJNZ R2,$ 43: DJNZ R1,DELAY2 44: DJNZ R0,DELAY1 45: RET 46: END Sebagaimana penjelasan sebelumnya, pada program pertama ini (BAB3_06.ASM), untuk menampilkan urutan angka 0 s/d 9 secara bergantian pada tampilan LED 7-segment, diawali dengan mengeluarkan kode untuk angka 0, yaitu C0H ke Port 0 (baris 10), kemudian dilakukan tundaan sesaat (baris-11). Selanjutnya pada baris-12 dikeluarkan kode untuk angka 1 (F9H), lakukan tundaan sesaat (baris-13) demikian seterusnya hingga kode untuk angka 9 (90H) pada baris-28. Kemudian diulang lagi dari awal (baris-30). Sehingga akan muncul efek pencacah 0 s/d 9 pada tampilan LED 7-segment. III Program Kedua 1: ;- BAB3_07.ASM : ; 3: ; MENGHIDUPKAN DISPLAY LED 7 SEGMENT UNTUK MENAMPILKAN ANGKA 0 S/D 9 4: ; CARA 2 : DATA DIAMBIL DARI ALAMAT LARIK (ARRAY) DATA, PROGRAM JADI LEBIH 5: ; PENDEK 6: ; 7: ; : ORG 0H 9: ; 10: MULAI: 11: MOV R2,#0AH ; JUMLAH ANGKA NUMERIK YG AKAN DITAMPILKAN 12: MOV DPTR,#NUMERIK ; REGISTER DPTR MENUNJUK PADA LOKASI AWAL DATA 13: NEXTDATA: 14: CLR A ; PERSIAPKAN AKUMULATOR 15: MOVC A,@A+DPTR ; SALIN ISI LOKASI YG DITUNJUK A+DPTR KE A 68

15 16: MOV P0,A ; KELUARKAN DATA A KE PORT 0 17: INC DPTR ; KE LOKASI DATA BERIKUTNYA 18: ACALL DELAY ; LAKUKAN PENUNDAAN SESAAT... 19: DJNZ R2,NEXTDATA ; R2=R2-1, JIKA R2 <> 0 ULANGI LAGI 20: SJMP MULAI ; ULANGI LAGI DARI AWAL... 21: ; 22: ;-SUBRUTIN DELAY : ; 24: ; SUBRUTIN INI HANYA SEKEDAR MELAKUKAN PENUNDAAN SESAAT DENGAN CARA 25: ; MENGULANGI PROSES (PENGURANGAN ISI REGISTER) HINGGA DICAPAI SUATU 26: ; KONDISI TERTENTU 27: ; 28: ; : DELAY: MOV R0,#2H ; ISI REGISTER R0 DENGAN 2 (2X ULANG) 30: DELAY1: MOV R1,#0FFH ; ISI REGISTER R1 DENGAN FF (255X ULANG) 31: DELAY2: MOV R2,#0 ; ISI REGISTER R2 DENGAN 0 (256X ULANG) 32: DJNZ R2,$ 33: DJNZ R1,DELAY2 34: DJNZ R0,DELAY1 35: RET 36: ; 37: ; : ; LOKASI LARIK DATA 39: ; BERISI KODE-KODE UNTUK MENGHIDUPKAN 7-SEGMENT: ANGKA 0 S/D 9 SECARA BRTURUTAN 40: ; : NUMERIK: 42: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H 43: END Program kedua ini (BAB3_07.ASM) hasilnya sama persis dengan program pertama (BAB3_06.ASM), hanya cara penulisannya yang berbeda. Pada program pertama data langsung dikirim secara langsung ke port 0, sedangkan pada cara kedua ini data-data tampilan disimpan dalam memori terlebih dahulu (baris-41 dan 42), kemudian dibaca dan dikirim satu persatu, sehingga mengakibatkan programnya menjadi lebih pendek (dan lebih kecil), banyangkan saja jika data yang dikirim ada 20, 30 atau bahkan lebih dari 50? Register R2 digunakan untuk menyimpan cacah data yang akan dikirimkan ke Port 0 (baris- 11), yaitu sebanyak 10 data. Sebelum bisa mengakses tabel data, yang dalam hal ini tersimpan dalam memori mulai tabel NUMERIK (baris-41 dan 42), penunjuk data DPTR, harus diarahkan ke lokasi tersebut, menggunakan instruksi pada baris-12. Instruksi berikutnya adalah mengosongkan akumulator (baris-14) karena akan digunakan untuk menyimpan data sementara yang nantinya akan dikirim ke Port 0 (baris-16). Pada baris-15, isi dari lokasi memori yang ditunjuk oleh DPTR+A dibaca dan disimpan ke akumulator. Untuk pembacaan data berikutnya penunjuk data DPTR perlu dinaikkan 1 (indeks lokasi data berikutnya) menggunakan instruksi yang dituliskan pada baris-17. Kemudian nilai R2 yang sebelumnya dikurangi 1 atau R2=R2-1 (baris-19) sebagai tanda bahwa sebuah data telah diproses, jika R2 belum sama dengan nol, proses pengiriman data diulang lagi (lompat ke label NEXDATA) hingga semua data, yang jumlahnya 10, selesai diproses. Kemudian program diulang dari awal lagi dari awal (baris-20). III Program Ketiga Modifikasi program pertama dan kedua, untuk menghidupkan 7-segment agar menampilkan huruf dari A s/d F, sebagaimana data-datanya ditunjukkan pada tabel III.3. Tabel III.3. Daftar Heksa Dari Tampilan Huruf A s/d F Pada 7-Segment Tampilan P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 Heksa Huruf Dp g f e d c b a A b C C6 d A1 E F E 69

Memprogram Port sebagai Output dan Input Sederhana

Memprogram Port sebagai Output dan Input Sederhana BAGIAN 1 Tujuan Pembelajaran Umum: 1. Mahasiswa trampil memprogram Port sebagai Input dan Output sederhana menggunakan bahasa pemrograman assembly Tujuan Pembelajaran Khusus: 1. Mahasiswa memahami Konstruksi

Lebih terperinci

PORT PARALEL MIKROKONTROLER ATMEL AT89C51

PORT PARALEL MIKROKONTROLER ATMEL AT89C51 Lab Elektronika Industri Mikrokontroler - 1 PORT PARALEL MIKROKONTROLER ATMEL AT89C51 I. FISIK AT89C51 Mikrokontroler AT89C51 umumnya mempunyai kemasan 40 pin seperti gambar berikut. AT89C51 mempunyai

Lebih terperinci

ARSITEKTUR MIKROKONTROLER AT89C51/52/55

ARSITEKTUR MIKROKONTROLER AT89C51/52/55 ARSITEKTUR MIKROKONTROLER AT89C51/52/55 A. Pendahuluan Mikrokontroler merupakan lompatan teknologi mikroprosesor dan mikrokomputer. Mikrokontroler diciptakan tidak semata-mata hanya memenuhi kebutuhan

Lebih terperinci

Memprogram Interface Display

Memprogram Interface Display BAGIAN 1 Tujuan Pembelajaran Umum: 1. Mahasiswa trampil memprogram interface display Tujuan Pembelajaran Khusus: 1. Mahasiswa memahami dasar-dasar interface display 2. Mahasiswa trampil memprogram interface

Lebih terperinci

BAB 2 LANDASAN TEORI. Mikrokontroler AT89S52 termasuk kedalam keluarga MCS-51 merupakan suatu. dua macam memori yang sifatnya berbeda yaitu:

BAB 2 LANDASAN TEORI. Mikrokontroler AT89S52 termasuk kedalam keluarga MCS-51 merupakan suatu. dua macam memori yang sifatnya berbeda yaitu: BAB 2 LANDASAN TEORI 2.1 Perangkat Keras 2.1.1 Mikrokontroler AT89S52 Mikrokontroler AT89S52 termasuk kedalam keluarga MCS-51 merupakan suatu mikrokomputer CMOS 8 bit dengan daya rendah, kemampuan tinggi,

Lebih terperinci

MIKROKONTROLER Arsitektur Mikrokontroler AT89S51

MIKROKONTROLER Arsitektur Mikrokontroler AT89S51 MIKROKONTROLER Arsitektur Mikrokontroler AT89S51 Ringkasan Pendahuluan Mikrokontroler Mikrokontroler = µp + Memori (RAM & ROM) + I/O Port + Programmable IC Mikrokontroler digunakan sebagai komponen pengendali

Lebih terperinci

BAB II LANDASAN TEORI. Dalam merancang sebuah peralatan yang cerdas, diperlukan suatu

BAB II LANDASAN TEORI. Dalam merancang sebuah peralatan yang cerdas, diperlukan suatu BAB II LANDASAN TEORI 2.1. Perangkat Keras Dalam merancang sebuah peralatan yang cerdas, diperlukan suatu perangkat keras (hardware) yang dapat mengolah data, menghitung, mengingat dan mengambil pilihan.

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI 6 BAB 2 LANDASAN TEORI 2.1 Perangkat Keras 2.1.1 Bahasa Assembly MCS-51 Bahasa yang digunakan untuk memprogram IC mikrokontroler AT89S51 adalah bahasa assembly untuk MCS-51. angka 51 merupakan jumlah instruksi

Lebih terperinci

I/O dan Struktur Memori

I/O dan Struktur Memori I/O dan Struktur Memori Mikrokontroler 89C51 adalah mikrokontroler dengan arsitektur MCS51 seperti 8031 dengan memori Flash PEROM (Programmable and Erasable Read Only Memory) DESKRIPSI PIN Nomor Pin Nama

Lebih terperinci

Mikroprosesor Z80 Suryanto Sutikno

Mikroprosesor Z80 Suryanto Sutikno Mikroprosesor Z80 Suryanto Sutikno A. Pendahuluan Mikrokontroler merupakan lompatan teknologi mikroprosesor dan mikrokomputer. Mikrokontroler diciptakan tidak semata-mata hanya memenuhi kebutuhan kalangan

Lebih terperinci

DASAR INPUT/OUTPUT (2) (PORT PPI DAN PORT 1 SEBAGAI INPUT/OUTPUT)

DASAR INPUT/OUTPUT (2) (PORT PPI DAN PORT 1 SEBAGAI INPUT/OUTPUT) PERCOBAAN 2 DASAR INPUT/OUTPUT (2) (PORT PPI DAN PORT 1 SEBAGAI INPUT/OUTPUT) Menggunakan DT-51 MinSys Mengamati keluaran data berupa nyala LED setelah proses pemindahan data (akses eksternal) dari sebuah

Lebih terperinci

BAB 3 PERANCANGAN ALAT DAN PROGRAM

BAB 3 PERANCANGAN ALAT DAN PROGRAM BAB 3 PERANCANGAN ALAT DAN PROGRAM 3.1. DIAGRAM BLOK display Penguat sinyal Sensor 1 keypad AT89S51 Penguat sinyal Sensor 5 relay alarm pompa Keterangan diagram blok: Sensor air yang berfungsi untuk mengetahui

Lebih terperinci

ANTAR MUKA DST-51 DENGAN MODUL AD-0809

ANTAR MUKA DST-51 DENGAN MODUL AD-0809 ANTAR MUKA DST-51 DENGAN MODUL AD-0809 ADC0809 ADC0809 adalah IC pengubah tegangan analog menjadi digital dengan masukan berupa 8 kanal input yang dapat dipilih. IC ADC0809 dapat melakukan proses konversi

Lebih terperinci

AKSES MEMORI Menggunakan DT-51 MinSys

AKSES MEMORI Menggunakan DT-51 MinSys AKSES MEMORI Menggunakan DT-51 MinSys Mengakses eksternal memori dan data memori pada DT-51 Minimum sistem. Membuat program untuk penulisan atau pembacaan data pada memori eksternal DT-51 MinSys. Memori

Lebih terperinci

Memprogram Interface Motor

Memprogram Interface Motor BAGIAN 1 Tujuan Pembelajaran Umum: 1. Mahasiswa trampil memprogram interface motor Tujuan Pembelajaran Khusus: 1. Mahasiswa memahami dasar-dasar interface motor stepper 2. Mahasiswa memahami pemrograman

Lebih terperinci

BAB II TINJAUAN PUSTAKA. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan

BAB II TINJAUAN PUSTAKA. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan BAB II TINJAUAN PUSTAKA 2.1. PERANGKAT KERAS 2.1.1. Arsitektur Mikrokontroler AT89S51 Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan mikrokomputer, hadir memenuhi kebutuhan pasar

Lebih terperinci

TKC210 - Teknik Interface dan Peripheral. Eko Didik Widianto

TKC210 - Teknik Interface dan Peripheral. Eko Didik Widianto TKC210 - Teknik Interface dan Peripheral Eko Didik Sistem Komputer - Universitas Diponegoro Review Kuliah Pembahasan tentang: Referensi: mikrokontroler (AT89S51) mikrokontroler (ATMega32A) Sumber daya

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA BAB II TINJAUAN PUSTAKA 2.1 PERANGKAT KERAS 2.1.1 Arsitektur Mikrokontroler AT89S51 Mikrokontroler, sebagai suatu terobosan teknologi mikrokontoler dan mikrokomputer, hadir memenuhi kebutuhan pasar (market

Lebih terperinci

BAB III PERANCANGAN SISTEM. Secara garis besar rangkaian pengendali peralatan elektronik dengan. blok rangkaian tampak seperti gambar berikut :

BAB III PERANCANGAN SISTEM. Secara garis besar rangkaian pengendali peralatan elektronik dengan. blok rangkaian tampak seperti gambar berikut : BAB III PERANCANGAN SISTEM 3.1. Diagram Blok Secara garis besar rangkaian pengendali peralatan elektronik dengan menggunakan PC, memiliki 6 blok utama, yaitu personal komputer (PC), Mikrokontroler AT89S51,

Lebih terperinci

Percobaan 5 PENGENALAN MIKROKONTROLER 8051

Percobaan 5 PENGENALAN MIKROKONTROLER 8051 Percobaan 5 PENGENALAN MIKROKONTROLER 8051 I. Tujuan 1. Mempelajari arsitektur mikrokontroller 8051 2. Memahami macam-macam interrupt yang ada pada mikrokontroller 8051 3. Memahami penggunaan I/O port

Lebih terperinci

Mikrokontroler 89C51 Bagian II :

Mikrokontroler 89C51 Bagian II : Mikrokontroler 89C51 Bagian II : Mikrokontroler 89C51 Mikrokontroler 89C51 merupakan mikrokomputer CMOS 8 bit dengan 4 Kbytes Flash Programmable Memory. Arsitektur 89C51 ditunjukkan pada gambar 2. Accumulator

Lebih terperinci

Memprogram Interupsi AT89S51

Memprogram Interupsi AT89S51 BAGIAN 1 AT89S51 Tujuan Pembelajaran Umum: 1. Mahasiswa trampil memprogram interupsi Tujuan Pembelajaran Khusus: 1. Mahasiswa memahami dasar-dasar interupsi Mikrokontroler AT89S51 2. Mahasiswa memahami

Lebih terperinci

BAB II TEORI DASAR 2.1 Pendahuluan 2.2 Sensor Clamp Putaran Mesin

BAB II TEORI DASAR 2.1 Pendahuluan 2.2 Sensor Clamp Putaran Mesin 4 BAB II TEORI DASAR 2.1 Pendahuluan Pada bab ini akan dijelaskan mengenai teori-teori mengenai perangkatperangkat pendukung baik perangkat keras dan perangkat lunak yang akan dipergunakan sebagai pengukuran

Lebih terperinci

BAB IV PENGUJIAN DAN ANALISA DATA

BAB IV PENGUJIAN DAN ANALISA DATA BAB IV PENGUJIAN DAN ANALISA DATA Pada bab ini akan dibahas tentang pengujian dan pengoperasian Sistem Pemantau Ketinggian Air Cooling Tower di PT. Dynaplast. Pengujian dan pengoperasian ini dilakukan

Lebih terperinci

BAB 2 TINJAUAN TEORITIS. Mikrokontroller, sebagai suatu terobosan teknologi mikrokontroler dan microkomputer,

BAB 2 TINJAUAN TEORITIS. Mikrokontroller, sebagai suatu terobosan teknologi mikrokontroler dan microkomputer, BAB 2 TINJAUAN TEORITIS 2.1.Hardware 2.1.1 Mikrokontroler AT89S51 Mikrokontroller, sebagai suatu terobosan teknologi mikrokontroler dan microkomputer, hadir memenuhi kebutuhan pasar (market need) dan teknologi

Lebih terperinci

BAB 2 TINJAUAN TEORITIS

BAB 2 TINJAUAN TEORITIS 7 BAB 2 TINJAUAN TEORITIS 1 Konveyor Konveyor hanya bergerak ke satu arah saja, konveyor digerakkan dengan motor stepper 12V type. Sinyal keluaran dari motor stepper untuk menggerakkan konveyor dirangkaikan

Lebih terperinci

BAB 2 LANDASAN TEORI. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan

BAB 2 LANDASAN TEORI. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan BAB 2 LANDASAN TEORI 2.1. Sistem Minimum Mikrokontroler AT89S51 Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan mikrokomputer, hadir memenuhi kebutuhan pasar (market need) dan teknologi

Lebih terperinci

PORT SERIAL MIKROKONTROLER ATMEL AT89C51

PORT SERIAL MIKROKONTROLER ATMEL AT89C51 Lab Elektronika Industri Mikrokontroler - 1 PORT SERIAL MIKROKONTROLER ATMEL AT89C51 I. FISIK AT89C51 Mikrokontroler AT89C51 umumnya mempunyai kemasan 40 pin seperti gambar berikut. AT89C51 telah dilengkapi

Lebih terperinci

Pendahuluan Mikrokontroler 8051

Pendahuluan Mikrokontroler 8051 Pendahuluan Mikrokontroler 8051 Pokok Bahasan: 1. Mikrokontroler 8051 Arsitektur (Architecture) Timers/Counters Interrupts Komunikasi Serial (Serial Communication) Tujuan Belajar: Setelah mempelajari dalam

Lebih terperinci

BAB III PERANCANGAN DAN PEMBUATAN PERANGKAT KERAS

BAB III PERANCANGAN DAN PEMBUATAN PERANGKAT KERAS BAB III PERANCANGAN DAN PEMBUATAN PERANGKAT KERAS 3.1. Pendahuluan Perangkat pengolah sinyal yang dikembangkan pada tugas sarjana ini dirancang dengan tiga kanal masukan. Pada perangkat pengolah sinyal

Lebih terperinci

Blok sistem mikrokontroler MCS-51 adalah sebagai berikut.

Blok sistem mikrokontroler MCS-51 adalah sebagai berikut. Arsitektur mikrokontroler MCS-51 diotaki oleh CPU 8 bit yang terhubung melalui satu jalur bus dengan memori penyimpanan berupa RAM dan ROM serta jalur I/O berupa port bit I/O dan port serial. Selain itu

Lebih terperinci

BAB III RANCANGAN DAN CARA KERJA ALAT

BAB III RANCANGAN DAN CARA KERJA ALAT BAB III RANCANGAN DAN CARA KERJA ALAT 3.1 Perancangan Alat 3.1.1 Blok Diagram Perancangan Alat Rancangan dan cara kerja alat secara blok diagram yaitu untuk mempermudah dalam menganalisa rangkaian secara

Lebih terperinci

Pengendalian 8 buah Motor oleh DST-51

Pengendalian 8 buah Motor oleh DST-51 Ib2 Pengendalian 8 buah Motor oleh DST-51 Pada aplikasinya, seringkali suatu sistem mikrokontroler digunakan untuk mengendalikan beberapa buah motor secara bersamaan. Berikut ini adalah pengendalian delapan

Lebih terperinci

BAB III RANCANGAN SISTEM. dirancanag. Setiap diagram blok mempunyai fungsi masing-masing. Adapun diagram

BAB III RANCANGAN SISTEM. dirancanag. Setiap diagram blok mempunyai fungsi masing-masing. Adapun diagram BAB III RANCANGAN SISTEM 3.1. Diagram Blok Rangkaian Diagram blok merupakan gambaran dasar dari rangkaian sistem yang akan dirancanag. Setiap diagram blok mempunyai fungsi masing-masing. Adapun diagram

Lebih terperinci

4. Port Input/Output Mikrokontroler MCS-51

4. Port Input/Output Mikrokontroler MCS-51 4. Port Input/Output Mikrokontroler MCS-51 Mikrokontroler MCS-51 memiliki 2 jenis port input/output, yaitu port I/O parallel dan port I/O serial. Port I/O parallel sebanyak 4 buah dengan nama P0,P1,P2

Lebih terperinci

Sumber Clock, Reset dan Antarmuka RAM

Sumber Clock, Reset dan Antarmuka RAM ,, Antarmuka RAM TSK304 - Teknik Interface dan Peripheral Eko Didik Teknik Sistem Komputer - Universitas Diponegoro Review Kuliah, Pembahasan tentang antarmuka di mikrokontroler 8051 (AT89S51) Sumber clock

Lebih terperinci

BAB III RANCANG BANGUN SISTEM KARAKTERISASI LED. Rancangan sistem karakterisasi LED diperlihatkan pada blok diagram Gambar

BAB III RANCANG BANGUN SISTEM KARAKTERISASI LED. Rancangan sistem karakterisasi LED diperlihatkan pada blok diagram Gambar BAB III RANCANG BANGUN SISTEM KARAKTERISASI LED 3.1. Rancang Bangun Perangkat Keras Rancangan sistem karakterisasi LED diperlihatkan pada blok diagram Gambar 3.1. Sistem ini terdiri dari komputer, antarmuka

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI 4 BAB II LANDASAN TEORI 2.1 Perangkat keras Mikrokontroler AT89S51 2.1.1 Arsitektur Mikrokontroler AT89S51 Mikrokontroler AT89S51 merupakan salah satu keluarga dari MCS-51 keluaran Atmel. Jenis mikrokontroler

Lebih terperinci

BAB III ANALISA DAN CARA KERJA RANGKAIAN

BAB III ANALISA DAN CARA KERJA RANGKAIAN BAB III ANALISA DAN CARA KERJA RANGKAIAN 3.1 Analisa Rangkaian Secara Blok Diagram Pada rangkaian yang penulis buat berdasarkan cara kerja rangkaian secara keseluruhan penulis membagi rangkaian menjadi

Lebih terperinci

BAB III METODE PENELITIAN

BAB III METODE PENELITIAN BAB III METODE PENELITIAN Pada bab ini akan dijelaskan langkah-langkah yang akan digunakan dalam menyelesaikan perangkat keras (hardware) yang berupa komponen fisik penunjang seperti IC AT89S52 dan perangkat

Lebih terperinci

Lab Elektronika Industri Mikrokontroler - 1 AT89C1051

Lab Elektronika Industri Mikrokontroler - 1 AT89C1051 Lab Elektronika Industri Mikrokontroler - 1 AT89C1051 I. FITUR AT89C1051 Kompatibel dengan produk MCS51 1k byte program flash ROM yang dapa diprogram ulang hingga 1000 kali Tegangan operasi 2.7 volt hingga

Lebih terperinci

MIKROKONTROLER AT89S52

MIKROKONTROLER AT89S52 MIKROKONTROLER AT89S52 Mikrokontroler adalah mikroprosessor yang dirancang khusus untuk aplikasi kontrol, dan dilengkapi dengan ROM, RAM dan fasilitas I/O pada satu chip. AT89S52 adalah salah satu anggota

Lebih terperinci

DASAR INPUT/OUTPUT (1) (PORT PPI DAN PORT 1 SEBAGAI OUTPUT)

DASAR INPUT/OUTPUT (1) (PORT PPI DAN PORT 1 SEBAGAI OUTPUT) Percobaan DASAR INPUT/OUTPUT () (PORT PPI DAN PORT SEBAGAI OUTPUT) Menggunakan DT-5 MinSys Mengamati keluaran data berupa nyala LED setelah proses pemindahan data (akses eksternal) dari sebuah register

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Mikrokontroller AT89S51 Didalam pembuatan alat ini peran penting mikrokontroller sangat berpengaruh dalam menentukan hasil akhir /output dari fungsi alat ini, yang mana hasil akhir/ouput

Lebih terperinci

BAB IV PENGUJIAN ALAT

BAB IV PENGUJIAN ALAT BAB IV PENGUJIAN ALAT 4.1 Pengujian Rangkaian Setelah semua komponen terpasang dan program selesai disusun, maka langkah berikutnya adalah melakukan pengujian alat. Pengujian ini dilakukan secara bertahap

Lebih terperinci

BAHASA PEMOGRAMAN AT89S/Cxx (assembly)

BAHASA PEMOGRAMAN AT89S/Cxx (assembly) 1 BAHASA PEMOGRAMAN AT89S/Cxx (assembly) Operand dalam pemograman mikrokontroler adalah data yang tersimpan dalam memory, register dan input/output (I/O). Instruksi yang dikenal secara umum dikelompokan

Lebih terperinci

BAB 2 TINJAUAN TEORITIS. Sensor TGS 2610 merupakan sensor yang umum digunakan untuk mendeteksi adanya

BAB 2 TINJAUAN TEORITIS. Sensor TGS 2610 merupakan sensor yang umum digunakan untuk mendeteksi adanya 10 BAB 2 TINJAUAN TEORITIS 2.1 Sensor TGS 2610 2.1.1 Gambaran umum Sensor TGS 2610 merupakan sensor yang umum digunakan untuk mendeteksi adanya kebocoran gas. Sensor ini merupakan suatu semikonduktor oksida-logam,

Lebih terperinci

BAB III PERANCANGAN. Perancangan tersebut mulai dari: spesifikasi alat, blok diagram sampai dengan

BAB III PERANCANGAN. Perancangan tersebut mulai dari: spesifikasi alat, blok diagram sampai dengan 41 BAB III PERANCANGAN Pada bab ini akan menjelaskan perancangan alat yang akan penulis buat. Perancangan tersebut mulai dari: spesifikasi alat, blok diagram sampai dengan perancangan rangkaian elektronik,

Lebih terperinci

BAB 2 LANDASAN TEORI. bisa digunakan untuk memindahkan program yang ber-ekstention.hex ke Flash,

BAB 2 LANDASAN TEORI. bisa digunakan untuk memindahkan program yang ber-ekstention.hex ke Flash, BAB 2 LANDASAN TEORI Arsitektur Mikrokontroler AT89S51 Programer Atmel seri S merupakan programer yang serbaguna, karena programer ini bisa digunakan untuk memindahkan program yang ber-ekstention.hex ke

Lebih terperinci

BAB 2 LANDASAN TEORI. Dalam bab ini penulis akan membahas tentang komponen-komponen yang

BAB 2 LANDASAN TEORI. Dalam bab ini penulis akan membahas tentang komponen-komponen yang BAB 2 LANDASAN TEORI Dalam bab ini penulis akan membahas tentang komponen-komponen yang digunakan dalam seluruh unit sistem ini. Agar pembahasan tidak melebar dan menyimpang dari topik utama laporan ini,

Lebih terperinci

USER MANUAL PINTU GERBANG DENGAN KENDALI TOMBOL MATA DIKLAT : SISTEM KENDALI DAN OTOMASI

USER MANUAL PINTU GERBANG DENGAN KENDALI TOMBOL MATA DIKLAT : SISTEM KENDALI DAN OTOMASI USER MANUAL PINTU GERBANG DENGAN KENDALI TOMBOL MATA DIKLAT : SISTEM KENDALI DAN OTOMASI SISWA ELEKTRONIKA INDUSTRI 2010 JURUSAN TEKNIK ELEKTRONIKA INDUSTRI UPTD SMK NEGERI 3 BOYOLANGU TULUNGAGUNG 2 CREW

Lebih terperinci

BAB IV HASIL PENGUKURAN DAN PENGUJIAN ALAT SISTEM PENGONTROL BEBAN DAYA LISTRIK

BAB IV HASIL PENGUKURAN DAN PENGUJIAN ALAT SISTEM PENGONTROL BEBAN DAYA LISTRIK BAB IV HASIL PENGUKURAN DAN PENGUJIAN ALAT SISTEM PENGONTROL BEBAN DAYA LISTRIK 4.1 Pengukuran Alat Pengukuran dilakukan untuk melihat apakah rangkaian dalam sistem yang diukur sesuai dengan spesifikasi

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang 1.2 Rumusan Masalah

BAB I PENDAHULUAN 1.1 Latar Belakang 1.2 Rumusan Masalah BAB I PENDAHULUAN 1.1 Latar Belakang Dewasa ini, banyak terjadi kecelakaan didunia pertransportasian. Salah satunya dalam industri perkeretaapian. Salah satu penyebab banyaknya kecelakaan adalah disebabkan

Lebih terperinci

BAB 2 LANDASAN TEORI. Agar kendaraan lebih teratur dan tidak terlalu padat, biasanya tempat perparkiran ini dibagi

BAB 2 LANDASAN TEORI. Agar kendaraan lebih teratur dan tidak terlalu padat, biasanya tempat perparkiran ini dibagi BAB 2 LANDASAN TEORI 2.1. Inteligent Parking System Agar kendaraan lebih teratur dan tidak terlalu padat, biasanya tempat perparkiran ini dibagi menjadi beberapa tempat. Dengan demikian kendaraan yang

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA BAB 2 TINJAUAN PUSTAKA 2.1. Perangkat Keras 2.1.1. Mikrokontroler AT89S51 Mikrokontroler merupakan suatu komponen elektronika yang di dalamnya terdapat rangkaian mikroprosesor, memori (RAM atau ROM) dan

Lebih terperinci

BAB III PERANCANGAN ALAT

BAB III PERANCANGAN ALAT BAB III PERANCANGAN ALAT 3.1 Diagram Blok Rangkaian Pada bab ini akan di bahas tentang perancangan sebuah alat yang meliputi diagram blok rangkaian dan realisasi rangkaian dengan prinsip kerja dari masingmasing

Lebih terperinci

PERCOBAAN 1 DISPLAY LED

PERCOBAAN 1 DISPLAY LED PERCOBAAN 1 DISPLAY LED TUJUAN: 1. Memahami rangkaian mikrokontroller untuk menghidupkan dan mematikan LED. 2. Memahami program assembly untuk menghidupkan dan mematikan LED. 3. Memahami beberapa instruksi

Lebih terperinci

TIMER DAN COUNTER MIKROKONTROLER ATMEL

TIMER DAN COUNTER MIKROKONTROLER ATMEL Lab Elektronika Industri Mikrokontroler - 1 TIMER DAN COUNTER MIKROKONTROLER ATMEL I. TIMER DAN COUNTER Timer atau counter pada dasarnya adalah sebuah pencacah. Pencacah itu bisa dipakai sebagai pewaktu

Lebih terperinci

BAB IV ANALISA DAN HASIL UJI COBA RANGKAIAN

BAB IV ANALISA DAN HASIL UJI COBA RANGKAIAN BAB IV ANALISA DAN HASIL UJI COBA RANGKAIAN 4.1 Prinsip Kerja Rangkaian Rangkaian ini bekerja berdasarkan dua buah sensor yang di pasang secara berdampingan, dengan memanfaatkan Phototransistor sebagai

Lebih terperinci

BAB 2 TINJAUAN PUSTAKA

BAB 2 TINJAUAN PUSTAKA BAB 2 TINJAUAN PUSTAKA 2.1 PERANGKAT KERAS 2.1.1 Arsitektur Mikrokontroler AT89S51 Arsitektur AT89S51 sudah memiliki beberapa komponen yang pada masa lalu merupakan chip tersendiri, sub komponen tersebut

Lebih terperinci

BAB IV PENGUJIAN DAN ANALISA SISTEM

BAB IV PENGUJIAN DAN ANALISA SISTEM BAB IV PENGUJIAN DAN ANALISA SISTEM Bab ini menjelaskan tentang pengujian sistem yang telah direalisasi. Tujuan pengujian ini adalah untuk mengetahui apakah sistem yang telah direalisasi sesuai dengan

Lebih terperinci

BAB III TEORI PENUNJANG. Microcontroller adalah sebuah sistem fungsional dalam sebuah chip. Di

BAB III TEORI PENUNJANG. Microcontroller adalah sebuah sistem fungsional dalam sebuah chip. Di BAB III TEORI PENUNJANG 3.1. Microcontroller ATmega8 Microcontroller adalah sebuah sistem fungsional dalam sebuah chip. Di dalamnya terkandung sebuah inti proccesor, memori (sejumlah kecil RAM, memori

Lebih terperinci

Replika Sistem Atap Otomatis Untuk Pelindung Benda Terhadap Hujan Berbasis Mikrokontroler AT89S52

Replika Sistem Atap Otomatis Untuk Pelindung Benda Terhadap Hujan Berbasis Mikrokontroler AT89S52 Replika Sistem Atap Otomatis Untuk Pelindung Benda Terhadap Hujan Berbasis Mikrokontroler AT89S52 MUHAMAD SULEMAN Fakultas Ilmu Komputer dan Teknologi Informasi, Universitas Gunadarma muhamad.suleman@yahoo.co.id

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1. Perangkat Keras (Hardware) 2.1.1. Mikrokontroller AT89S51 Mikrokontroller, sebagai suatu terobosan teknologi mikrokontroller dan mikrokomputer, hadir memenuhi kebutuhan pasar

Lebih terperinci

BAB II TEORI DASAR. peralatan input / output ( I / O ) pendukung di dalamnya. Suatu sistem mikroprosesor

BAB II TEORI DASAR. peralatan input / output ( I / O ) pendukung di dalamnya. Suatu sistem mikroprosesor BAB II TEORI DASAR 2. 1 Sistem Mikrokontroler AT89S52 Mikrokontroller adalah suatu perangkat keras yang memiliki memori dan peralatan input / output ( I / O ) pendukung di dalamnya. Suatu sistem mikroprosesor

Lebih terperinci

PERCOBAAN 2 SAKLAR PUSH BUTTON

PERCOBAAN 2 SAKLAR PUSH BUTTON TUJUAN: PERCOBAAN 2 SAKLAR PUSH BUTTON 1. Memahami rangkaian mikrokontroller dengan interface ke saklar 2. Memahami program assembly untuk mengambil data saklar dan mengeluarkan data ke LED. 3. Memahami

Lebih terperinci

BAB 2 LANDASAN TEORI. Mikrokontroler AT89S51 hanya memerlukan tambahan 3 kapasitor, 1 resistor dan 1

BAB 2 LANDASAN TEORI. Mikrokontroler AT89S51 hanya memerlukan tambahan 3 kapasitor, 1 resistor dan 1 BAB 2 LANDASAN TEORI 2.1 Defenisi AT89S51 Mikrokontroler AT89S51 hanya memerlukan tambahan 3 kapasitor, 1 resistor dan 1 kristal serta catu daya 5 Volt. Kapasitor 10 mikro-farad dan resistor 10 Kilo Ohm

Lebih terperinci

AD Channel AD Conversion

AD Channel AD Conversion AD-0809 8 Channel AD Conversion Fitur: - 8 Channel Multiplex Analog Input - 0 5 Volt Analog Input - 4 Interrupt Output Selector - 4 Address Selector - Kompatibel DST-51 Minimum System & SC-51 - Free Running

Lebih terperinci

DESIGN INTERFACE PADA AT89S52 8k Byte In-System Programmable 8bit Mikrokontroler

DESIGN INTERFACE PADA AT89S52 8k Byte In-System Programmable 8bit Mikrokontroler Lab Elektronika Industri Mikrokontroler 1 DESIGN INTERFACE PADA AT89S52 8k Byte In-System Programmable 8bit Mikrokontroler I. FITUR UTAMA Perancangan interface terkait dengan fasilitas port yand ada pada

Lebih terperinci

AT89S52 8kByte In-System Programmable Mikrokontroler

AT89S52 8kByte In-System Programmable Mikrokontroler Lab Elektronika Industri Mikrokontroler 1 AT89S52 8kByte In-System Programmable Mikrokontroler I. Fitur AT89S52 Kompatibel dengan produk MCS51 Intel 8kByte Flah Memori dengan In-System Programmable (ISP)

Lebih terperinci

Tabel Perbandingan ROM dan RAM pada beberapa seri ATMEL

Tabel Perbandingan ROM dan RAM pada beberapa seri ATMEL Pendahuluan Mikroprosessor 8051 (Struktur dan Organisasi Memori, SFR ) Tabel Perbandingan ROM dan RAM pada beberapa seri ATMEL A. Organisasi Memori Mikroprosesor 8051 Pada mikrokontroler keluarga MCS51

Lebih terperinci

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM BAB III PERANCANGAN SISTEM Pada bab ini membahas perencanaan dan pembuatan dari alat yang akan dibuat yaitu Perencanaan dan Pembuatan Pengendali Suhu Ruangan Berdasarkan Jumlah Orang ini memiliki 4 tahapan

Lebih terperinci

BAB III PERENCANAAN DAN REALISASI

BAB III PERENCANAAN DAN REALISASI BAB III PERENCANAAN DAN REALISASI 3.1 PERANCANGAN UMUM SISTEM Metode untuk pelaksanaan Program dimulai dengan mempelajari system pengukuran tangki air yang akan digunakan. Dari sini dikembangkan apa saja

Lebih terperinci

USER MANUAL TRAINER TOMBOL & LED 8 BIT MENGGUNAKAN AT89S51 MATA PELAJARAN:ELEKTRONIKA KENDALI

USER MANUAL TRAINER TOMBOL & LED 8 BIT MENGGUNAKAN AT89S51 MATA PELAJARAN:ELEKTRONIKA KENDALI USER MANUAL TRAINER TOMBOL & LED 8 BIT MENGGUNAKAN AT89S51 MATA PELAJARAN:ELEKTRONIKA KENDALI SISWA TINGKAT XII - ELEKTRONIKA INDUSTRI JURUSAN TEKNIK ELEKTRONIKA INDUSTRI SEKOLAH MENENGAH KEJURUAN SMK

Lebih terperinci

BAB III PERANCANGAN DAN CARA KERJA RANGKAIAN

BAB III PERANCANGAN DAN CARA KERJA RANGKAIAN BAB III PERANCANGAN DAN CARA KERJA RANGKAIAN 3.1 Diagram Blok Rangkaian Secara Detail Pada rangkaian yang penulis buat berdasarkan cara kerja rangkaian secara keseluruhan penulis membagi rangkaian menjadi

Lebih terperinci

BAB I PENDAHULUAN. 1.2 Rumusan Masalah Berdasarkan uraian di atas, dapat dikemukakan permasalahan sebagai berikut:

BAB I PENDAHULUAN. 1.2 Rumusan Masalah Berdasarkan uraian di atas, dapat dikemukakan permasalahan sebagai berikut: BAB I PENDAHULUAN 1.1 Latar Belakang dan Permasalahan Seiring dengan makin meningkatnya jumlah pengguna kendaraan bermotor dan maraknya pencurian kendaraan bermotor, penggunaan alat keamanan standar yang

Lebih terperinci

BAB V PENGUJIAN DAN ANALISIS. dapat berjalan sesuai perancangan pada bab sebelumnya, selanjutnya akan dilakukan

BAB V PENGUJIAN DAN ANALISIS. dapat berjalan sesuai perancangan pada bab sebelumnya, selanjutnya akan dilakukan BAB V PENGUJIAN DAN ANALISIS Pada bab ini akan diuraikan tentang proses pengujian sistem yang meliputi pengukuran terhadap parameter-parameter dari setiap komponen per blok maupun secara keseluruhan, dan

Lebih terperinci

PERTEMUAN PERANGKAT KERAS MIKROKONTROLER

PERTEMUAN PERANGKAT KERAS MIKROKONTROLER PERTEMUAN PERANGKAT KERAS MIKROKONTROLER Pendahuluan Pada dasarnya mikrokontroler bukanlah ilmu pengetahuan yang baru, tetapi adalah hasil pengembang dalam teknologi elektronika. Jika dasar pengetahuan

Lebih terperinci

Laporan Modul 2, EL3006 Timer/Counter dan Interrupt Jongguran Sondang DN ( )/ Kelompok 48/ Jumat, 14 Maret 2008 Asisten: Virgilius

Laporan Modul 2, EL3006 Timer/Counter dan Interrupt Jongguran Sondang DN ( )/ Kelompok 48/ Jumat, 14 Maret 2008 Asisten: Virgilius Laporan Modul 2, EL3006 Timer/Counter dan Interrupt Jongguran Sondang DN (132 05 110)/ Kelompok 48/ Jumat, 14 Maret 2008 Asisten: Virgilius Abstrak pada praktikum kali ini, praktikan diharapkan mampu membuat

Lebih terperinci

PENGATURAN SAKELAR PADA ACARA CEPAT TEPAT BERBASIS MIKROKONTROLER AT89C2051

PENGATURAN SAKELAR PADA ACARA CEPAT TEPAT BERBASIS MIKROKONTROLER AT89C2051 ISSN: 1693-6930 185 PENGATURAN SAKELAR PADA ACARA CEPAT TEPAT BERBASIS MIKROKONTROLER AT89C2051 Tole Sutikno, Anton Yudhana, Didi Siprian Program Studi Teknik Elektro Fakultas Teknologi Industri Universitas

Lebih terperinci

Alarm Pintu, Harap Pintu Tutup Kembali, Jangan Buka Pintu Lama-lama versi 2

Alarm Pintu, Harap Pintu Tutup Kembali, Jangan Buka Pintu Lama-lama versi 2 Alarm Pintu, Harap Pintu Tutup Kembali, Jangan Buka Pintu Lama-lama versi 2 Kalo sobat pernah jalan-jalan ke sebuah kantor dan lihat di pintu ada tulisan: HARAP PINTU TUTUP KEMBALI atau MOHON PINTU TUTUP

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA 4 BAB II TINJAUAN PUSTAKA 2.1 Mikrokontroler AT89S51 Mikrokontroler, sebagai suatu terobosan teknologi mikrokontoler dan mikrokomputer, hadir memenuhi kebutuhan pasar (market need) dan teknologi baru.

Lebih terperinci

BAB IV PENGUJIAN ALAT

BAB IV PENGUJIAN ALAT 55 BAB IV PENGUJIAN ALAT Pada bab ini akan membahas tentang pengujian dan pengukuran pada masingmasing bagian dari blok diagram rancang bangun papan skor LED analog berbasis mikrokontroller ATMEGA8535.

Lebih terperinci

BAB II TINJAUAN PUSTAKA. Jantung dalam terminologi sederhana, merupakan sebuah pompa yang terbuat

BAB II TINJAUAN PUSTAKA. Jantung dalam terminologi sederhana, merupakan sebuah pompa yang terbuat BAB II TINJAUAN PUSTAKA 2.1 Jantung Jantung dalam terminologi sederhana, merupakan sebuah pompa yang terbuat dari otot. Jantung merupakan salah satu organ terpenting dalam tubuh manusia yang berperan dalam

Lebih terperinci

THERMOMETER DIGITAL DENGAN MODUL DST-51, ADC-0809 DAN LCD 2X16

THERMOMETER DIGITAL DENGAN MODUL DST-51, ADC-0809 DAN LCD 2X16 THERMOMETER DIGITAL DENGAN MODUL DST-51, ADC-0809 DAN LCD 2X16 LCD 2x16 Modul DST-51 Modul ADC-0809 Amplifier LM35 Gambar 1 Blok Diagram Sistem Aplikasi thermometer digital dilakukan dengan melakukan konversi

Lebih terperinci

CONTOH-CONTOH PROGRAM MIKROKONTROLER

CONTOH-CONTOH PROGRAM MIKROKONTROLER CONTOH-CONTOH PROGRAM MIKROKONTROLER Yoyo Somantri dan Erik Haritman Dosen Jurusan Pendidikan Teknik Elektro FPTK Universitas Pendidikan Indonesia Pendahuluan Dalam bab ini akan dibahas tujuan perkuliahan,

Lebih terperinci

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM BAB III PERANCANGAN SISTEM 3.1 Rancangan Perangkat Keras 3.1.1 Blok Diagram Sistem Blok diagram dari sistem AVR standalone programmer adalah sebagai berikut : Tombol Memori Eksternal Input I2C PC SPI AVR

Lebih terperinci

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB III PERANCANGAN DAN PEMBUATAN ALAT BAB III PERANCANGAN DAN PEMBUATAN ALAT 3.1 Uraian Umum Dalam perancangan alat akses pintu keluar masuk menggunakan pin berbasis mikrokontroler AT89S52 ini, penulis mempunyai pemikiran untuk membantu mengatasi

Lebih terperinci

BAB IV PENGUJIAN DAN ANALISA DATA

BAB IV PENGUJIAN DAN ANALISA DATA BAB IV PENGUJIAN AN ANALISA ATA Pada bab ini akan dibahas tentang pengujian dan pengoperasian Sistem Pendeteksi Kebocoran Gas pada Rumah Berbasis Layanan Pesan Singkat yang telah selesai dirancang. Pengujian

Lebih terperinci

APLIKASI MIKROKONTROLER AT89C51 PADA MODEL ALAT PEMBERSIH LANTAI

APLIKASI MIKROKONTROLER AT89C51 PADA MODEL ALAT PEMBERSIH LANTAI ISSN: 1693-6930 151 APLIKASI MIKROKONTROLER AT89C51 PADA MODEL ALAT PEMBERSIH LANTAI Sunardi, Wahyu S Aji, Rifkan Firdaus Program Studi Teknik Elektro Universitas Ahmad Dahlan Kampus III UAD Jl. Prof Soepomo

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA BAB II TINJAUAN PUSTAKA 2.1 REMOTE TV Remote TV adalah suatu pengontrol, yang fungsinya untuk merubah dan meng-set TV yang dapat digunakan untuk merubah saluran TV seperti ingin melihat saluran ( RCTI,

Lebih terperinci

BAB 3 PERANCANGAN SISTEM. pada sistem pengendali lampu telah dijelaskan pada bab 2. Pada bab ini akan dijelaskan

BAB 3 PERANCANGAN SISTEM. pada sistem pengendali lampu telah dijelaskan pada bab 2. Pada bab ini akan dijelaskan BAB 3 PERANCANGAN SISTEM Konsep dasar mengendalikan lampu dan komponen komponen yang digunakan pada sistem pengendali lampu telah dijelaskan pada bab 2. Pada bab ini akan dijelaskan perancangan sistem

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1. Perangkat Keras 2.1.1. Mikrokontroler AT89S51 Mikrokontroler sebagai suatu terobosan teknologi mikrokontroler dan mikrokomputer hadir memenuhi kebutuhan pasar (market need) dan

Lebih terperinci

TAMPILKAN NADA DTMF DAN DERING TELEPHONE OLEH MODUL DF-88 DAN MODUL DST-51 PADA LCD

TAMPILKAN NADA DTMF DAN DERING TELEPHONE OLEH MODUL DF-88 DAN MODUL DST-51 PADA LCD TAMPILKAN NADA DTMF DAN DERING TELEPHONE OLEH MODUL DF-88 DAN MODUL DST-51 PADA LCD Pada aplikasi-aplikasi menggunakan saluran telephone, proses deteksi nada DTMF maupun sinyal dering seringkali dibutuhkan,

Lebih terperinci

BAB III PERANCANGAN ALAT

BAB III PERANCANGAN ALAT 21 BAB III PERANCANGAN ALAT 3.1 Diagram Blok Rangkaian Rangkaian Pen- Charge Baterei Batere ADC Relay Rangkaian Setting Nilai Minimum Rangkaian Setting Nilai Maksimum Rangakaian Keypad MikrokontrolerAT89S51

Lebih terperinci

PERCOBAAN 9 T I M E R/ COUNTER

PERCOBAAN 9 T I M E R/ COUNTER PERCOBAAN 9 T I M E R/ COUNTER TUJUAN 1. Memahami fungsi timer dan counter pada mikrokontroller 2. Memahami rangkaian interface untuk aplikasi timer dan counter 3. Dapat memanfaatkan fungsi counter untuk

Lebih terperinci

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika TAKARIR AC (Alternating Current) Adalah sistem arus listrik. Sistem AC adalah cara bekerjanya arus bolakbalik. Dimana arus yang berskala dengan harga rata-rata selama satu periode atau satu masa kerjanya

Lebih terperinci

BAB II DASAR TEORI MIKROKONTROLER II (PENERIMA DATA) MEDIA PENGIRIMAN DATA. Gambar 2.1 Blok Pengiriman Data Mikrokontroler I ke Mikrokontroler II

BAB II DASAR TEORI MIKROKONTROLER II (PENERIMA DATA) MEDIA PENGIRIMAN DATA. Gambar 2.1 Blok Pengiriman Data Mikrokontroler I ke Mikrokontroler II BAB II DASAR TEORI 2.1 Komunikasi Data Paralel Prinsip dasar dari sistem komunikasi data paralel adalah suatu cara untuk pengiriman atau pertukaran data dari kedua pihak dengan menggunakan sirkuit yang

Lebih terperinci

BAB III PERANCANGAN ALAT. dimmer atau terang redup lampu dan pengendalian pada on-off lampu. Remote

BAB III PERANCANGAN ALAT. dimmer atau terang redup lampu dan pengendalian pada on-off lampu. Remote BAB III PERANCANGAN ALAT Dalam merancang alat pengendali nyala lampu menggunakan media infra merah berbasis mikrokontroler terbagi atas dua pengendalian yaitu pengendalian dimmer atau terang redup lampu

Lebih terperinci

BAB II TINJAUAN PUSTAKA. 2.1PHOTODIODA Dioda foto adalah jenis dioda yang berfungsi mendeteksi cahaya. Berbeda dengan

BAB II TINJAUAN PUSTAKA. 2.1PHOTODIODA Dioda foto adalah jenis dioda yang berfungsi mendeteksi cahaya. Berbeda dengan 4 BAB II TINJAUAN PUSTAKA 2.1PHOTODIODA Dioda foto adalah jenis dioda yang berfungsi mendeteksi cahaya. Berbeda dengan dioda biasa, komponen elektronika ini akan mengubah cahaya menjadi arus listrik. Cahaya

Lebih terperinci