SlideShare une entreprise Scribd logo
1  sur  23
Télécharger pour lire hors ligne
1




                                                     Oleh : Mujahidin
                                             http://www.iddhien.com
                                                 iddhien@gmail.com
                                             mujahidin@iddhien.com


                             iddhien2006 all rights reserved




        Tata Cara Komunikasi Data Serial
      Ada 2 macam cara komunikasi data serial
      yaitu Sinkron dan Asinkron

      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 /
2     penerima.
    http://www.iddhien.com        iddhien2006 all rights reserved




                                                                        1
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
3     UART, misalnya AT89S51/52/53 atau PIC16F877
    http://www.iddhien.com   iddhien2006 all rights reserved




      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
    http://www.iddhien.com   iddhien2006 all rights reserved




                                                               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.

      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.
5
    http://www.iddhien.com   iddhien2006 all rights reserved




      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
    http://www.iddhien.com   iddhien2006 all rights reserved




                                                               3
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
7     2 bit)
    http://www.iddhien.com   iddhien2006 all rights reserved




        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 –
8
      DCE)
    http://www.iddhien.com   iddhien2006 all rights reserved




                                                               4
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
9
          RS232
     http://www.iddhien.com      iddhien2006 all rights reserved




       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
     http://www.iddhien.com      iddhien2006 all rights reserved




                                                                   5
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.
11
     http://www.iddhien.com   iddhien2006 all rights reserved




       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
12
       dikirim lewat saluran TX RX.
     http://www.iddhien.com   iddhien2006 all rights reserved




                                                                6
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
13     sampai saluran ini di-set kembali.
     http://www.iddhien.com   iddhien2006 all rights reserved




         Konfigurasi Port Serial
       Konektor DB-9 pada bagian belakang komputer
       adalah port serial RS232 yang biasa dinamai
       dengan COM1 dan COM2.




14
     http://www.iddhien.com   iddhien2006 all rights reserved




                                                                7
Konfigurasi pin dan nama sinyal konektor serial DB-9
         Nomor
                    Nama Sinyal    Direction      Keterangan
          PIN
                                               Data Carrier Detect/
            1            DCD          In       Receive Line Signal
                                                     Detect
            2            RxD          In          Receive Data
            3            TxD         Out          Transmit Data
            4            DTR         Out       Data Terminal Ready
            5            GND           -             Ground
            6            DSR          In         Data Set Ready
            7            RST         Out         Request to Send
            8            CTS          In          Clear to Send

15          9             RI          In         Ring Indicator

     http://www.iddhien.com       iddhien2006 all rights reserved




       Keterangan 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.
16     5. Signal Ground, saluran ground
     http://www.iddhien.com       iddhien2006 all rights reserved




                                                                      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
     http://www.iddhien.com   iddhien2006 all rights reserved




       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
18     COM2
     http://www.iddhien.com   iddhien2006 all rights reserved




                                                                9
Berikut adalah nama – nama register yang
                 digunakan beserta alamatnya.
                        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
19
     http://www.iddhien.com             iddhien2006 all rights reserved




       Keterangan 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
20
     http://www.iddhien.com             iddhien2006 all rights reserved




                                                                          10
Berikut adalah tabel angka pembagi yang sering
         digunakan :
                     Baud Rate (bit / detik)     Angka Pembagi
                              300                   0180h
                              600                   0C00h
                              1200                  0060h
                              1800                  0040h
                              2400                  0030h
                              4800                  0018h
                              9600                  000Ch


       Sebagai catatan, register Baud Rate Divisor Latch ini bisa diisi
       jika bit 7 pada register Line Control Register diisi 1
21
     http://www.iddhien.com            iddhien2006 all rights reserved




         • Interrupt Enable Register, digunakan untuk menset
         interupsi apa saja yang akan dilayani komputer.
                  Rincian bit pada interrupt Enable register
         Nomor Bit                             Keterangan
     0                    1 : Interupsi akan diaktifkan jika menerima
                          data
     1                    1: Interupsi akan diaktifkan jika register Tx
                          kosong
     2                    1: interupsi diaktifkan jika ada perubahan
                          keadaan pada Line Status Register
     3                    1: Interupsi diaktifkan jika ada perubahan
                          keadaan pada Modem Status Register
     4,5,6,7              Diisi 0
