Digital - Computer
Serial Port Computer & Pemrogramannya Dengan VB6.0 | Serial Port Computer & Pemrogramannya Dengan VB6.0 |
|
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”. 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. 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 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). 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). Standar sinyal RS232 memiliki ketentuan level tegangan sebagai berikut :
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. 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. 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. 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. ![]() ![]() Keterangan mengenai fungsi saluran RS232 pada konektor DB-9 adalah sebagai berikut :
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. Berikut adalah nama – nama register yang digunakan beserta alamatnya. Keterangan Register
Berikut adalah tabel angka pembagi yang sering digunakan : ![]() Sebagai catatan, register Baud Rate Divisor Latch ini bisa diisi jika bit 7 pada register Line Control Register diisi 1. 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.
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. 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. 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 '============================================== 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 '============================================== Kode – kode program pada prosedur diatas akan melakukan aksi sebagai berikut :
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. 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. 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 '============================================== Kode – kode program pada prosedur diatas akan melakukan aksi sebagai berikut :
Selamat Mencoba.... God Luck. |
| < Prev | Next > |
|---|
![]()
Anda Di HALAL-KAN MENGCOPY-PASTE isi dari BLOG ini.
Bagi pengunjung yang suka dan nyaman dengan isi Blog ini silahkan di nikmati dan dikunjungi lagi lain waktu, Bagi yang tidak suka Jangan pernah lagi mengunjungi Blog ini.
Kami lebih suka menerima saran dan kritikan dari anda dengan mencantumkan data sesuai identitas resmi anda.
| Today | 180 |
| Yesterday | 200 |
| All | 151655 |
| (C) Fliesenstadt | |
| Home |
| Sekapur Sirih |
| Product & Service |
| Contact Us |
| Guest Book |
| Analog |
| Digital - Computer |
| PIC Microcontroller |
| P L C |
| AVR Microcontroller |
| Fuzzy Logic |
| UIB Student |
| My Favourite Links |
DISCLAIMER :
MATERIAL PUBLISHED ON THIS BLOG IS SUBMITTED BY OWNER. MOST OF THE MATERIAL ON THIS BLOG IS NOT MADE BY ME. I ONLY COLLECT THEM AND PUT THEM IN MY GALLERIES. ALL NEWS HAVE BEEN GATHERED FROM THE INTERNET, FROM FREE SITE, FORUM, FRIENDS, USERS ETC. AND ARE BELIEVED TO BE IN THE "PUBLIC DOMAIN". IF YOU ARE THE RIGHTFULL OWNER OF ANY MATERIAL AND WANT IT REMOVED PLEASE CONTACT ME AND I WILL REMOVE IT IMMEDIATELY ON DEMAND