komunikasi serial laporan 2

36
Komunikasi Serial Penghitung Jumlah Orang Masuk dan Keluar dengan Microsoft Visual Basic 6.0 dari Mikrokontroler AT89S52 Ke PC I. Alat Yang Digunakan Alat yang digunakan untuk komunikasi serial yaitu : 1. Laptop (PC) 2. Kabel USB to RS232 (Serial DB9 Female) 3. Downloader 4. Rangkaian Sistem Minimum AT89S52 Tabel 1. Komponen rangkaian SisMin AT89S52 No Nama Komponen Jumlah 1 IC AT89S52 1 buah 2 Socket pin 40 1 buah 3 Kristal 11,0592 MHz 1 buah 4 Saklar Push Button 1 buah 5 Kapasitor 30 pF 2 buah 6 Kapasitor 10 µF / 16V 1 buah 7 Resistor 10 KΩ 1 buah 8 Resistor 330 Ω 8 buah 9 LED 8 buah 10 Pin Header Single Secukupnya 1

Upload: ayuaster

Post on 23-Oct-2015

419 views

Category:

Documents


27 download

DESCRIPTION

laporan komunikasi serial

TRANSCRIPT

Page 1: Komunikasi Serial Laporan 2

Komunikasi Serial Penghitung Jumlah Orang Masuk dan Keluar

dengan Microsoft Visual Basic 6.0 dari

Mikrokontroler AT89S52 Ke PC

I. Alat Yang Digunakan

Alat yang digunakan untuk komunikasi serial yaitu :

1. Laptop (PC)

2. Kabel USB to RS232 (Serial DB9 Female)

3. Downloader

4. Rangkaian Sistem Minimum AT89S52

Tabel 1. Komponen rangkaian SisMin AT89S52

No Nama Komponen Jumlah

1 IC AT89S52 1 buah

2 Socket pin 40 1 buah

3 Kristal 11,0592 MHz 1 buah

4 Saklar Push Button 1 buah

5 Kapasitor 30 pF 2 buah

6 Kapasitor 10 µF / 16V 1 buah

7 Resistor 10 KΩ 1 buah

8 Resistor 330 Ω 8 buah

9 LED 8 buah

10 Pin Header Single Secukupnya

1

Page 2: Komunikasi Serial Laporan 2

5. Rangkaian Komunikasi Serial

Tabel 2. Komponen rangkaian komunikasi serial

No Nama Komponen Jumlah

1 IC MAX 232 1 buah

2 Socket pin 16 1 buah

3 DB9 Female 1 buah

4 Kapasitor 1 µF / 16V 4 buah

5 Pin Header Single Secukupnya

6. Rangkaian Catu Daya

No Nama Komponen Jumlah

1 Dioda Bridge 1 buah

2 IC 7805 1 buah

3 Kapasitor 1000, dan

100 µF

1 buah

4 Led 1 buah

5 Jumper Secukupnya

6 Resistor 100 Ω 1 buah

II. Dasar Teori

II.1 Mikrokontroler

Mikrokontroler merupakan sistem komputer kecil yang biasa digunakan

untuk sistem pengendali atau pengontrol yang dapat diprogram sesuai kebutuhan.

Mikrokontroller memiliki 4KB Flash Programmable dan Erasable Read Only

Memory(PEROM) didalamnya.

2

Page 3: Komunikasi Serial Laporan 2

Mikrokontroler AT89S52 merupakan pengembangan dari mikrokontroler

MCS-51. Mikrokontroler ini biasa disebut juga dengan mikrokomputer CMOS 8

bit dengan 8 Kbyte yang dapat dIprogram sampai 1000 kali pemograman. Selain

itu AT89S52 juga mempunyai kapasitas RAM sebesar 256 bytes, 32 saluran I/O,

Watchdog timer, dua pointer data, tiga buah timer/counter 16-bit, Programmable

UART (Serial Port). Memori Flash digunakan untuk menyimpan perintah