22
     http://www.iddhien.com            iddhien2006 all rights reserved




                                                                          11
• Interrupt Identification Register, digunakan untuk
       menentukan urutan prioritas interupsi
               Rincian bit pada interrupt identification register
            Nomor Bit                            Keterangan
        0                 0 : Interupsi menunggu
                          1 : No interrupt pending
        1&2               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
        3, 4, 5, 6, 7     Diisi 0
23
     http://www.iddhien.com           iddhien2006 all rights reserved




       • 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.
                    Rincian bit pada Line Control register
            Nomor Bit                            Keterangan
        0 dan 1           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
        2                 Bit Stop
                          0 : Jumlah bit stop adalah 1
                          1: Jumlah bit stop adalah 5 untuk 5 bit data dan 2 untuk
24                        6 hingga 8 bit data
     http://www.iddhien.com           iddhien2006 all rights reserved




                                                                                     12
Lanjutan      Rincian bit pada interrupt identification register

            Nomor Bit                         Keterangan
        3                 Bit pariti
                          0 : tanpa Pariti
                          1 : Dengan Pariti
        4                 0 : Pariti ganjil
                          1 : Pariti Genap
        5                 1 : Bit pariti ikut dikirimkan (stick parity)
        6                 0 : Set break control tidak diaktifkan
                          1 : Set break control diaktifkan
        7                 0 : Baud rate divisor tidak dapat diakses
                          1 : Baud rate divisor dapat diakses

25
     http://www.iddhien.com           iddhien2006 all rights reserved




       • Modem Control register, digunakan untuk mengatur
       saluran pengatur modem terutama saluran DTR dan
       saluran RST
                  Rincian bit pada Modem Control register
            Nomor                             Keterangan
             Bit
        0                 Bit DTR
                          0 = Saluran DTR diaktifkan (Aktif 0)
                          1 = Saluran DTR dibuat normal (tidak aktif)
        1                 Bit RST
                          0 = Saluran RST diaktifkan (aktif 0)
                          1 = Saluran RST dibuat normal (tidak aktif)

26
     http://www.iddhien.com           iddhien2006 all rights reserved




                                                                          13
• Lanjutan
                   Rincian bit pada Modem Control register
            Nomor                          Keterangan
             Bit
        2                 Bit OUT1 digunakan untuk penghubung ke
                          perangkat lain, dapat dibuat logika high atau low.
                          Secara normal tidak digunakan.
        3                 Bit OUT2 digunakan untuk penghubung ke
                          pernagkat lain dapat dibuat logika low atau high.
        4                 0 = Loop Back internal diaktifkan
                          1 = Loop Back internal tidak diaktifkan.
        5, 6, 7           Diisi 0

27
     http://www.iddhien.com            iddhien2006 all rights reserved




       • Line Status Register, digunakan untuk menampung
       bit – bit yang menyatakan keadaan penerimaan atau
       pengiriman data dan status kesalahan operasi.
                     Rincian bit pada Line Status register
         Nomor Bit                         Keterangan
               0        1 = Menyatakan adanya data masuk pada buffer RX
               1        1 = Data yang masuk mengalami overrun
               2        1 = Terjadi kesalahan pada bit pariti
               3        1 = Terjadi kesalahan framing
               4        1 = Terjadi Break Interrupt
               5        1 = Menyatakan bahwa register TX telah kosong
               6        1 = Menyatakan bahwa transmitter Shift Register
                        telah kosong
28             7        Diisi kosong

     http://www.iddhien.com            iddhien2006 all rights reserved




                                                                               14
• Modem Status Register, digunakan untuk
       menampung bit – bit yang menyatakan status dari
       saluran hubungan dengan modem
                   Rincian bit pada Modem Status register
          Nomor                         Keterangan
           Bit
               0        1 = Menyatakan adanya perubahan keadaan di
                        saluran Clear to Send (CTS)
               1        1 = Menyatakan adanya perubahan keadaan di
                        saluran Data Set Ready (DSR)
               2        1 = Menyatakan adanya perubahan keadaan di
                        saluran Ring Indicator (RI) dari Low ke High

