komunikasi serial laporan 2
DESCRIPTION
laporan komunikasi serialTRANSCRIPT
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
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
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
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
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
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
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
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
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
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
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
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
13
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
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
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
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
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
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
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
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
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
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
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
.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
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
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
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