(instruksi) berstandar MCS-51, sehingga memungkinkan mikrokontroler ini

bekerja sendiri tanpa diperlukan tambahan chip lainnya (single chip operation),

mode operasi keping tunggal yang tidak memerlukan external memory dan

memori flashnya mampu diprogram hingga seribu kali. Hal lain yang

menguntungkan adalah sistem pemogramanan menjadi lebih sederhana dan tidak

memerlukan rangkaian yang rumit.

Sebuah mikrokontroler dapat berfungsi/bekerja, apabila telah terisi oleh

program. Program terlebih dahulu dimasukan kedalam memori sesuai dengan

kebutuhan penggunaaan pengontrolan yang diperlukan dan yang hendak

dijalankan. Program yang dimasukkan kedalam mikrokontroler Atmel 89S52

adalah berupa file heksa (Hex File), dan program tersebut berisikan instruksi atau

perintah untuk menjalankan sistem kontrol.

Mikrokontroler AT89S52 mempunyai 40 kaki, 32 kaki diantaranya

digunakan sebagai port pararel. Satu Port pararel terdiri 8 kaki, dengan demikian

32 kaki tersebut membentuk 4 buah Port pararel, yang masing-masing dikenal

sebagai Port 0, Port 1, Port 2, dan Port 3. Nomor dari masing-masing jalur (kaki)

dari Port pararel mulai dari 0 sampai 7, jalur (kaki) pertama Port 0 disebut sebagai

P0.0 dan jalur terakhir untuk Port 3 adalah P3.7

3

Page 4: Komunikasi Serial Laporan 2

Gambar 1. Konfigurasi Pin Mikrokontroler AT89S52

Keterangan :

Port 0

Merupakan dual-purpose port (port yang memiliki dua kegunaan). Pada

disain yang minimum (sederhana), port 0 digunakan sebagai

port Input/Output (I/O). Port 0 terdapat pada pin 32 sampai 39.

Port 1

Pada mikrokontroler MCS-51 seri AT89SX, terdapat fasilitas khusus dari

port 1 ini yaitu adanya fasilitas In-System Programming, yaitu port 1.5

sebagai MOSI, port 1.6 sebagai MISO, port 1.7 sebagai SCK. Merupakan

port yang hanya berfungsi sebagai port I/O (Input/Output). Port 1 terdapat

pada pin 1-8.

Port 2

Merupakan dual-purpose port. Pada desain minimum digunakan sebagai

port I/O (Input/Output). Sedangkan pada desain lebih lanjut digunakan

sebagai high byte dari address (alamat). Port 2 terdapat pada pin 21-28.

Port 3

Merupakan dual-purpose port. Selain sebagai port I/O (Input/Output). Port

3 terdapat pada pin 10 - 17. Port 3 juga mempunyai fungsi khusus. Fungsi

khusus tersebut diperlihatkan pada tabel berikut.

4

Page 5: Komunikasi Serial Laporan 2

Tabel 3. Konfigurasi Port 3Nama Pin Fungsi

P3.0 (Pin 10) RXD (Port Input Serial)

P3.1 (Pin 11) TXD (Port Output Serial)

P3.2 (Pin 12) INTO (Interrupt 0 Eksternal)

P3.3 (Pin 13) INT1 (Interrupt 1 Eksternal)

P3.4 (Pin 14) T0 (Input Eksternal Timer 0)

P3.5 (Pin 15) T1 (Input Eksternal Timer 1)

P3.6 (Pin 16) WR (untuk menulis eksternal data memori)

