KOMUNIKASI PORT SERIAL MELALUI HYPERTERMINAL I. II.
Alat dan Bahan Seperangkat komputer Tujuan Dapat komunikasi port serial komputer melalui Hyperterminal
III.
dengan mikrokontroller. Dapat mengendalikan output port dengan komunikasi serial.
Dasar Teori Pada dasarnya port serial komputer menggunakan level RS-232, RS
(Recommended Standard) dikeluarkan oleh EIA (Electronic industry Association). Dalam logika RS-232 logika 1dinyatakan sebagai markdengan level tegangan antara 3v dan -25v (negatif), sedangkan logika 0 dinyatakan sebagai space dengan tegangan level antara 3v dan 25v ( positif). Konektor DB9 pada bagian belakang komputer PC adalah port serial RS-232 yang biasa dinamai COM1 atau COM2.
Gambar 1. Konektor DB-9 pada PC
Tabel 1. Konfigurasi Pin RS-232
Keterangan mengenai saluran RS-232 pada konektor DB-9 adalah sebagai berikut: 1. Received line signal detect, dengan saluran ini DCE memberitahukan pada DTE bahwa terminal masukan ada data masukan. 2. Received data, digunakan DTE menerima data dari DCE. 3. Transmit data, digunakan DTE mengirimkan data ke DCE. 4. Data terminal ready, pada saluran ini DTE memberitahukan kesiapan sinyalnya. 5. Signal ground, saluran ground. 6. DCE ready, sinyal aktif pada saluran ini menunjukkan bahwa DCE sudah siap. 7. Request to send, dengan saluran ini DCE diminta mengirimkan data oleh DTE. 8. Clear to send, dengan saluran ini DCE memberitahukan pada DTE boleh mengirimkan data . 9. Ring indicator, pada saluran ini DCE memberitahukan pada DTE bahwa stasiun menghendaki hubungan dengannya. Tata cara komunikasi serial data port serial Komunikasi data secara serial yaitu: komunikasi data serial sinkron dan asinkron. Komunikasi data serial sinkron dimana clock dikirim bersama-sama dengan data serial sedangkan komunikasi data serial asinkron dimana clock tidak dikirim bersama-sama tapi dibangkitkan secara sendiri baik dari sisi pengirim maupun penerima.
Gambar 2. Pengiriman data melalui port serial Pada kondisi tanpa data (idle) sinyal berlogika tinggi (high). Saat data mulai dikirimkan, akan diawali dengan memberikan sinyal start bit (Sb) dengan berlogika rendah (low) sebagai tanda awal pengiriman data, diikuti dengan data yang dikirim (5,6,7,8, atau 9 bit). Bit paritas bersifat opsional, terakhir ditambah dengan Stop bit (Sb) yang dapat berjumlah 1 atau 2 bit. Untuk komunikasi serial antara PC dengan mikrokontroller tidak dapat dilakukan secara langsung dengan mengkoneksikan Pin Tx pada PC dengan Pin Rx pada mikrokontroller dan Pin Rx mikrokontroller atau alat lain ( Hand phone). Komunikasi serial juga dapat dilakukan secara wireless seperti komunikasi serial dengan joystick PS2.
IV.
Percobaan Gambar Rangkaian
Gambar 3. Skema Rangkaian Sistem Minimum AT89S52
Gambar 4. Skema Rangkaian Komunikasi Serial RS-232
Gambar 5. Layout Rangkaian dan Tata Letak Komponen Sistem Minimum AT89S52
Gambar 6. Layout Rangkaian dan Tata Letak Komponen RS-232
IV.1.1 Contoh program Assembler (source code) Mikrokontroler. Org 00h sjmp main Org 23h sjmp erint Org 30h main: mov tmod,#20h mov th1,#0fdh mov scon,#50h setb tr1 mov r0,#60h mov sp,#10h setb es setb ea mov dptr,#datanya mov r2,#20 kirim: clr a movc a,@a+dptr mov sbuf,a jnb ti,s clr ti inc dptr djnz r2,kirim dead: sjmp dead erint: jb ri,rev_ch clr ti reti rev_ch:
push psw push acc mov a,sbuf cir ri cjne a,#’L’,led1 mov p1,#0feh sjmp exit led1: sjne a#’M’,led2 mov p1,#0ffh sjmp exit led2: cjne a,#’X’,led3 mov p1,#0fah sjmp exit led3: cjne a,#’Y’,led4 mov p1,#0ffh sjmp exit led4: mov p1,#0ffh exit: mov sbuf,a pop acc pop psw reti datanya: db ’selamat datang...’13,10 end
IV.1.2 Mengaktifkan Hyperterminal untuk komunikasi port serial komputer PC dengan mikrokontroler. IV.1.2.1 Mengaktifkan Hyperterminal
Pilih start lalu klik Pilih All program lalu klik Pilih accessories lalu klik Pilih communication lalu klik Pilih hyperterminal lalu klik Muncul tampilan dibawah ini
Lalu isi dengan nama tertentu Kemudian tulis misalnya : Irene Lalu tekan OK Sorot connect using Lalu pilih jenis com yang akan digunakan misalnya : com1
Kemudian pilih baud rate yang sesuai dengan mikrokontroler Misal : 9600 Pilih flow control Misalnya : none Lalu tekan OK Kemudian muncul komunikasi Hyperterminal
Lalu letakkan kursor pada form komunikasi Hyperterminal Lalu ketik karakter Q kemudian lihat LED di port 2.0 berlogika 0 (led
akan menyala).
Lalu seterusnya dapat dimasukkan karakter yang lain untuk menguji data yang dikirim dari komunikasi Hyperterminal.
IV.2.1 Latihan membuat program untuk karakter yang lain melalui komunikasi V.
Hyperterminal dan dihubungkan dengan mikrokontroler AT8952 Membuat program untuk menontrol LED dengan menekan karakter a. Membuat program untuk menontrol LED dengan menekan karakter b. Membuat program untuk menontrol LED dengan menekan karakter c. Hasil percobaan Catat hasil tampilan komunikasi Hyperterminal percobaan VI.1 Catat hasil program komunikasi Hyperterminal percobaan VI.2 Simulasikan hasil tampilan visual. Uji pengiriman karakter pada tombol command button.
VI.
Analisa percobaan Komunikasi Serial Dengan Sistem Minimum AT89S52 dan IC RS-232 ini
berfungsi sebagai Alat untuk Mikrokontroller dapat berkomunikasi dengan alatalat yang support dengan komunikasi serial, pada percobaan kali ini, kita mengkomunikasikan Mikrokotroller AT89S52 dengan Laptop/PC. Pada Laptop/PC, kita menggunakan program HyperTerminal agar bisa mengkomunikasikan
Mikrokontroller
AT89S52
dengan
Laptop/PC.
HyperTerminal adalah sebuah program yang dirancang untuk melaksanakan fungsi komunikasi dan emulasi terminal. Juga dikenal sebagai HyperTerm, program ini telah ditawarkan sebagai bagian dari sistem operasi Microsoft sejak peluncuran Windows 98. Pada dasarnya, HyperTerminal memungkinkan pengguna komputer memanfaatkan komputer lainnya untuk berhubungan antara dua system. HyperTerminal memanfaatkan port serial dan kontrol yang terkait dengan perangkat eksternal. IC RS-232 berfungsi untuk menyamakan Level Tegangan Antara Mikrokontroller dengan Laptop atau alat yang akan di komunikasikan dengan mikrkontroller, mikrokontroller mempunyai level tegangan sebesar 5 V sedangkan level tegangan dari laptop atau PC dapat mencapai lebih dari 5V. Level tegangan inilah yang di konversikan oleh IC RS-232 ini, untuk Komunikasi serial ini menggunakan 3 jalur “RX ” dan “TX, dan jalur “Gnd”. Jalur RX adalah jalur untuk menerima data yang di kirim melalui serial, jalur TX adalah jalur yang berfungsi sebagai jalur untuk mengirim data, jadi pada komunikasi serial, Jalur RX pada Laptop akan Bertemu dengan jalur TX, dan sebaliknya jalur TX akan bertemu dengan Jalur RX, serta pada jalur Gnd berfungsi untuk menyatukan ground antara mikrokontroller dengan laptop. Untuk bautd rate atau kecepatan bit data yang di transfer dalam satu second juga harus sinkron antara Crystall, bautd rate, dan konfigurasi software (hyperterminal) harus sama yaitu 9600, untuk bautd rate dengan nilai 9600 menggunkan crystal antara 11MHz-12Mh. Dan sebagai output dan indicator
sederhana di gunakan Led pada Port 2, cara kerja led adalah arus dan tegangan akan mengalir dari kutub anoda (+) menuju ke kutub kathoda (-), di karenakan kita akan memakai logika 0 untuk mengaktifkan led, maka yang di hubungkan ke Port 2 adalah kutub kathoda led, dan kutub anoda led di hubungkan dengan VCC dengan Resistor 330 ohm. Jadi ketika led pada kutub katoda di beri logic 0 (gnd) arus akan mengalir dan led akan hidup karena anoda led di hubungkan dengan VCC dengan resistor 330 ohm, namum ketika kutub katoda led yang terhubung dengan P0 di beri logika 1 (vcc) maka arus tidak akan mengalir dari anoda dan led tidak hidup. Berikut Program yang di buat dengan aplikasi BASCOM-IDE :
Penjelasan: $regfile = "8052.dat"
Jenis mikrontroller yang di gunakan, yaitu dari keluarga Atmel 8052. Konfigurasi ini dapat di gunakan untuk semuajenis mikrokontroller dari keluarga Atmel 8052. $baud = 9600 Kecepatan transfer data dalam bit/second $crystal = 12000000 Settingan crystal yang di gunakan sebesar 12Mhz, untuk bautd rate 9600 Dim A As Byte Membuat Variable “A” dengan bentuk “byte” Print "***Mikrokontroler Terkoneksi!!***" Waitms 500 Print "Test Serial (Kontrol LED Port 2)" Waitms 500 Print "Irene Taradias" Waitms 500 Print "Silahkan tekan tombol 1,2,3,4,5,6,7, atau 8" Waitms 500 Print "Atau Tombol q,w,e,r,t,y,u, atau i" Menampilkan “Mikrokontroller Terkoneksi Test Serial (Kontrol LED Port 2 Irene Taradias
Silahkan tekan tombol 1,2,3,4,5,6,7, atau 8 Atau Tombol q,w,e,r,t,y,u, atau i” Pada display yang digunakan, dalam percobaan ini akan ditampilkan di Hyperterminal pada saat telah terkoneksi antara Mikrokontroller dengan Laptop/PC. P2 = &H00 Waitms 500 P2 = &HFF Keadaan LED sebelum melakukan/memulai program utama dengan waktu tunda 500ms Do start/memulai program utama A = Waitkey() variable “A” menunggu untuk data “karakter” yang di kirim dari laptop Select Case A memilih kondisi data / karakter yang di terima mikrokontroller Case "1" : P2.0 = 0 kondisi jika karakter “1” di kirim ke mikrokontroller dan P2.0 berlogika 0 maka led pada P2.0 akan hidup Case "2" : P2.1 = 0 kondisi jika karakter “2” di kirim ke mikrokontroller dan P2.1 berlogika 0 maka led pada P2.1 akan hidup Case "3" : P2.2 = 0
kondisi jika karakter “3” di kirim ke mikrokontroller dan P2.2 berlogika 0 maka led pada P2.2 akan hidup Case "4" : P2.3 = 0 kondisi jika karakter “4” di kirim ke mikrokontroller dan P2.3 berlogika 0 maka led pada P2.3 akan hidup Case "5" : P2.4 = 0 kondisi jika karakter “5” di kirim ke mikrokontroller dan P2.4 berlogika 0 maka led pada P2.4 akan hidup Case "6" : P2.5 = 0 kondisi jika karakter “6” di kirim ke mikrokontroller dan P2.5 berlogika 0 maka led pada P2.5 akan hidup Case "7" : P2.6 = 0 kondisi jika karakter “7” di kirim ke mikrokontroller dan P2.6 berlogika 0 maka led pada P2.6 akan hidup Case "8" : P2.7 = 0 kondisi jika karakter “8” di kirim ke mikrokontroller dan P2.7 berlogika 0 maka led pada P2.7 akan hidup Case "q" : P2.0 = 1 kondisi jika karakter “q” di kirim ke mikrokontroller dan P2.0 berlogika 1 maka led pada P2.0 akan mati Case "w" : P2.1 = 1 kondisi jika karakter “w” di kirim ke mikrokontroller dan P2.1 berlogika 1 maka led pada P2.1 akan mati Case "e" : P2.2 = 1
kondisi jika karakter “e” di kirim ke mikrokontroller dan P2.2 berlogika 1 maka led pada P2.2 akan mati Case "r" : P2.3 = 1 kondisi jika karakter “r” di kirim ke mikrokontroller dan P2.3 berlogika 1 maka led pada P2.3 akan mati Case "t" : P2.4 = 1 kondisi jika karakter “q” di kirim ke mikrokontroller dan P2.4 berlogika 1 maka led pada P2.4 akan mati Case "y" : P2.5 = 1 kondisi jika karakter “y” di kirim ke mikrokontroller dan P2.5 berlogika 1 maka led pada P2.5 akan mati Case "u" : P2.6 = 1 kondisi jika karakter “u” di kirim ke mikrokontroller dan P2.6 berlogika 1 maka led pada P2.6 akan mati Case "i" : P2.7 = 1 kondisi jika karakter “i” di kirim ke mikrokontroller dan P2.7 berlogika 1 maka led pada P2.7 akan mati End Select Hentikan memilih kondisi Loop Ulangi program dari start End Hentikan program
Tampilan Hyperterminal Jika terkoneksi dengan Mikrokontroller
VII.
Kesimpulan Berdasarkan percobaan yang telah dilakukan, dapat disimpulkan bahwa: 1. IC RS-232 adalah IC yang berfungsi untuk menyamakan level tegangan antara mikrokontroller dengan device yang akan di komunikasikan dengan mikrokontroller. 2. Hyperterminal adalah program yang berfungsi untuk mengkomunikasikan Laptop/PC dengan Mikrokontroller, dengan menekan tombol pada laptop/PC (mengirim karakter) dan akan dibaca oleh mikrokontroller.