29
     http://www.iddhien.com        iddhien2006 all rights reserved




       • Lanjutan.
                   Rincian bit pada Modem Status register
          Nomor                         Keterangan
           Bit
               3        1 = Menyatakan adanya perubahan di saluran
                        Receive Line Signal Detect (DCD)
               4        1 = Menyatakan saluran Clear to Send (CTS) sudah
                        dalam keadaan aktif
               5        1 = Menyatakan saluran Data Set Ready (DSR)
                        sudah dalam keadaan aktif
               6        1 = Menyatakan bahwa saluran Ring Indicator
                        sudah dalam keadaan High
               7        1 = Menyatakan bahwa saluran Receive Line Signal
30                      Detect (DCD) sudah dalam keadaan aktif
     http://www.iddhien.com        iddhien2006 all rights reserved




                                                                           15
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.
31
     http://www.iddhien.com   iddhien2006 all rights reserved




       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
     http://www.iddhien.com   iddhien2006 all rights reserved




                                                                    16
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
33     satu port serial harus digunakan MSComm lain.
     http://www.iddhien.com    iddhien2006 all rights reserved




       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
34     yang dihubungkan dengan MSComm ini
     http://www.iddhien.com    iddhien2006 all rights reserved




                                                                    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
     http://www.iddhien.com   iddhien2006 all rights reserved




      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
36    End Sub
     http://www.iddhien.com   iddhien2006 all rights reserved




                                                                18
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
37     • Menutup port serial
     http://www.iddhien.com   iddhien2006 all rights reserved




       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.
38
     http://www.iddhien.com   iddhien2006 all rights reserved




                                                                  19
Nilai-nilai properti even error pada CommEvent

          Konstanta                              Keterangan
       comEventFrame              Hardware mendeteksi adanya kesalahan
                                  frame
       comEventRxParity           Hardware mendeteksi adanya kesalahan pariti
       comEventRxOver             Buffer penerima mengalami over flow, tidak
                                  ada ruang kosong lagi pada buffer penerima
       comEventTxFull             Buffer kirim penuh
       comEventOverrun            Port mengalami overrun
       comEventBreak              Sinyal Break diterima
       comEventDCB                Mendapatkan kembali Device Control Block
                                  (DCB) dari port serial

39
     http://www.iddhien.com            iddhien2006 all rights reserved




           Nilai-nilai properti even komunikasi pada CommEvent

        Konstanta                              Keterangan
       comEvSend              Jumlah karakter pada buffer kirim lebih sedikit dari pada
                              nilai properti Sthreshold. Even ini akan dibangkitkan jika
                              nilai pada properti Sthreshold tidak diisi “0”
       comEvReceive           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”

       comEvCTS               Terjadi perubahan pada saluran Clear to Send
       comEvDSR               Terjadi perubahan pada saluran Data Set Ready
       comEvCD                Terjadi perubahan pada saluran Carrier Detect
       comEvRing              Terdeteksi adanya sinyal Ring
       comEvEOF               Karakter End of File diterima
40
     http://www.iddhien.com            iddhien2006 all rights reserved




                                                                                           20
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”
41
                             then
     http://www.iddhien.com   iddhien2006 all rights reserved




                  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
     http://www.iddhien.com   iddhien2006 all rights reserved




                                                                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
     http://www.iddhien.com        iddhien2006 all rights reserved




       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
43     sebuah Text di Visual basic.

     http://www.iddhien.com        iddhien2006 all rights reserved




                                                                                 22
43
     http://www.iddhien.com   iddhien2006 all rights reserved




                                                                23

Contenu connexe

Tendances (16)

Peripheral jaringan pada komputer terapan
Peripheral jaringan pada komputer terapanPeripheral jaringan pada komputer terapan
Peripheral jaringan pada komputer terapan
 
Arsitektur mikro z80
Arsitektur mikro z80Arsitektur mikro z80
Arsitektur mikro z80
 
14module 26 spanning-tree-protocol
14module 26 spanning-tree-protocol14module 26 spanning-tree-protocol
14module 26 spanning-tree-protocol
 
Pert.7 sistem bus
Pert.7 sistem busPert.7 sistem bus
Pert.7 sistem bus
 
Menampilkan Karakter pada Lcd dengan Mikrokontroler ATMEGA16
Menampilkan Karakter pada  Lcd dengan Mikrokontroler ATMEGA16Menampilkan Karakter pada  Lcd dengan Mikrokontroler ATMEGA16
Menampilkan Karakter pada Lcd dengan Mikrokontroler ATMEGA16
 
