Tata Cara Komunikasi Data Serial

dokumen-dokumen yang mirip
BAB IV HASIL DAN UJI COBA

Percobaan 2 PENGENALAN INTERFACE SERIAL DAN UART

BAB II TINJAUAN PUSTAKA

BAB II LANDASAN TEORI

BAB II DASAR TEORI. Gambar 2.1 Skema Bagian Mesin CNC

Konsep dan Cara Kerja Port I/O

Gambar 3.1 Blok Diagram Port Serial RXD (P3.0) D SHIFT REGISTER. Clk. SBUF Receive Buffer Register (read only)

TSK304 - Teknik Interface dan Peripheral. Eko Didik Widianto

Aplikasi Komunikasi Data Antara Kunci Elektronik dan PC Menggunakan Port Serial

PERCOBAAN PERAKITAN KABEL NULL MODEM DB9, DB25, RJ45

MENGENAL PORT SERIAL. Annisa Dwiyanti. Abstrak. Pendahuluan. ::

PENGENDALIAN MOBIL REMOTE CONTROL MELALUI PERSONAL COMPUTER (PC) DENGAN MENGGUNAKAN VISUAL BASIC TUGAS AKHIR

BADAN TENAGA NUKLIR NASIONAL PUSAT TEKNOLOGI AKSELERATOR DAN PROSES BAHAN Jl. Babarsari Kotak Pos 6101 Ykbb, Yogyakarta 55281

PERCOBAAN I PERAKITAN KABEL NULL MODEM DB9,DB25,RJ45

BAB II LANDASAN TEORI

PERCOBAAN I KOMUNIKASI DATA PERAKITAN KABEL NULL MODEM DB9, RJ11, RJ45

BAB II LANDASAN TEORI

PERAKITAN MEDIA KABEL UTP DAN RJ45 UNTUK KOMUNIKASI DATA

BAB II LANDASAN TEORI

BAB II STUDI PUSTAKA

BAB III DESKRIPSI DAN PERANCANGAN SISTEM

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

BAB III DESKRIPSI DAN PERANCANGAN SISTEM

KONSEP KOMUNIKASI SERIAL. Oleh : Sunny Arief SUDIRO

Oleh : Mujahidin

BAB II TINJAUAN PUSTAKA

KONSEP KOMUNIKASI SERIAL

Sistem Mikrokontroler Mikrokontroller AT MEGA8535

KOMUNIKASI SERIAL BERBASIS PROTOKOL MODBUS UNTUK ALAT PENGHITUNG PRODUKSI GARMEN

BAB III METODE PENELITIAN

BAB II DASAR TEORI. Port Input/Output dalam suatu kemasan IC yang kompak. Kemampuannya

BAB V PENGUJIAN SISTEM DAN ANALISIS

PENGENALAN KOMUNIKASI DATA

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET (KOMUNIKASI DATA)

TUGAS KOMPUTER DAN INTERFACE

de KITS Application Note AN51 How 2 Use de KITS SPC Character LCD w/ PC

Bab 6 Interface Komunikasi Data

Gambar Komunikasi serial dengan komputer

SPC Application Note. SPC Blue-Link (J2) Tabel 1 Hubungan SPC Blue-Link Dengan Komputer

BAB II DASAR TEORI. 2.1 Mikrokontroler AT89S51

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM. Di bawah ini adalah diagram blok Sistem. Mikrokontroler PIC 16F877A. Gambar III.1. Diagram blok sistem

4. Port Input/Output Mikrokontroler MCS-51

BAB III PERANCANGAN SISTEM. 3.1 Pengantar Perancangan Sistem Pengendalian Lampu Pada Lapangan Bulu

BAB III PERENCANAAN DAN PEMBUATAN PERANGKAT LUNAK

= t t... (1) HASIL DAN PEMBAHASAN

BAB III PERANCANGAN SISTEM

BAB IV PENGUJIAN DAN ANALISIS SISTEM

BAB III SISTEM PENGUKURAN ARUS & TEGANGAN AC PADA WATTMETER DIGITAL

INTERFACING SERIAL, PARALEL, AND USB PORT

PENERAPAN METODE PENGECEKAN KESALAHAN CHECK SUM PADA PENGIRIMAN PESAN RUNNING TEXT DARI KOMPUTER