P3.7 (Pin 17) RD (untuk membaca eksternal data memori

RST : Pin ini berfungsi sebagai input untuk melakukan reset terhadap

mikro yaitu mengembalikan kondisi kerja mikrokontroler pada posisi

awal. RST terdapat pada pin 9.

XTAL 1 : XTAL1 berfungsi sebagai masukan dari rangkaian osilasi

mikrokontroler. XTAL 1 terdapat pada pin 19.

XTAL 2 : XTAL2 berfungsi sebagai keluaran dari rangkaian osilasi

mikrokontroler. XTAL 2 terdapat pada pin 18.

PSEN : PSEN (Program Memory Enable) adalah pulsa pengaktif untuk

membaca program memori luar.

ALE : Berfungsi untuk demultiplexer pada saat port 0 bekerja

sebagai multiplexed address/data bus (pengaksesan memori eksternal).

EA : EA (External Access) harus dihubungkan dengan ground jika

menggunakan program memori luar. Jika menggunakan program memori

internal maka EA dihubungkan dengan VCC.

VCC : Pin ini berfungsi ssebagai tempat sumber tegangan yang sebesar 5

volt DC. VCC terdapat pada pin 40.

GND : Pin ini berfungsi sebagai pentanahan. GND terdapat pada pin 20.

II.2 Komunikasi Serial

5

Page 6: Komunikasi Serial Laporan 2

Komunikasi serial adalah salah satu metode komunikasi data di mana hanya

satu bit data yang dikirimkan melalui seuntai kabel pada suatu waktu tertentu.

Komunikasi ini mempunyai suatu kelebihan yaitu hanya membutuhkan satu jalur

dan kabel yang sedikit dibandingkan dengan komunikasi paralel. Untuk

komunikasi serial tersinkron, lebar pita setara dengan frekuensi jalur.

Pada komputer pribadi, komunikasi serial digunakan misalnya pada standar

komunikasi RS-232 yang menghubungkan periferal eksternal seperti

modem dengan komputer. Komunikasi serial membutuhkan port sebagai saluran

data yaitu port serial DB9.

Gambar 2. DB9 Male dan DB9 Female

Tabel 4. Signal DB9 Male dan DB9 Female

PIN Signal

Pin 1 Data Carrier Detect (DCD)

Pin 2 Received Data (RxD)

Pin 3 Transmitted Data (TxD)

Pin 4 Data Terminal Ready (DTR)

Pin 5 Signal Ground (common)

Pin 6 Data Set Ready (DSR)

Pin 7 Request To Send (RTS)

Pin 8 Clear To Send (CTS)

Pin 9 Ring Indicator (RI)

Berikut ini beberapa istilah dalam komunikasi serial, yaitu :

6

Page 7: Komunikasi Serial Laporan 2

1. Synchronous (sinkron) adalah kondisi pengiriman data serial yang disertai

dengan pengiriman detak (clock).

2. Asynchronous (asinkron) adalah kondisi dengan detak tidak dikirim

bersamaan dengan data serial sehingga masing-masing perangkat keras yang

berkomunikasi harus menciptakan detaknya sendiri.

3. Baud rate merupakan istilah yang digunakan untuk kecepatan aliran data.

Satuan baud rate adalah bps (bit per second). Contohnya, 9600 bps atau

19200 bps.

4. Full duplex adalah jenis komunikasi serial yang menyatakan hubungan antara

dua perangkat keras, A dan B. Jika A sedang melakukan pengiriman data,

pada saat yang sama, A dapat menerima data dari B, dan sebaliknya. Kondisi

ini dinamakan full duplex atau komunikasi dua arah. Contohnya, telepon.

5. Half duplex merupakan kondisi ketika proses pengiriman dan penerimaan

data tidak dapat dilakukan secara bersamaan seperti pada full duplex namun

dilakukan secara bergantian. Contohnya, pesawat intercom dan walkie talkie.

Jenis komunikasi serial diantaranya UART (Universal Asynchronous

Receiver/Transmitter), SPI, dan I2C (Inter Integrated Circuit). Pada komunikasi

serial asinkron jenis full duplex digunakan tiga jalur yaitu, jalur Tx (transmit /

pengiriman), jalur Rx(receive / penrimaan), dan jalur ground. Umumnya jumlah

data yang dikirim adalah satu bit start, delapan bit data, dan satu bit stop sehingga

dalam satu frame data terdapat sepuluh bit.

7

Page 8: Komunikasi Serial Laporan 2

Gambar 3. Komunikasi Serial

Komunikasi serial pada mikrokontroler AT89S52 bergantung pada kondisi

pin Rx dan Tx. Data yang akan dikirim dan diterima harus diletakkan atau

ditampung pada register SBUF (serial buffer). SBUF pada mikrokontroler

dipisahkan antara pengiriman data dan penerimaan data tetapi dalam

pemrogramannya hanya ada satu yaitu SBUF saja. Tugas compiler untuk

memahami SBUF yang dimaksud oleh program dan menterjemahkannya ke

dalam kode mesin untuk masing-masing SBUF.

Gambar 4. Register SBUF

II.3 Konverter Logika RS-232

Konverter yang paling mudah digunakan adalah MAX-232. IC MAX-232

memiliki dua charge-pump internal yang berfungsi untuk mengkonversi tegangan

+5V menjadi ±10V ( tanpa beban ) untuk operasi driver RS232. Konverter

8

Page 9: Komunikasi Serial Laporan 2

pertama menggunakan kapasitor C1 untuk menggandakan tegangan input +5V

menjadi +10V saat C3 berada pada output V+. Konverter kedua menggunakan

kapasitor C2 untuk merubah +10V menjadi -10V saat C4 berada pada output V-.

Gambar 5. IC MAX 232

Gambar 6. Rangkaian Transceiver RS 232 Menggunakan MAX 232

(Full Duplex)

Gambar 7. Rangkaian Transceiver RS 232 Menggunakan DS 275

(Half Duplex)

III. Langkah Percobaan

Untuk melakukan percobaan komunikasi serial dari Visual Basic ke

Mikrokontroler berikut langkah percobaannya :

9

Page 10: Komunikasi Serial Laporan 2

1. Buatlah rangkaian sistem minimum AT89S52, rangkaian komunikasi serial,

dan rangkaian catu daya sebagai sumber tegangan.

Gambar 8. Rangkaian Sistem Minimum AT89S52 dan

Rangkaian Komunikasi Serial

2. Rangkaian Catu Daya

Gambar 10. Rangkaian Catu Daya 5 Volt

3. Buatlah kode program Bascom 8051 untuk menjalankan rangkaian pada

percobaan tersebut.

10

Page 11: Komunikasi Serial Laporan 2

Gambar 9. Kode Program Bascom 8051

4. Setelah program BASCOM 8051 telah dibuat, flash program tersebut ke

dalam IC AT89S52 menggunakan downloader. Program yang digunakan

adalah file tipe Hex yang berisi perintah untuk menjalankan sistem kontrol

pada rangkaian. Program yang digunakan yaitu Aplikasi Prog ISP. Langkah

untuk memflash yaitu klik Load Flash >> cari data program,yang akan

diaplikasikan dalam bentuk .Hex >> kemudian klik Auto.

11

Page 12: Komunikasi Serial Laporan 2

Gambar 10. Tampilan Aplikasi Prog ISP

5. Apabila program selesai diflash, kemudian lakukan komunikasi serial antara

Mikrokontroler dengan PC (Laptop). Aplikasi yang digunakan yaitu

Microsoft Visual Basic 6.0.

6. Kemudian buatlah view object dan view code pada Microsoft Visual Basic

6.0. Kode program yang dibuat pada Microsoft Visual Basic 6.0 ini harus

sesuai dengan kode program yang telah diflash pada IC AT 89S52 agar tidak

terjadi error yang dapat menyebabkan rangkaian tidak berjalan dan lampu led

indikator tidak menyala sesuai dengan perintah yang diharapkan.

Gambar 11. View Object pada Microsoft Visual Basic 6.0

12

Page 13: Komunikasi Serial Laporan 2

13

Page 14: Komunikasi Serial Laporan 2

Gambar 12. View Code pada Microsoft Visual Basic 6.0

7. Setelah semuanya selesai, maka pengujian pada komunikasi serial dapat

dilakukan.

IV. Hasil Percobaan

Pada percobaan kali ini adalah pengujian menggunakan rangkaian

komunikasi serial dari Mikrokontroler ke PC yaitu sebagai Penghitung Jumlah

Orang Masuk dan Orang Keluar. Pada percobaan ini mikrokontroler at89s52

akan mengontrol PC, sehingga PC dapat menampilkan jumlah orang yang telah

masuk/keluar oleh Mikrokontroler. Program yang digunakan berupa Microsoft

Visual Basic 6.0 yang akan menampilkan perintah dari mikrokontroler AT89S52.

Pada percobaan ini diperlukan kabel port usb to serial untuk menghubungkan

antara rangkaian port serial ke laptop.

14

Page 15: Komunikasi Serial Laporan 2

Gambar 13. Rangkaian Sistem Minimum Port

Serial

Langkah pengujian pada rangkaian komunikasi serial yaitu sebagai berikut:

1. Program yang dibuat dalam bascom 8051 diflash dengan downloader

menggunakan aplikasi prog ISP.

Gambar 14. Flash Program pada Bascom 8051

2. Hubungkan kabel port serial DB9 dengan laptop.

15

Page 16: Komunikasi Serial Laporan 2

Gambar 15.

Pemasangan Kabel Serial Pada Laptop

3. Sambungkan rangkaian pada sumber tegangan misalnya downloader untuk

menstabilkan tegangan pada rangkaian.

4. Buka program yang dibuat pada aplikasi Microsoft Visual Basic 6.0 untuk

menjalankan komunikasi serial antara laptop ke rangkaian mikrokontroler

AT89S52.

Gambar 16. Tampilan Object dan Code program pada

Microsoft Visual Basic 6.0

16

Page 17: Komunikasi Serial Laporan 2

5. Aturlah comport dan baudrate pada menu properties pada microsoft visual

basic 6.0.

Gambar 17. Pengaturan Comport dan Baudrate

Microsoft Visual Basic 6.0.

6. Kemudian jalankan program pada Microsoft Visual Basic 6.0 seperti berikut

ini :

Gambar 18. Simulasi Microsoft Visual Basic 6.0

7. Untuk menampilkan jumlah orang pada PC, sambungkan jumper pada positif

rangkaian ke port 1.0 untuk penghitung orang keluar, dan port 1.1 untuk

penghitung jumlah orang yang masuk. Apabila kita lepas jumper dari

rangkaian positif tersebut maka pc akan menampilkan angka 1 – 255 (orang

17

Page 18: Komunikasi Serial Laporan 2

masuk), begitupun sebaliknya apabila dihitung mundur maka akan

menampilkan angka berupa 255 – 1 (orang keluar). Dengan demikian apabila

di PC tampil angka 1 maka led pun juga akan menyala sesuai dengan jumlah

angka yang tertera di PC tersebut. Begitupun seterusnya dengan yang

lainnya.

Gambar 19. Tampilan Saat Menyambungkan kabel ke positive rangkaian pada

rangkaian Mikrokontroler

V. Analisa Data

1. Program Untuk mengontrol Program VB, yaitu sebagai pengontrol

tampilan jumlah orang masuk dan keluar pada laptop (PC) dengan

menggunakan Aplikasi Program BASCOM 8051 adalah sebagai berikut :

$regfile = "8052.dat" “library yang digunakan”

$crystal = 11059200 “XTAL yang digunakan adalah 11,0592MHz”

$baud = 2400 “komunikasi serial dengan baudrate 2400”

Config Lcd = 16 * 2 “Menunjukkan LCD yang digunakan adalah LCD

16*2 Karakter”

Config Lcdpin = Pin , Db4 = P1.4 , Db5 = P1.5 , Db6 = P1.6 , Db7 = P1.7 , E =

P1.3 , Rs = P1.2

(“Port-port mikrokontroler yang terkoneksi ke LCD, Pin Db4 dihubungkan ke

Port 1.4, Pin Db5 dihubungkan ke Port 1.5, Pin Db6 dihungkan ke Port 1.6, Pin

18

Page 19: Komunikasi Serial Laporan 2

Db7 dihubungkan kePort 1.7, Pin E dihubungkan ke Port1.3, Pin Rs dihubungkan

ke Port1.1”)

Cursor Off “Cursor pada LCD tidak aktif”

Locate 1 , 1 “Tampilan LCD pada baris pertama kolom

pertama”

Lcd "Good Morning" “LCD menampilkan tulisan Good Morning”

Wait 1 “Waktu delay selama 1 sekon”

Lowerline “Tampilan LCD pada baris selanjutnya”

Lcd "Ayu Astria" “LCD menampilkan tulisan Ayu Astria”

Wait 1 “Waktu delay selama 1 sekon”

Cls “Layar pada LCD terhapus”

Locate 1 , 1 “Tampilan LCD pada baris pertama kolom

pertama”

Lcd "Mid2.Program" “LCD menampilkan tulisan Mid2.Program”

Wait 1 “Waktu delay selama 1 sekon”

Lowerline “Tampilan LCD pada baris selanjutnya”

Lcd "Mikro To VB" “LCD menampilkan tulisan Mikro To VB”

Wait 1 “Waktu delay selama 1 sekon”

Cls “Layar pada LCD terhapus”

Locate 1 , 1 “Tampilan LCD pada baris pertama kolom

pertama”

Lcd "let's go" LCD menampilkan tulisan let’s go"

Wait 1 “Waktu delay selama 1 sekon”

Cls “Layar pada LCD terhapus”

Sensor1 Alias P1.0 “sebagai input sensor orang masuk”

Sensor2 Alias P1.1 “sebagai input sensor orang keluar”

A Alias P2 “A sebagai output”

Sensor1 = 0 “Sensor1 berlogika 0 atau belum aktif”

19

Page 20: Komunikasi Serial Laporan 2

Sensor2 = 0 “Sensor2 berlogika 0 atau belum aktif”

A = 255 “Jumlah maksimal untuk 8 bit”

B = 0 “B sama dengan 0”

Waitms 500 “Waktu delay selama 500 ms atau 0,5 s”

Do “Mulai melakukan perintah”

If Sensor1 = 1 Then “Jika sensor1 = 1, maka”

Do “Mulai melakukan perintah”

Loop Until Sensor1 = 0 “Perintah akan dijalankan sampai kondisi sensor1

= 0”

A = A + 1 “Output akan ditambah 1”

Waitms 250 “Waktu delay selama 250 ms atau 0,25 s”

Locate 1 , 1 “Tampilan LCD pada baris pertama kolom

pertama”

Lcd "JUMLAH ORANG :" “LCD menampilkan tulisan JUMLAH ORANG”

Locate 2 , 8 “Tampilan LCD pada baris kedua kolom delapan”

Lcd A “LCD menampilkan output A"

Waitms 250 “Waktu delay selama 250 ms atau 0,25 s”

Cls “Layar pada LCD terhapus”

End If “Pengkondisian selesai”

If Sensor2 = 1 Then “Jika sensor2 = 1, maka”

Do “Mulai melakukan perintah”

Loop Until Sensor2 = 0 “Perintah akan dijalankan sampai kondisi sensor2

= 0”

A = A – 1 “Output akan dikurang 1”

Waitms 250 “Waktu delay selama 250 ms atau 0,25 s”

Locate 1 , 1 “Tampilan LCD pada baris pertama kolom

pertama”

20

Page 21: Komunikasi Serial Laporan 2

Lcd "JUMLAH ORANG :" “LCD menampilkan tulisan JUMLAH ORANG”

Locate 2 , 8 “Tampilan LCD pada baris kedua kolom delapan”

Lcd A “LCD menampilkan output A"

Waitms 250 “Waktu delay selama 250 ms atau 0,25 s”

Cls “Layar pada LCD terhapus”

End If “Pengkondisian selesai”

B = A “Data B sama dengan A”

Print B “Data B akan di kirim ke VB”

Waitms 250 “Waktu delay selama 250 ms atau 0,25 s”

Loop “Program akan di ulang dari awal”

End “Selesai”

2. Program yang digunakan untuk menampilkan penghitung jumlah orang

yang masuk dan keluar pada laptop (PC) dengan menggunakan Aplikasi

Program Visual Basic adalah sebagai berikut :

Private Sub cmdConnect_Click() “Perintah untuk menghubungkan

cmdKirim.Enabled = True port serial”

cmdTes.Enabled = True

Dim port As Integer “Tipe data sebagai integer”

On Error GoTo errcode

Select Case Combo1.ListIndex “Tools untuk menyediakan berbagai

Case -1 pilihan port yang akan digunakan”

port = 1 “Pilihan port yang tersedia yaitu

Case 0 dari 1 sampai 16 yang dapat

port = 1 terbaca oleh Microsoft Visual Basic

Case 1 6.0”

21

Page 22: Komunikasi Serial Laporan 2

port = 2

Case 2

port = 3

Case 3

port = 4

Case 4

port = 5

Case 5

port = 6

Case 6

port = 7

Case 7

port = 8

Case 8

port = 9

Case 9

port = 10

Case 10

port = 11

Case 11

port = 12

Case 12

port = 13

Case 13

port = 14

Case 14

port = 15

Case 15

port = 16

End Select

If MSComm1.PortOpen = False Then “Konfigurasi COM agar dapat

22

Page 23: Komunikasi Serial Laporan 2

MSComm1.CommPort = port terbaca oleh VB ketika

MSComm1.RThreshold = 1 dihubungkan”

MSComm1.InputLen = 40

MSComm1.Settings = Combo2.List(Combo2.ListIndex) & ",N,8,1"

MSComm1.PortOpen = True

cmdConnect.Enabled = False

cmdDisconnect.Enabled = True

End If

Exit Sub

“Message box akan keluar jika salah

errcode: dalam memilih port”

MsgBox "Port Salah !", vbOKOnly, "Peringatan"

Combo1.SetFocus

End Sub

“Program VB tersebut akan dijalankan ketika button Connect diklik, yang

apabila pemilihan port yang digunakan benar maka port serial akan terbuka atau

True, dan jika salah maka akan tampil peringatan “Port Salah!”.

InputLen adalah banyaknya data yang diterima port serial pada sekali

pengiriman, diberi nilai semaksimal mungkin, misalnya 40 karakter.

Settings adalah pengaturan komunikasi serial, baud rate didapatkan dari

pemilihan nilai pada Combo2, N adalah Parity None, 8 adalah Data bits, dan 1

adalah Stop bits. Jika port serial sudah terhubung maka cmdConnect disabled

dan cmdDisconnect enabled.”

Private Sub cmdDisconnect_Click() “Perintah untuk memutuskan

If MSComm1.PortOpen = True Then sambaungan serial”

MSComm1.PortOpen = False

End If

cmdConnect.Enabled = True

23

Page 24: Komunikasi Serial Laporan 2

cmdDisconnect.Enabled = False

End Sub

“Jika port serial terputus, maka cmdConnect enabled, cmdDisconnect disabled,

dan Timer1 non aktif.”

Private Sub cmdKirim_Click()

MSComm1.Output = textdata.Text & Chr$(13)

MSComm1_OnComm

End Sub

Private Sub cmdTes_Click()

MSComm1.Output = "S" & Chr$(13)

End Sub

Private Sub Command1_Click() “Perintah untuk keluar dari

Unload Me program”

End Sub

Private Sub Form_Load()

cmdKirim.Enabled = False

cmdTes.Enabled = False

With Combo1

.AddItem "COM1"

.AddItem "COM2"

.AddItem "COM3"

.AddItem "COM4"

.AddItem "COM5"

.AddItem "COM6"

.AddItem "COM7"

.AddItem "COM8"

24

Page 25: Komunikasi Serial Laporan 2

.AddItem "COM9"

.AddItem "COM10"

.AddItem "COM11"

.AddItem "COM12"

.AddItem "COM13"

.AddItem "COM14"

.AddItem "COM15"

.AddItem "COM16"

End With

With Combo2

.AddItem "2400"

.AddItem "4800"

.AddItem "9600"

.AddItem "19200"

.AddItem "38400"

.AddItem "56600"

End With

Timer1.Enabled = False

cmdConnect.Enabled = True

cmdDisconnect.Enabled = False

End Sub

“Program diatas berarti akan dijalankan ketika form di load, atau ketika

program VB Tes Port Serial ini dibuka.”

Private Sub MSComm1_OnComm() “Perintah pada saat kabel serial

Dim buffer As String dihubungkan dan VB di jalankan”

Dim temp As String “Tipe data yang digunakan yaitu

string”

25

Page 26: Komunikasi Serial Laporan 2

buffer = MSComm1.Input

If buffer <> "" Then

With Text1

.SelStart = Len(.Text)

.SelText = buffer

End With

End If

End Sub

“Buffer merupakan variabel yang akan menerima data dari port serial atau

MsComm1.Input, jika data tidak kosong atau “”, maka pada Textbox1

ditambahkan baris setiap menerima data.”

Private Sub Timer1_Timer() “Timer yang digunakan untuk proses

MSComm1_OnComm background yang diaktifkan

End Sub berdasarkan interval waktu tertentu.

Merupakan kontrol non visual”

“Yang berarti akan memanggil sub program MsComm1_OnComm sebagai

pengambilan data serial, setiap interval waktu timer, yaitu 1 detik.

Pengaturan interval waktu pengambilan data ini bisa dilakukan dengan program

VB dengan timer seperti ini, tetapi bisa juga tidak menggunakan timer dan

menerima interval waktu yang sudah diatur pada mikrokontroler.

Jika tidak ingin menggunakan Timer dari VB, alias Timer sesuai dengan data

pengiriman mikrokontroler, maka sub program Timer tidak perlu dipakai.”

26

Page 27: Komunikasi Serial Laporan 2

VI. Kesimpulan

1. Pada percobaan kali ini yaitu membahas tentang Komunikasi Serial

Penghitung Jumlah Orang Masuk dan Keluar dengan Microsoft Visual

Basic 6.0 dari Mikrokontroler AT89S52 Ke PC

2. Pada percobaan ini menggunakan rangkaian Sistem Minimum port serial

IC 89S52, yang dihubungkan ke laptop dengan menggunakan kebel serial

DB9 dan downloader sebagai sumbernya.

3. Komunikasi serial adalah salah satu metode komunikasi data di mana

hanya satu bit data yang dikirimkan melalui seuntai kabel pada suatu

waktu tertentu.

4. Aplikasi yang digunakan untuk menjalankan rangkaian ini yaitu program

dalam bentuk aplikasi BASCOM 89S52 dan Visual Basic 6.0.

5. Program dalam bentuk BASCOM terlebih dahulu diflash untuk

menjalankan program, dan buatlah program VB yang sesuai dengan

program pada BASCOM.

6. Apabila terjadi kesalahan/error cek kembali kode program apakah sudah

sesuai antara VB dan BASCOM.

27

Page 28: Komunikasi Serial Laporan 2

DAFTAR PUSTAKA

http://en.wordpress.com/tag/komunikasi-serial/ (diakses tanggal 22 Desember

2013)

http://mikrokontrolerkits.blogspot.com (diakses tanggal 22 Desember 2013)

http//id.wikipedia.org/wiki/Komunikasi_serial (diakses tanggal 23 Desember

2013)

http://rodo-heweh.blogspot.com/2007/04/perakitan-kabel-null-modem

db9db25rj45.html (diakses tanggal 23 Desember 2013)

http://desylvia.wordpress.com/2010/09/06/komunikasi-serial/ (diakses tanggal 23

Desember 2013)

28