Mikroprosesor Zilog Z80
Mikroprosesor Zilog Z80Mikroprosesor Zilog Z80
Mikroprosesor Zilog Z80
 
Tabel port protokol jaringan tcp
Tabel port protokol jaringan tcpTabel port protokol jaringan tcp
Tabel port protokol jaringan tcp
 
Transpot layer
Transpot layerTranspot layer
Transpot layer
 
Gsm
GsmGsm
Gsm
 
Jbptgunadarma gdl-course-2006-riograceel-552-dataenc-g
Jbptgunadarma gdl-course-2006-riograceel-552-dataenc-gJbptgunadarma gdl-course-2006-riograceel-552-dataenc-g
Jbptgunadarma gdl-course-2006-riograceel-552-dataenc-g
 
Laporan led
Laporan ledLaporan led
Laporan led
 
Mikrokontroler io tombol dan led
Mikrokontroler io tombol dan ledMikrokontroler io tombol dan led
Mikrokontroler io tombol dan led
 
Draft decoder kelompok 1
Draft decoder kelompok 1Draft decoder kelompok 1
Draft decoder kelompok 1
 
Gerbang logika
Gerbang logikaGerbang logika
Gerbang logika
 
Attacker the spanning tree protocol
Attacker the spanning tree protocolAttacker the spanning tree protocol
Attacker the spanning tree protocol
 
Modul rangakaian digital
Modul rangakaian digitalModul rangakaian digital
Modul rangakaian digital
 

En vedette

AS REVOLUCIÓNS POLÍTICAS
AS REVOLUCIÓNS POLÍTICASAS REVOLUCIÓNS POLÍTICAS
AS REVOLUCIÓNS POLÍTICAS
laurabarrosg
 
Tensións e conflitos (1914 1939)
Tensións e conflitos (1914 1939)Tensións e conflitos (1914 1939)
Tensións e conflitos (1914 1939)
laurabarrosg
 
España e galicia no xix
España e galicia no xixEspaña e galicia no xix
España e galicia no xix
laurabarrosg
 
Melhorando a competitividade na indústria da carne
Melhorando a competitividade na indústria da carne Melhorando a competitividade na indústria da carne
Melhorando a competitividade na indústria da carne
senaimais
 
Da câmara escura à lanterna mágica
Da câmara escura à lanterna mágicaDa câmara escura à lanterna mágica
Da câmara escura à lanterna mágica
dianaa18
 
Komdat3 pengukuran komunikasi serial
Komdat3   pengukuran komunikasi serialKomdat3   pengukuran komunikasi serial
Komdat3 pengukuran komunikasi serial
Myeena Ittuolive
 
Pensamiento e ciencia
Pensamiento e cienciaPensamiento e ciencia
Pensamiento e ciencia
laurabarrosg
 

En vedette (20)

AS REVOLUCIÓNS POLÍTICAS
AS REVOLUCIÓNS POLÍTICASAS REVOLUCIÓNS POLÍTICAS
AS REVOLUCIÓNS POLÍTICAS
 
Palestra 4 - Avanços em tecnologia de fresamento: do fresamento convencional ...
Palestra 4 - Avanços em tecnologia de fresamento: do fresamento convencional ...Palestra 4 - Avanços em tecnologia de fresamento: do fresamento convencional ...
Palestra 4 - Avanços em tecnologia de fresamento: do fresamento convencional ...
 
Tendências, diretrizes e desafios governamentais em pesquisa, desenvolvimento...
Tendências, diretrizes e desafios governamentais em pesquisa, desenvolvimento...Tendências, diretrizes e desafios governamentais em pesquisa, desenvolvimento...
Tendências, diretrizes e desafios governamentais em pesquisa, desenvolvimento...
 
Apresentação michael toth
Apresentação michael tothApresentação michael toth
Apresentação michael toth
 
Desenvolvimento de aços sinterizados autolubrificantes a seco para a lubrific...
Desenvolvimento de aços sinterizados autolubrificantes a seco para a lubrific...Desenvolvimento de aços sinterizados autolubrificantes a seco para a lubrific...
Desenvolvimento de aços sinterizados autolubrificantes a seco para a lubrific...
 
Searching patents – a brief introduction
Searching patents – a brief introductionSearching patents – a brief introduction
Searching patents – a brief introduction
 