ANTARMUKA KOMUNIKASI DATA

JUN - ITTELKOM. Antarmuka I/O. Komunikasi I/O [1]

William Stallings Komunikasi Data dan Komputer Edisi ke 7. Teknik Komunikasi Data Digital

BAB 2 LANDASAN TEORI

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI

BAB II TEORI PENUNJANG

PORT SERIAL MIKROKONTROLER ATMEL AT89C51

Percobaan 3 PENGENALAN INTERFACE I 2 C

Wireless Infrared Printer dengan DST-51 (Komunikasi Infra Merah dengan DST-51)

BAB 2 LANDASAN TEORI. Dengan perkembangan terakhir, yaitu generasi AVR (Alf and Vegard s Risc

Published By Stefanikha

Percobaan 6. SERIAL INTERFACE Menggunakan DT-51 MinSys

Percobaan 4. ADC & DAC Based I2C

BAB III PERANCANGAN DAN IMPLEMENTASI. Pada tugas akhir ini akan dibuat sebuah perangkat keras PLC dengan fasilitas

BAB II TINJAUAN PUSTAKA

Decoder/Encoder UART ke IrDA Menggunakan IrDA Kontroller

PENGATURAN REGISTER MIKROKONTROLLER ARM

PERTEMUAN INTERFACE EKSTERNAL (PORT) Dalam sistim Komputer dikenal dua jenis Port yaitu: EIA/TIA 232 (RS 232C) A.PORT SERIAL.

LAPORAN PRAKTIKUM MIKROKONTROLLER UNIVERSAL SYNCHRONOUS AND ASYNCHRONOUS SERIAL RECEIVER TRANSMITTER (USART)

BAB III PERANCANGAN SISTEM

Sejalan perkembangan teknologi, maka media antarmuka untuk Device External pun berkembang, dengan penjelasan sebagai berikut :

IV. HASIL PENELITIAN DAN PEMBAHASAN. menggunakan sensor optik berbasis mikrokontroler ATMega 8535 dengan

BAB IV ANALISIS DATA DAN PEMBAHASAN

BAB II LANDASAN TEORI

DT-I/O. I/O Application Notes AN164 Komunikasi Jarak Jauh antara 2 PC dengan RS-485. Application Note AN164

DT-51 Application Note

DT-51 Application Note

DT-BASIC Application Note

BAB III PERENCANAAN DAN PEMBUATAN ALAT

BAB 2 LANDASAN TEORI

BAB V HASIL DAN PEMBAHASAN Perangkat Keras (Hardware)

BAB III PERENCANAAN DAN PEMBUATAN ALAT

II. DASAR TEORI. 2.1 Visible Light Communication [2][3]

BAB 3 PERANCANGAN SISTEM

Praktikum Komunikasi Data Percobaan III Pengukuran Komunikasi Serial

Organisasi Sistem Komputer. Port Serial

How2Use DT-51 AT89C51XXX BMS. Oleh: Tim IE. Gambar 1 Tata Letak DT-51 AT89C51XXX BMS

FLOW CONTROL & A VARIABLE. Budhi Irawan, S.Si, M.T

BAB IV ANALISA DAN PENGUJIAN

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

BAB II DASAR TEORI Serial RS232

BAB 3 PERANCANGAN SISTEM

Mikrokontroler 89C51 Bagian II :

SERPIH-SERPIH (IC) INTERFACE DASAR PADA PC (URAIAN SINGKAT) By ATIT PERTIWI PROGRAMMABLE PERIPHERAL INTERFACE (PPI) 8255

BAB III METODE PENELITIAN DAN PERANCANGAN SISTEM. patok, serta pemasangan sensor ultrasonik HC-SR04 yang akan ditempatkan pada

IMPLEMENTASI ALGORITMA LMS PADA SISTEM PENDETEKSI KERUSAKAN KOMPONEN PESAWAT TELEVISI BERWARNA BERBASIS KOMPUTER. Makalah Seminar Tugas Akhir

Rancang Bangun Master Slave Modbus Berbasis Mikrokontroler Untuk Mengendalikan Beberapa Subsistem

AVR Application Note AN95 Wireless Chatting with PC

Transkripsi:

1 Oleh : Mujahidin iddhien@gmail.com mujahidin@iddhien.com Tata Cara Komunikasi Data Serial Ada 2 macam cara komunikasi data serial yaitu Sinkron dan Asinkron 2 Pada komunikasi data serial sinkron, clock dikirimkan bersama sama dengan data serial, tetapi clock tersebut dibangkitkan sendiri sendiri baik pada sisi pengirim maupun penerima. Sedangkan pada komunikasi serial asinkron tidak diperlukan clock karena data dikirimkan dengan kecepatan tertentu yang sama baik pada pengirim / penerima. 1

3 Pada IBM PC kompatibel port serialnya termasuk jenis asinkron. Komunikasi data serial ini dikerjakan oleh UART (Universal Asynchronous Receiver Transmitter). IC UART dibuat khusus untuk mengubah data parallel menjadi data serial dan menerima data serial yang kemudian dirubah lagi menjadi data parallel. IC UART 8250 merupakan salah satunya. Selain berbentuk IC mandiri berbagai macam mikrokontroller juga ada yang dilengkapi dengan UART, misalnya AT89S51/52/53 atau PIC16F877 Pada UART, kecepatan pengiriman data ( atau yang sering disebut dengan Baud Rate ) dan fase clock pada sisi transmitter dan sisi receiver harus sinkron. Untuk itu diperlukan sinkronisasi antara Transmitter dan Receiver. Hal ini dilakukan oleh bit Start dan bit Stop. Ketika saluran transmisi dalam keadaan idle, output UART adalah dalam keadaan logika 1. 4 2

Ketika Transmitter ingin mengirimkan data, output UART akan diset dulu ke logika 0 untuk waktu satu bit. Sinyal ini pada receiver akan dikenali sebagai sinyal Start yang digunakan untuk menyinkronkan fase clocknya sehingga sinkron dengan fase clock transmitter. 5 Selanjutnya data akan dikirimkan secara serial dari bit yang paling rendah (bit0) sampai bit tertinggi. Selanjutnya akan dikirimkan sinyal Stop sebagai akhir dari pengiriman data serial. Sebagai contoh misalnya akan dikirimkan data huruf A dalam format ASCII (atau sama dengan 41 heksa atau 0100 0001 PENGIRIMAN HURUF A TANPA BIT PARITAS 6 3

7 Kecepatan transmisi (baud rate) dapat dipilih bebas dalam rentang tertentu. Baud rate yang umum dipakai adalah 110, 135, 150, 300, 600, 1200, 2400, dan 9600 (bit/perdertik). Dalam komunikasi data serial, baud rate dari kedua alat yang berhubungan harus diatur pada kecepatan yang sama. Selanjutnya harus ditentukan panjang data (6,7 atau 8 bit), paritas (genap, ganjil, atau tanpa paritas), dan jumlah bit Stop (1, 1 ½, atau 2 bit) 8 Karakteristik Sinyal Port Serial Standar sinyal komunikasi serial yang banyak digunakan adalah Standar RS232 yang dikembangkan oleh Electronic Industri Association (EIA/TIA) yang pertama kali dipublikasikan pada tahun 1962. Ini terjadi jauh sebelum IC TTL populer sehingga sinyal ini tidak ada hubungan sama sekali dengan level tegangan IC TTL. Standar ini hanya menyangkut komunikasi antara (Data Terminal Equipment DTE) dengan alat alat pelengkap komputer (Data Circuit Terminating Equipment DCE) 4

9 Standar sinyal RS232 memiliki ketentuan level tegangan sebagai berikut : 1. Logika 1 disebut Mark terletak antara -3 Volt sampai -25 Volt 2. Logika 0 disebut space terletak antara +3 Volt samapai +25 Volt. 3. Daerah tegangan antara -3 Volt sampai +3 Volt adalah invalid level, yaitu daerah tegangan yang tidak memiliki level logika pasti sehingga harus dihindari. Demikian juga level tegangan dibawah - 25 Volt dan diatas +25 Volt juga harus dihindari karena bisa merusak line driver pada saluran RS232 Gambar dibawah adalah contoh level tegangan RS232 pada pengiriman huruf A dalam format ASCII tanpa bit paritas. Level Tegangan RS232 pada pengiriman huruf A Tanpa Bit Paritas. 10 5

11 Flow Control Jika kecepatan transfer data dari DTE ke DCE (misal dari komputer / modem) lebih cepat dari pada transfer data dari DCE ke DCE (modem ke modem) maka cepat atau lambat kehilangan data akan terjadi karena buffer pada DCE akan mengalami overflow. Untuk itu diperlukan sistem flow control untuk mengatasi masalah tersebut. Ada 2 macam flow control yaitu secara hardware dan secara software. 12 Flow control secara software atau yang sering disebut dengan Xon (karakter ASCII 17) dan Xoff (karakter ASCII 19). DCE akan mengirimkan Xoff ke komputer untuk memberitahukan agar komputer menghentikan pengiriman data jika buffer pada DCE telah penuh. Jika buffer telah kembali siap menerima data DCE akan mengirimkan karakter Xon ke komputer dan komputer akan melanjutkan pengiriman data sampai data terkirim semua. Keuntungan Flow Control ini adalah hanya diperlukan kabel sedikit karena karakter kontrol dikirim lewat saluran TX RX. 6

13 Flow Control secara hardware atau sering disebut RTS / CTS menggunkan dua kabel untuk melakukan pengontrolan. Komputer akan men-set saluran Request to Send (RTS) jika akan mengirimkan data ke DCE. Jika buffer di DCE siap menerima data, maka DCE akan membalas dengan men-set saluran Clear to Send (CTS) dan komputer akan mulai mengirimkan data. Jika buffer telah penuh, maka saluran akan di reset dan komputer akan menghentikan pengiriman data sampai saluran ini di-set kembali. Konfigurasi Port Serial Konektor DB-9 pada bagian belakang komputer adalah port serial RS232 yang biasa dinamai dengan COM1 dan COM2. 14 7

Konfigurasi pin dan nama sinyal konektor serial DB-9 15 Nomor PIN 1 2 3 4 5 6 7 8 9 Nama Sinyal DCD RxD TxD DTR GND DSR RST CTS RI Direction In In Out Out - In Out In In Data Carrier Detect/ Receive Line Signal Detect Receive Data Transmit Data Data Terminal Ready Ground Data Set Ready Request to Send Clear to Send Ring Indicator 16 mengenai fungsi saluran RS232 pada konektor DB-9 adalah sebagai berikut : 1. Received Line Signal Detect, dengan saluran ini DCE memberitahukan ke DTE bahwa pada terminal masukan ada data masuk. 2. Receive 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 terminalnya. 5. Signal Ground, saluran ground 8

6. DCE ready, sinyal aktif pada saluran ini menunjukkan bahwa DCE sudah siap. 7. Request to Send, dengan saluran ini DCE diminta mengirim data oleh DTE. 8. Clear to Send, dengan saluran ini DCE memberitahukan bahwa DTE boleh mulai mengirim data. 9. Ring Indicator, pada saluran ini DCE memberitahukan ke DTE bahwa sebuah stasiun menghendaki hubungan dengannya. 17 18 Untuk dapat menggunakan port serial harus diketahui dahulu alamat dari port serial tersebut. Biasanya tersedia dua port serial pada CPU, yaitu COM1 dan COM2. Base Address COM1 biasanya 1016 (3F8h) dan COM2 biasanya 760 (2F8h). Alamat tersebut adalah alamat yang biasa digunakan, tergantung komputer yang digunakan. Tepatnya kita bisa melihat pada peta memori tempat menyimpan alamat tersebut, yaitu memori 0000.0400h untuk COM1 dan 0000.0402h untuk COM2 9

Berikut adalah nama nama register yang digunakan beserta alamatnya. 19 Nama Register COM1 COM2 TX Buffer 3F8h 2F8h RX Buffer 3F8h 2F8h Baud Rate Divisor latch LSB 3F8h 2F8h Baud Rate Divisor Latch MSB 3F9h 2F9h Interrupt Enable Register 3F9h 2F9h Interrupt Identification Register 3FAh 2FAh Line Control Register 3FBh 2FBh Modem Control register 3FCh 2FCh Line Status Register 3FDh 2FDh Modem Status Register 3FEh 2FEh 20 Register RX Buffer, digunakan untuk menampung dan menyimpan data dari DCE. TX Buffer, digunakan untuk menampung dan menyimpan data yang akan dikirim ke port serial. Baud Rate Divisor Latch LSB, digunakan untuk menampung byte bobot rendah untuk pembagi clock pada IC UART agar didapat baud rate yang tepat Baud Rate Divisor Latch MSB, digunakan untuk menampung byte bobot tinggi untuk pembagi clock pada IC UART sehingga total angka pembagi adalah 4 byte yang dapat dipilih dari 0001h sampai FFFFh 10

Berikut adalah tabel angka pembagi yang sering digunakan : Baud Rate (bit / detik) 300 600 1200 1800 2400 4800 9600 Angka Pembagi 0180h 0C00h 0060h 0040h 0030h 0018h 000Ch 21 Sebagai catatan, register Baud Rate Divisor Latch ini bisa diisi jika bit 7 pada register Line Control Register diisi 1 22 0 1 2 3 Interrupt Enable Register, digunakan untuk menset interupsi apa saja yang akan dilayani komputer. Nomor Bit 4,5,6,7 Rincian bit pada interrupt Enable register 1 : Interupsi akan diaktifkan jika menerima data 1: Interupsi akan diaktifkan jika register Tx kosong 1: interupsi diaktifkan jika ada perubahan keadaan pada Line Status Register 1: Interupsi diaktifkan jika ada perubahan keadaan pada Modem Status Register Diisi 0 11

23 Interrupt Identification Register, digunakan untuk menentukan urutan prioritas interupsi 0 1 & 2 Rincian bit pada interrupt identification register Nomor Bit 3, 4, 5, 6, 7 0 : Interupsi menunggu 1 : No interrupt pending 00 : Prioritas tertinggi oleh Line Status register 01 : Prioritas tertinggi oleh register Rx jika menerima data 10 : Prioritas tertinggi oleh register Tx jika telah kosong 11 : Prioritas tertinggi oleh modem status register Diisi 0 24 Line Control register, digunakan untuk menentukan jumlah bit data, jumlah bit pariti, jumlah bit stop, serta untuk menentukan apakah baud rate divisor dapat diubah atau tidak. 2 Nomor Bit 0 dan 1 Rincian bit pada Line Control register Jumlah bit data 00 : jumlah bit data adalah 5 01 : jumlah bit data adalah 6 10 : jumlah bit data adalah 7 11 : jumlah bit data adalah 8 Bit Stop 0 : Jumlah bit stop adalah 1 1: Jumlah bit stop adalah 5 untuk 5 bit data dan 2 untuk 6 hingga 8 bit data 12

Lanjutan Rincian bit pada interrupt identification register Nomor Bit 3 4 5 6 7 Bit pariti 0 : tanpa Pariti 1 : Dengan Pariti 0 : Pariti ganjil 1 : Pariti Genap 1 : Bit pariti ikut dikirimkan (stick parity) 0 : Set break control tidak diaktifkan 1 : Set break control diaktifkan 0 : Baud rate divisor tidak dapat diakses 1 : Baud rate divisor dapat diakses 25 Modem Control register, digunakan untuk mengatur saluran pengatur modem terutama saluran DTR dan saluran RST 0 1 Nomor Bit Rincian bit pada Modem Control register Bit DTR 0 = Saluran DTR diaktifkan (Aktif 0) 1 = Saluran DTR dibuat normal (tidak aktif) Bit RST 0 = Saluran RST diaktifkan (aktif 0) 1 = Saluran RST dibuat normal (tidak aktif) 26 13

Lanjutan 2 3 4 Nomor Bit 5, 6, 7 Rincian bit pada Modem Control register Bit OUT1 digunakan untuk penghubung ke perangkat lain, dapat dibuat logika high atau low. Secara normal tidak digunakan. Bit OUT2 digunakan untuk penghubung ke pernagkat lain dapat dibuat logika low atau high. 0 = Loop Back internal diaktifkan 1 = Loop Back internal tidak diaktifkan. Diisi 0 27 28 Line Status Register, digunakan untuk menampung bit bit yang menyatakan keadaan penerimaan atau pengiriman data dan status kesalahan operasi. Nomor Bit 0 1 2 3 4 5 6 7 Rincian bit pada Line Status register 1 = Menyatakan adanya data masuk pada buffer RX 1 = Data yang masuk mengalami overrun 1 = Terjadi kesalahan pada bit pariti 1 = Terjadi kesalahan framing 1 = Terjadi Break Interrupt 1 = Menyatakan bahwa register TX telah kosong 1 = Menyatakan bahwa transmitter Shift Register telah kosong Diisi kosong 14

29 Modem Status Register, digunakan untuk menampung bit bit yang menyatakan status dari saluran hubungan dengan modem Nomor Bit 0 1 2 Rincian bit pada Modem Status register 1 = Menyatakan adanya perubahan keadaan di saluran Clear to Send (CTS) 1 = Menyatakan adanya perubahan keadaan di saluran Data Set Ready (DSR) 1 = Menyatakan adanya perubahan keadaan di saluran Ring Indicator (RI) dari Low ke High 30 Lanjutan. Nomor Bit 3 4 5 6 7 Rincian bit pada Modem Status register 1 = Menyatakan adanya perubahan di saluran Receive Line Signal Detect (DCD) 1 = Menyatakan saluran Clear to Send (CTS) sudah dalam keadaan aktif 1 = Menyatakan saluran Data Set Ready (DSR) sudah dalam keadaan aktif 1 = Menyatakan bahwa saluran Ring Indicator sudah dalam keadaan High 1 = Menyatakan bahwa saluran Receive Line Signal Detect (DCD) sudah dalam keadaan aktif 15

31 Alasan Penggunaan Port Serial Dibandingkan dengan menggunakan port parallel penggunaan port serial terkesan lebih rumit. Berikut adalah keuntungan penggunaan port serial dibandingkan penggunaan port parallel. 1. Pada komunikasi dengan kabel yang panjang, masalah cable loss tidak akan menjadi masalah besar daripada menggunakan kabel parallel. Port serial mentransmisikan 1 pada level tegangan -3 Volt sampai -25 Volt dan 0 pada level tegangan +3 Volt sampai +25 Volt, sedangkan port parallel mentransmisikan 0 pada level tegangan 0 Volt dan 1 pada level tegangan 5 Volt. 2. Dubutuhkan jumlah kabel yang sedikit, bisa hanya menggunakan 3 kabel yaitu saluran Transmit Data, saluran Receive Data, dan saluran Ground (Konfigurasi Null Modem) 3. Saat ini penggunaan mikrokontroller semakin populer. Kebanyakan mikrokontroller sudah dilengkapi dengan SCI (Serial Communication Interface) yang dapat digunakan untuk komunikasi dengan port serial komputer. 32 16

33 Pengaksesan Port Serial Pada Visual Basic Untuk pengaksesan port serial kita dapat mengaksesnya secara langsung menggunakan kontrol MSComm yang telah disediakan Visual basic. Kontrol MSComm menyediakan fisilitas komunikasi antara program aplikasi yang kita buat dengan port serial untuk mengirim atau menerima data melalui port serial. Setiap MSComm hanya menangani satu port serial sehingga jika kita ingin menggunakan lebih dari satu port serial harus digunakan MSComm lain. 34 Properti MSComm Jumlah properti pada MSComm sangat banyak, dan hanya beberapa properti yang perlu kita ketahui. Properti yang sering digunakan adalah : CommPort Digunakan untuk menentukan nomor port serial yang akan dipakai Setting Digunakan untuk menset nilai baud rate, pariti, jumlah bit data, dan jumlah bit stop. PortOpen Digunakan untuk membuka ataupun menutup port serial yang dihubungkan dengan MSComm ini 17

Input Digunakan untuk mengambil data string yang ada pada buffer penerima. Output Digunakan untuk menulis data string pada buffer kirim Berikut adalah contoh penggunaan properti tersebut 35 36 Berikut adalah contoh penggunaan properti tersebut Private Sub Form_Load () MSComm1.ComPort = 1 MSComm1.Setting = 9600,N,8,1 MSComm1.InputLen = 0 MSComm1.PortOpen = True MSComm1.Output = ATV1Q0 & Chr$(13) Do DoEvents Buffer$ = Buffer$ & MSComm1.Input Loop Until InStr (Buffer$, OK & vbclrf) MSComm1.PortOpen = False End Sub 18

37 Kode kode program pada prosedur diatas akan melakukan aksi sebagai berikut : Port serial yang digunakan adalah COM1 Setting MSComm adalah : Baud rate 9600, tanpa paritas, jumlah data 8 bit, dan jumlah bit stop adalah 1 bit Memerintahkan kontrol MSComm membaca seluruh isi buffer ketika menggunakan perintah input (MSComm1.InputLen = 0) Membaca port serial Mengirim perintah ATV1Q0 diikuti ASCII 13 (enter) ke modem Menunggu modem mengirimkan jawaban OK ke komputer Menutup port serial Even Pada MSComm MSComm hanya mempunyai satu even saja, yaitu even OnComm. Even OnComm dibangkitkan jika nilai properti dari CommEvent berubah yang mengindikasikan telah terjadi even pada port serial baik even komunikasi maupun even error. 38 Tabel berikut adalah tabel mengenai nilai nilai dari properti CommEvent, nilai properti ini tidak tersedia pada saat design time, tetapi hanya dapat dibaca pada saat run time. 19

Nilai-nilai properti even error pada CommEvent 39 Konstanta comeventframe comeventrxparity comeventrxover comeventtxfull comeventoverrun comeventbreak comeventdcb Hardware mendeteksi adanya kesalahan frame Hardware mendeteksi adanya kesalahan pariti Buffer penerima mengalami over flow, tidak ada ruang kosong lagi pada buffer penerima Buffer kirim penuh Port mengalami overrun Sinyal Break diterima Mendapatkan kembali Device Control Block (DCB) dari port serial Nilai-nilai properti even komunikasi pada CommEvent 40 Konstanta comevsend comevreceive comevcts comevdsr comevcd comevring comeveof Jumlah karakter pada buffer kirim lebih sedikit dari pada nilai properti Sthreshold. Even ini akan dibangkitkan jika nilai pada properti Sthreshold tidak diisi 0 Telah diterima karakter sebanyak nilai properti Rthreshold. Even ini akan dibangkitkan terus menerus sampai data diambil dari buffer penerima menggunakan perintah Input. Even ini akan dibangkitkan jika nilai pada properti Rthershold tidak diisi 0 Terjadi perubahan pada saluran Clear to Send Terjadi perubahan pada saluran Data Set Ready Terjadi perubahan pada saluran Carrier Detect Terdeteksi adanya sinyal Ring Karakter End of File diterima 20

41 Berikut adalah contoh penggunaan even OnComm untuk komunikasi menggunakan mikrokontroller. Akan dibaca hanya even comevreceive saja Private Static Sub MSComm1_OnComm () Dim Buffer As Variant Select Case MSComm1.CommEvent Case comevreceive If MSComm1.InVufferCount >= 3 then buffer = CStr (MSComm1.Input) If Mid (Buffer,1,1) = 0 then if Mid (Buffer,2,1)= K then StatusBar1.Panels ( Value ).Text = Value : & Asc(Mid(Buffer,3,1)) StatusBar1.Panels ( Status ).Text = Status : Connect End If End If End If End Select End Sub 42 21

Kode kode program pada prosedur diatas akan melakukan aksi sebagai berikut : Mendeteksi even comevenreceive, kemudian menentukan apakah sudah diterima tiga buah karakter pada buffer penerima Menentukan apakah karakter yang diterima adalah karakter OK. Jika karakter yang diterima adalah OK maka akan diubah nilai Value dan nilai Status pada properti panel kontrol StatusBar1 43 43 QUIZ Buatlah sebuah program aplikasi dengan VB pada Komputer yang mengatur komunikasi serial antara komputer sebagai host dengan client. Setting komunikasi serial 9600 baudrate, no parity, 8 data bit, 1 bit Stop, Com Port 1. Komputer akan mengirimkan data (20)h, (21)h, (22)h. Setelah client menerima data tersebut, client akan menjawab (membalas) dengan mengirim data OK1 ke komputer. Setelah komputer menerima OK1, komputer akan menampilkan label Akses 1 OK Selanjutnya komputer akan mengirimkan lagi data (30)h, (31)h, (32)h. Client akan menjawab (membalas) dengan OK2 ke komputer. Selanjutnya komputer akan menampilkan label Akses 2 OK. Selanjutnya komputer akan melakukan tugas untuk mengakuisisi setiap data yang lewat pada Serial Comm untuk ditampilkan dalam sebuah Text di Visual basic. 22

43 23