Tensións e conflitos (1914 1939)
Tensións e conflitos (1914 1939)Tensións e conflitos (1914 1939)
Tensións e conflitos (1914 1939)
 
Usa1
Usa1Usa1
Usa1
 
“Have to know” free public patent databases
“Have to know” free public patent databases“Have to know” free public patent databases
“Have to know” free public patent databases
 
Pesquisas em materiais poliméricos: tendências internacionais para o setor in...
Pesquisas em materiais poliméricos: tendências internacionais para o setor in...Pesquisas em materiais poliméricos: tendências internacionais para o setor in...
Pesquisas em materiais poliméricos: tendências internacionais para o setor in...
 
España e galicia no xix
España e galicia no xixEspaña e galicia no xix
España e galicia no xix
 
Melhorando a competitividade na indústria da carne
Melhorando a competitividade na indústria da carne Melhorando a competitividade na indústria da carne
Melhorando a competitividade na indústria da carne
 
Da câmara escura à lanterna mágica
Da câmara escura à lanterna mágicaDa câmara escura à lanterna mágica
Da câmara escura à lanterna mágica
 
AWR Brief
AWR Brief AWR Brief
AWR Brief
 
Komdat3 pengukuran komunikasi serial
Komdat3   pengukuran komunikasi serialKomdat3   pengukuran komunikasi serial
Komdat3 pengukuran komunikasi serial
 
Tecnologias de controle de conversores diretos e híbridos em turbinas eólicas...
Tecnologias de controle de conversores diretos e híbridos em turbinas eólicas...Tecnologias de controle de conversores diretos e híbridos em turbinas eólicas...
Tecnologias de controle de conversores diretos e híbridos em turbinas eólicas...
 
Palestra 5 - Aplicação do laser como ferramenta de fabricação de moldes.
Palestra 5 - Aplicação do laser como ferramenta de fabricação de moldes.Palestra 5 - Aplicação do laser como ferramenta de fabricação de moldes.
Palestra 5 - Aplicação do laser como ferramenta de fabricação de moldes.
 
Como a computação em nuvem e tecnologias de brokering podem auxiliar os prove...
Como a computação em nuvem e tecnologias de brokering podem auxiliar os prove...Como a computação em nuvem e tecnologias de brokering podem auxiliar os prove...
Como a computação em nuvem e tecnologias de brokering podem auxiliar os prove...
 
Palestra 1 - Otimização do processo produtivo
Palestra 1  - Otimização do processo produtivoPalestra 1  - Otimização do processo produtivo
Palestra 1 - Otimização do processo produtivo
 
Pensamiento e ciencia
Pensamiento e cienciaPensamiento e ciencia
Pensamiento e ciencia
 

Similaire à Parallel serial prog

Io interfacing standards for external devices
Io interfacing standards for external devicesIo interfacing standards for external devices
Io interfacing standards for external devices
ieunity
 
Rancang setting-ulang-keamanan-wan
Rancang setting-ulang-keamanan-wanRancang setting-ulang-keamanan-wan
Rancang setting-ulang-keamanan-wan
Yang Terluka
 
Jaringan Komputer Pertemuan 4-metode-akses
Jaringan Komputer Pertemuan 4-metode-aksesJaringan Komputer Pertemuan 4-metode-akses
Jaringan Komputer Pertemuan 4-metode-akses
Ihsan Nurhalim
 
Datalink layer m5
Datalink layer m5Datalink layer m5
Datalink layer m5
ampas03
 

Similaire à Parallel serial prog (20)

Io interfacing standards for external devices
Io interfacing standards for external devicesIo interfacing standards for external devices
Io interfacing standards for external devices
 
perbedaan antara transmisi data serial dan paralel
perbedaan antara transmisi data serial dan paralelperbedaan antara transmisi data serial dan paralel
perbedaan antara transmisi data serial dan paralel
 
Control DC Motor via Bluetooth
Control DC Motor via BluetoothControl DC Motor via Bluetooth
Control DC Motor via Bluetooth
 
Control DC Motor with Smartphone via Bluetooth
Control DC Motor with Smartphone via BluetoothControl DC Motor with Smartphone via Bluetooth
Control DC Motor with Smartphone via Bluetooth
 
Peripheral peripheral jaringan pada komputer terapan
Peripheral peripheral jaringan pada komputer terapanPeripheral peripheral jaringan pada komputer terapan
Peripheral peripheral jaringan pada komputer terapan
 
Interface paralel
Interface paralelInterface paralel
Interface paralel
 
Modul 3 mac layer
Modul 3 mac layerModul 3 mac layer
Modul 3 mac layer
 
Komunikasi asinkronet
Komunikasi asinkronetKomunikasi asinkronet
Komunikasi asinkronet
 
Port Serial
Port SerialPort Serial
Port Serial
 
Modul peripheral – peripheral jaringan pada komputer terapan
Modul peripheral – peripheral jaringan pada komputer terapanModul peripheral – peripheral jaringan pada komputer terapan
Modul peripheral – peripheral jaringan pada komputer terapan
 
metode-akses
metode-aksesmetode-akses
metode-akses
 
Transmisi_Data_and_Media_Transmisi.pdf
Transmisi_Data_and_Media_Transmisi.pdfTransmisi_Data_and_Media_Transmisi.pdf
Transmisi_Data_and_Media_Transmisi.pdf
 
bab6.ppt
bab6.pptbab6.ppt
bab6.ppt
 
Rancang setting-ulang-keamanan-wan
Rancang setting-ulang-keamanan-wanRancang setting-ulang-keamanan-wan
Rancang setting-ulang-keamanan-wan
 
Pertemuan 4 metode akses ok
Pertemuan 4   metode akses okPertemuan 4   metode akses ok
Pertemuan 4 metode akses ok
 
Tri Wahyuni - Pengantar Komunikasi Data dan Jaringan Komputer
Tri Wahyuni - Pengantar Komunikasi Data dan Jaringan KomputerTri Wahyuni - Pengantar Komunikasi Data dan Jaringan Komputer
Tri Wahyuni - Pengantar Komunikasi Data dan Jaringan Komputer
 
Jaringan Komputer Pertemuan 4-metode-akses
Jaringan Komputer Pertemuan 4-metode-aksesJaringan Komputer Pertemuan 4-metode-akses
Jaringan Komputer Pertemuan 4-metode-akses
 
Network Card (NIC)
Network Card (NIC)Network Card (NIC)
Network Card (NIC)
 
Datalink layer m5
Datalink layer m5Datalink layer m5
Datalink layer m5
 
Rangkuman 1
Rangkuman 1Rangkuman 1
Rangkuman 1
 

Parallel serial prog

  • 1. 1 Oleh : Mujahidin http://www.iddhien.com iddhien@gmail.com mujahidin@iddhien.com iddhien2006 all rights reserved Tata Cara Komunikasi Data Serial Ada 2 macam cara komunikasi data serial yaitu Sinkron dan Asinkron 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 / 2 penerima. http://www.iddhien.com iddhien2006 all rights reserved 1
  • 2. 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 3 UART, misalnya AT89S51/52/53 atau PIC16F877 http://www.iddhien.com iddhien2006 all rights reserved 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 http://www.iddhien.com iddhien2006 all rights reserved 2
  • 3. 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. 5 http://www.iddhien.com iddhien2006 all rights reserved 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 http://www.iddhien.com iddhien2006 all rights reserved 3
  • 4. 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 7 2 bit) http://www.iddhien.com iddhien2006 all rights reserved 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 – 8 DCE) http://www.iddhien.com iddhien2006 all rights reserved 4
  • 5. 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 9 RS232 http://www.iddhien.com iddhien2006 all rights reserved 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 http://www.iddhien.com iddhien2006 all rights reserved 5
  • 6. 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. 11 http://www.iddhien.com iddhien2006 all rights reserved 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 12 dikirim lewat saluran TX RX. http://www.iddhien.com iddhien2006 all rights reserved 6
  • 7. 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 13 sampai saluran ini di-set kembali. http://www.iddhien.com iddhien2006 all rights reserved Konfigurasi Port Serial Konektor DB-9 pada bagian belakang komputer adalah port serial RS232 yang biasa dinamai dengan COM1 dan COM2. 14 http://www.iddhien.com iddhien2006 all rights reserved 7
  • 8. Konfigurasi pin dan nama sinyal konektor serial DB-9 Nomor Nama Sinyal Direction Keterangan PIN Data Carrier Detect/ 1 DCD In Receive Line Signal Detect 2 RxD In Receive Data 3 TxD Out Transmit Data 4 DTR Out Data Terminal Ready 5 GND - Ground 6 DSR In Data Set Ready 7 RST Out Request to Send 8 CTS In Clear to Send 15 9 RI In Ring Indicator http://www.iddhien.com iddhien2006 all rights reserved Keterangan 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. 16 5. Signal Ground, saluran ground http://www.iddhien.com iddhien2006 all rights reserved 8
  • 9. 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 http://www.iddhien.com iddhien2006 all rights reserved 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 18 COM2 http://www.iddhien.com iddhien2006 all rights reserved 9
  • 10. Berikut adalah nama – nama register yang digunakan beserta alamatnya. 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 19 http://www.iddhien.com iddhien2006 all rights reserved Keterangan 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 20 http://www.iddhien.com iddhien2006 all rights reserved 10
  • 11. Berikut adalah tabel angka pembagi yang sering digunakan : Baud Rate (bit / detik) Angka Pembagi 300 0180h 600 0C00h 1200 0060h 1800 0040h 2400 0030h 4800 0018h 9600 000Ch Sebagai catatan, register Baud Rate Divisor Latch ini bisa diisi jika bit 7 pada register Line Control Register diisi 1 21 http://www.iddhien.com iddhien2006 all rights reserved • Interrupt Enable Register, digunakan untuk menset interupsi apa saja yang akan dilayani komputer. Rincian bit pada interrupt Enable register Nomor Bit Keterangan 0 1 : Interupsi akan diaktifkan jika menerima data 1 1: Interupsi akan diaktifkan jika register Tx kosong 2 1: interupsi diaktifkan jika ada perubahan keadaan pada Line Status Register 3 1: Interupsi diaktifkan jika ada perubahan keadaan pada Modem Status Register 4,5,6,7 Diisi 0 22 http://www.iddhien.com iddhien2006 all rights reserved 11
  • 12. • Interrupt Identification Register, digunakan untuk menentukan urutan prioritas interupsi Rincian bit pada interrupt identification register Nomor Bit Keterangan 0 0 : Interupsi menunggu 1 : No interrupt pending 1&2 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 3, 4, 5, 6, 7 Diisi 0 23 http://www.iddhien.com iddhien2006 all rights reserved • 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. Rincian bit pada Line Control register Nomor Bit Keterangan 0 dan 1 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 2 Bit Stop 0 : Jumlah bit stop adalah 1 1: Jumlah bit stop adalah 5 untuk 5 bit data dan 2 untuk 24 6 hingga 8 bit data http://www.iddhien.com iddhien2006 all rights reserved 12
  • 13. Lanjutan Rincian bit pada interrupt identification register Nomor Bit Keterangan 3 Bit pariti 0 : tanpa Pariti 1 : Dengan Pariti 4 0 : Pariti ganjil 1 : Pariti Genap 5 1 : Bit pariti ikut dikirimkan (stick parity) 6 0 : Set break control tidak diaktifkan 1 : Set break control diaktifkan 7 0 : Baud rate divisor tidak dapat diakses 1 : Baud rate divisor dapat diakses 25 http://www.iddhien.com iddhien2006 all rights reserved • Modem Control register, digunakan untuk mengatur saluran pengatur modem terutama saluran DTR dan saluran RST Rincian bit pada Modem Control register Nomor Keterangan Bit 0 Bit DTR 0 = Saluran DTR diaktifkan (Aktif 0) 1 = Saluran DTR dibuat normal (tidak aktif) 1 Bit RST 0 = Saluran RST diaktifkan (aktif 0) 1 = Saluran RST dibuat normal (tidak aktif) 26 http://www.iddhien.com iddhien2006 all rights reserved 13
  • 14. • Lanjutan Rincian bit pada Modem Control register Nomor Keterangan Bit 2 Bit OUT1 digunakan untuk penghubung ke perangkat lain, dapat dibuat logika high atau low. Secara normal tidak digunakan. 3 Bit OUT2 digunakan untuk penghubung ke pernagkat lain dapat dibuat logika low atau high. 4 0 = Loop Back internal diaktifkan 1 = Loop Back internal tidak diaktifkan. 5, 6, 7 Diisi 0 27 http://www.iddhien.com iddhien2006 all rights reserved • Line Status Register, digunakan untuk menampung bit – bit yang menyatakan keadaan penerimaan atau pengiriman data dan status kesalahan operasi. Rincian bit pada Line Status register Nomor Bit Keterangan 0 1 = Menyatakan adanya data masuk pada buffer RX 1 1 = Data yang masuk mengalami overrun 2 1 = Terjadi kesalahan pada bit pariti 3 1 = Terjadi kesalahan framing 4 1 = Terjadi Break Interrupt 5 1 = Menyatakan bahwa register TX telah kosong 6 1 = Menyatakan bahwa transmitter Shift Register telah kosong 28 7 Diisi kosong http://www.iddhien.com iddhien2006 all rights reserved 14
  • 15. • Modem Status Register, digunakan untuk menampung bit – bit yang menyatakan status dari saluran hubungan dengan modem Rincian bit pada Modem Status register Nomor Keterangan Bit 0 1 = Menyatakan adanya perubahan keadaan di saluran Clear to Send (CTS) 1 1 = Menyatakan adanya perubahan keadaan di saluran Data Set Ready (DSR) 2 1 = Menyatakan adanya perubahan keadaan di saluran Ring Indicator (RI) dari Low ke High 29 http://www.iddhien.com iddhien2006 all rights reserved • Lanjutan. Rincian bit pada Modem Status register Nomor Keterangan Bit 3 1 = Menyatakan adanya perubahan di saluran Receive Line Signal Detect (DCD) 4 1 = Menyatakan saluran Clear to Send (CTS) sudah dalam keadaan aktif 5 1 = Menyatakan saluran Data Set Ready (DSR) sudah dalam keadaan aktif 6 1 = Menyatakan bahwa saluran Ring Indicator sudah dalam keadaan High 7 1 = Menyatakan bahwa saluran Receive Line Signal 30 Detect (DCD) sudah dalam keadaan aktif http://www.iddhien.com iddhien2006 all rights reserved 15
  • 16. 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. 31 http://www.iddhien.com iddhien2006 all rights reserved 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 http://www.iddhien.com iddhien2006 all rights reserved 16
  • 17. 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 33 satu port serial harus digunakan MSComm lain. http://www.iddhien.com iddhien2006 all rights reserved 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 34 yang dihubungkan dengan MSComm ini http://www.iddhien.com iddhien2006 all rights reserved 17
  • 18. 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 http://www.iddhien.com iddhien2006 all rights reserved 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 36 End Sub http://www.iddhien.com iddhien2006 all rights reserved 18
  • 19. 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 37 • Menutup port serial http://www.iddhien.com iddhien2006 all rights reserved 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. 38 http://www.iddhien.com iddhien2006 all rights reserved 19
  • 20. Nilai-nilai properti even error pada CommEvent Konstanta Keterangan comEventFrame Hardware mendeteksi adanya kesalahan frame comEventRxParity Hardware mendeteksi adanya kesalahan pariti comEventRxOver Buffer penerima mengalami over flow, tidak ada ruang kosong lagi pada buffer penerima comEventTxFull Buffer kirim penuh comEventOverrun Port mengalami overrun comEventBreak Sinyal Break diterima comEventDCB Mendapatkan kembali Device Control Block (DCB) dari port serial 39 http://www.iddhien.com iddhien2006 all rights reserved Nilai-nilai properti even komunikasi pada CommEvent Konstanta Keterangan comEvSend Jumlah karakter pada buffer kirim lebih sedikit dari pada nilai properti Sthreshold. Even ini akan dibangkitkan jika nilai pada properti Sthreshold tidak diisi “0” comEvReceive 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” comEvCTS Terjadi perubahan pada saluran Clear to Send comEvDSR Terjadi perubahan pada saluran Data Set Ready comEvCD Terjadi perubahan pada saluran Carrier Detect comEvRing Terdeteksi adanya sinyal Ring comEvEOF Karakter End of File diterima 40 http://www.iddhien.com iddhien2006 all rights reserved 20
  • 21. 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” 41 then http://www.iddhien.com iddhien2006 all rights reserved 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 http://www.iddhien.com iddhien2006 all rights reserved 21
  • 22. 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 http://www.iddhien.com iddhien2006 all rights reserved 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 43 sebuah Text di Visual basic. http://www.iddhien.com iddhien2006 all rights reserved 22
  • 23. 43 http://www.iddhien.com iddhien2006 all rights reserved 23