TUGAS AKHIR UNIT DETEKSI TIKET PADA SISTEM IDENTIFIKASI TIKET PENUMPANG OTOMATIS Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Elektro Disusun oleh: HERNOMO KUSTRIATMOJO NIM: 015114060 PROGRAM STUDI TEKNIK ELEKTRO JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS SANATA DHARMA YOGYAKARTA 2007 iv
97
Embed
UNIT DETEKSI TIKET PADA SISTEM IDENTIFIKASI TIKET ...repository.usd.ac.id/28358/2/015114060_Full.pdf · PADA SISTEM IDENTIFIKASI TIKET PENUMPANG OTOMATIS Diajukan Untuk Memenuhi Salah
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
TUGAS AKHIR
UNIT DETEKSI TIKET
PADA SISTEM IDENTIFIKASI TIKET PENUMPANG OTOMATIS
Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Elektro
Disusun oleh:
HERNOMO KUSTRIATMOJO
NIM: 015114060
PROGRAM STUDI TEKNIK ELEKTRO JURUSAN TEKNIK ELEKTRO
FAKULTAS TEKNIK UNIVERSITAS SANATA DHARMA
YOGYAKARTA 2007
iv
FINAL PROJECT
TICKET DETECTING UNIT ON AUTOMATIC PASSENGER TICKET
IDENTIFICATION SYSTEM
Presented as Partial Fulfillment of the Requirements To Obtain The Technical Engineering Degree
In Electrical Engineering
By:
HERNOMO KUSTRIATMOJO
Student Number: 015114060
ELECTRICAL ENGINEERING STUDY PROGRAM ELECTRICAL ENGINEERING DEPARTMENT
ENGINEERING FACULTY SANATA DHARMA UNIVERSITY
2007
v
LEMBAR PERSETUJUAN TUGAS AKHIR
UNIT DETEKSI TIKET PADA SISTEM IDENTIFIKASI
TIKET PENUMPANG OTOMATIS
(TICKET DETECTING UNIT OF AUTOMATIC PASSENGER
TICKET IDENTIFICATION SYSTEM)
Disusun Oleh:
HERNOMO KUSTRIATMOJO
NIM: 015114060
Telah Disetujui oleh:
vi
LEMBAR PENGESAHAN TUGAS AKHIR
UNIT DETEKSI TIKET PADA SISTEM IDENTIFIKASI
TIKET PENUMPANG OTOMATIS
(TICKET DETECTING UNIT OF AUTOMATIC PASSENGER
TICKET IDENTIFICATION SYSTEM)
vii
viii
KATA PENGANTAR
Terpujilah Tuhan atas kasihNya yang melimpah sehingga penulis dapat
menyelesaikan Tugas Akhir ini.
Terima kasih yang mendalam penulis ucapkan kepada pihak – pihak yang
telah membantu penulis dalam penyelesaian Tugas Akhir ini. Mereka adalah:
1. Ir. Greg.Heliarko, SJ.,SS.,BST., MA., Msc., selaku Dekan Fakultas Teknik.
2. Bapak A. Bayu Primawan, S.T., M.Eng. selaku Kaprodi Teknik Elektro.
3. Bapak Pdt. Obaja Sigit Karyono, M.Th sebagai pembimbing penulis.
4. Bapak Ir. Iswanjono, M.T. sebagai pembimbing Tugas Akhir.
5. Bapak Petrus Setyo Prabowo, ST. sebagai Pembimbing Akademik.
6. Keluarga Besar GKN Gloria Yogyakarta.
7. Segenap Dosen di Jurusan Teknik Elektro yang telah melayani sebagai
pengajar dan penasihat.
8. Segenap Laboran Teknik Elektro.
9. “The Winning Team” : Indra, Sulis, Liong, dan Yayuk. Never Give Up!
10. Rekan seangkatan TE’01 atas kebersamaannya di tahun-tahun yang silam.
11. Fajar Ira J., S. Farm, Apt. dan Pungkas Yoga K, ST. untuk pengertian dan
semua toleransi yang diberikan.
12. Keluarga Bp. Haryono ( Tasura 52 ), Keluarga Ibu Tukilah ( Gg. Nilam ), dan
Keluarga Bp. Suparno ( Jl. P. Puger II ).
13. Gloria Smile Jogjakarta : Dwi D., SP, Fernandez J.N., S.E. dan Kristiana T.A.,
S.Pd. akhirnya kita semua jadi sarjana !
14. Serta semua pihak yang namanya tidak tertulis pada lembar ini. Tuhan
memberkati.
vi
Untuk Bapak dan Ibu, yang tidak pernah menyerah...
vii
DAFTAR ISI HALAMAN JUDUL................................................................................................i TITLE PAGE...........................................................................................................ii HALAMAN PERSETUJUAN...............................................................................iii HALAMAN PENGESAHAN................................................................................iv HALAMAN PERNYATAAN KEASLIAN KARYA............................................v KATA PENGANTAR...........................................................................................vi HALAMAN MOTO DAN PERSEMBAHAN.....................................................vii DAFTAR ISI........................................................................................................viii DAFTAR GAMBAR.............................................................................................ix DAFTAR TABEL...................................................................................................x DAFTAR LAMPIRAN..........................................................................................xi INTISARI..............................................................................................................xii ABSTRACT.........................................................................................................xiii BAB I PENDAHULUAN 1.1 Judul................................................................................................1 1.2 Latar Belakang Masalah..................................................................1 1.3 Tujuan Penelitian.............................................................................2 1.3.1 Tujuan Umum......................................................................2 1.3.2 Tujuan Khusus.....................................................................2 1.4 Batasan Masalah..............................................................................2 BAB II DASAR TEORI
viii
2.1 Transfer Data...................................................................................4
2.2.4 Register fungsi khusus (Special Function Register)............9
2.2.5 Mode Pengalamatan dan Instruksi Mikrokontroler...........17 BAB II RANCANGAN PENELITIAN
3.1 Perancangan Perangkat Keras........................................................19 3.1.1 Pengondisi Sinyal RS 232..................................................20
3.1.2 LED Output.......................................................................21 3.1.3 On-Chip Oscilator..............................................................21
3.2 Perancangan Perangkat Lunak.......................................................22
4.2.3 Pengaktifan Perangkat Keras.........................................................32 BAB V KESIMPULAN DAN SARAN 5.1 Kesimpulan........................................................................36
Gambar 2.5 Peta memori dan metode untuk mengakses isinya ..........................9
Gambar 2.6 Akumulator .....................................................................................9
Gambar 2.7 Register B ......................................................................................10
Gambar 2.8 Program Status Word ....................................................................10
Gambar 2.9 Register AUXRI ............................................................................11
Gambar 2.10 Register TCON ..............................................................................14
Gambar 2.11 Register TMOD .............................................................................15
Gambar 3.1 Diagram Blok Perangkat Keras .....................................................19
Gambar 3.2 Konfigurasi MAX 232 ..................................................................20
Gambar 3.3 Konfigurasi LED ...........................................................................21
Gambar 3.4 Konfigurasi On-Chip Oscilator .....................................................21
Gambar 3.5 Diagram Alir Perangkat Lunak .....................................................22
Gambar 3.6 Flowchart Program Utama AT89S8252 ........................................23
Gambar 3.7 Flowchart Terima_Data ................................................................25
Gambar 3.8a Flowchart Banding_Data ..............................................................26
Gambar 3.8b Flowchart Banding_Data ..............................................................27
Gambar 4.1 Pengaksesan EEPROM ................................................................29
Gambar 4.2 10 byte data yang diterima di IRAM.............................................30
Gambar 4.3a Kondisi port setelah pembandingan data (bila data tidak sesuai ) 31
Gambar 4.3b Kondisi port setelah pembandingan data (bila data sesuai ) .........32
Gambar 4.3c Kondisi port setelah pembandingan data (nomor kursi 10 ) .........33
Gambar 4.3d Kondisi port setelah pembandingan data (nomor kursi 11) ..........34
xi
DAFTAR TABEL Tabel 2.1 Konfigurasi pin dan nama sinyal konektor serial DB-9 ..................5 Tabel 2.2 Register Bank Select .....................................................................10 Tabel 2.3 Fungsi alternatif port 3 ..................................................................13 Tabel 2.4a Fungsi – fungsi register TMOD ....................................................15 Tabel 2.4b Kombinasi M0 dan M1 .................................................................15
xii
xiii
INTISARI
Sistem transportasi modern membutuhkan pelayanan yang cepat dan
akurat. Dibutuhkan sebuah sistem yang memudahkan penumpang bis untuk
memperoleh pelayanan transportasi secara cepat dengan tidak mengesampingkan
kenyamanan dan keamanan dalam melakukan sebuah perjalanan darat.
Alat yang dibuat adalah sebuah modul yang bisa menerima serta
menyimpan data. Penelitian ini menggunakan AT89S8252 sebagai pengolah
utama, RS232 sebagai antar muka serial, masukan dari interupsi serial dan
keluaran dihubungkan pada perangkat keras bis.
Tujuan pembuatan alat ini adalah untuk menerima data kode baris yang
tercetak pada tiket penumpang untuk dibandingkan dengan data yang tersimpan
pada mikrokontroler.
xiv
ABSTRACT
Modern transportation system require the quick and accurate service. It
need a system that can facilitating bus passenger to obtain get the transportation
service quickly with not overrule the comfort and security te get a land
transportation.
Appliance made is a module which can accept and also saving data. This
research use AT89S8252 as main processor, RS232 as interface system, input
from interupting serial and output connected at bus hardware.
The target of this appliance is to accept the data of barcode that printed at
passenger ticket to be compared to data that saved at mikrokontroler.
xv
BAB I
PENDAHULUAN
I. 1. Judul
Unit Deteksi Tiket pada Sistem Identifikasi Tiket Penumpang Otomatis.
1. 2. Latar Belakang Masalah
Pada era sekarang ini, penumpang yang menggunakan jasa yang
menyediakan transportasi (bus, kereta api dan lain-lain) sering kali mengalami
pelayanan yang kurang memuaskan. Hal ini disebabkan karena kualitas pelayanan
yang kurang baik, sehingga menyebabkan gangguan-gangguan terhadap tata cara
kesalahan penumpang mengidentifikasi sarana transportasi yang dipakai, dan
praktek percaloan serta hal-hal yang lebih cenderung merugikan pihak pemakai
sarana transportasi. Untuk dapat meningkatkan kualitas pelayanan menjadi lebih
baik, hal yang perlu diperbaiki yaitu dalam pembuatan tiket, dimana tiket tersebut
harus mampu memberikan informasi tentang identitas penumpang (nama, jenis
kelamin, nomor tempat duduk, nama/nomor kendaraan, asal, dan tujuan) dengan
jelas dan tepat.
Untuk itu, pada penelitian ini akan dilakukan identifikasi tiket penumpang
dengan menggunakan Mikrokontroller AT89S8252 sebagai pemroses input /
output serta pengendali gerak pintu otomatis. Identifikasi tiket penumpang dapat
dilakukan dengan membuat suatu perangkat yang dapat digunakan sebagai alat
pengidentifikasi tiket penumpang tersebut. Keuntungan utama yang dapat
diperoleh dari penelitian tersebut adalah hasil penelitian dapat digunakan untuk
mengidentifikasi identitas penumpang dengan lebih jelas dan tepat sehingga
mendukung peningkatan kualitas pelayanan transportasi menjadi lebih baik.
1. 3. Tujuan Penelitian
1. 3. 1. Tujuan Umum
Tujuan umum dari alat ini adalah sebagai berikut:
a) Membuat sistem identifikasi dengan metode pengecekan data secara
berulang.
b) Merancang perangkat yang dapat mengaplikasikan program penyimpanan
dan pembandingan data dan menghasilkan keluaran visual.
c) Merancang dan membuat program yang dapat mengirim data penumpang
secara serial.
d) Merancang program yang mampu menyimpan/menulis sejumlah data dan
mengaksesnya kembali.
1. 3. 2. Tujuan Khusus
Tujuan khusus dari penelitian ini adalah untuk mengaplikasikan ilmu yang
telah diperoleh penulis dalam pendalaman teori serta untuk menyelesaikan
program penelitian terpadu.
1. 4. Batasan Masalah
Untuk Unit Deteksi Tiket Pada sistem ini, penelitian yang dilakukan adalah
pada proses penyimpanan dan pembandingan data :
1. Dengan menggunakan Mikrokontroler AT89S8252 sebagai pengatur
sistem,
2. Menggunakan Visual Basic 6.0 sebagai perangkat lunak sistem,
3. RS 232 sebagai saluran transmisi, serta
4. LED sebagai indikator keluaran.
5. Jumlah tempat duduk dalam bus sebanyak 32 buah.
2
BAB II
DASAR TEORI
Pada penelitian ini akan dibuat suatu alat yang akan membandingkan suatu
data dari PC yang berupa byte-byte data dengan data yang diinterupsikan dari port
mikrokontroler. Semula data yang diperoleh dari PC berupa byte data yang berisi
nomor bus dan nomor kursi terlebih dahulu ditransfer melalui kabel serial RS 232,
kemudian data tersebut disimpan di memori data mikrokontroler. Bila ada
interupsi dari port mikrokontroler (interupsi berupa masukan data dari Barcode
Reader), maka data masukan dari port ini akan dibandingkan dengan data yang
telah tersimpan di memori data. Bila data tersebut sama dengan salah satu data di
memori, maka keluaran bernilai 1 (LED hijau menyala). Sebaliknya bila data
tidak ada yang sama dengan salah satu data pada memori, keluaran akan bernilai 0
(LED merah menyala).
Penelitian ini dikhususkan pada dua topik, yaitu transfer data dari PC ke
memori mikrokontroler dan pembandingan data di memori tersebut terhadap
interupsi port mikrokontroler.
AT89S8252
Memori Data
Data penumpang
Barcode
Reader Pemban-
dingan
YES (LED Hijau)
NO (LED Merah)
Transfer
dan
Gambar 2.1. Blok Diagram Sistem
2. 1. Transfer Data
Dikenal dua cara komunikasi data serial, yaitu secara sinkron dan secara
asinkron. Pada komunikasi secara sinkron, clock dikirimkan bersama-sama
dengan data serial, sedangkan pada komunikasi secara asinkron, clock tidak
dikirimkan bersama data serial namun dibangkitkan sendiri baik pada sisi
pengirim maupun pada sisi penerima. Pada IBM PC kompatibel port serialnya
termasuk jenis asinkron. Komonikasi data serial ini dikerjakan oleh UART
(Universal Asynchronous Receiver/Transmitter). IC UART dibuat khusus untuk
mengubah data paralel menjadi data serial dan menerima data serial yang
kemudian diubah kembali menjadi data paralel.
Pada UART, kecepatan pengiriman data (Baud Rate) dan fase clock pada
sisi transmitter dan pada sisi receiver harus sinkron. Untuk itu diperlukan
sinkronisasi antara transmitter dan receiver. Hal ini dilakukan oleh bit “Start” dan
bit “Stop”.
Bit data 7 6 5 4 3 2 1 0
Start Stop
Gambar 2. 2. Komunikasi asinkron tanpa bit paritas
2. 1. 1. RS 232
Standar sinyal komunikasi serial RS 232 dikembangkan oleh Electronic
Industry Association and the Telecommunications Industry Association (EIA/TIA)
dan dipublikasikan pertama kali tahun 1962. Standar ini hanya menyangkut
komunikasi data antar komputer (Data Terminal Equipment – DTE) dengan alat-
alat pelengkap komputer (Data Circuit – Terminating Equipment – DCE).
Standar sinyal RS232 memiliki ketentuan level tegangan sebagai berikut :
1. Logika “1” terletak antara –3 volt sampai –25 volt
4
2. Logika “0” terletak antara 3 volt sampai 25 volt
3. Daerah tegangan antara –3 volt sampai 3 volt adalah invalid level
(tidak memiliki level logika, sehingga harus dihindari)
4. Daerah tegangan dibawah –25 volt dan di atas 25 volt harus dihindari
untuk mencegah kerusakan alat.
DB - 9
9
8
7
6
5
4
3
2
1 Received Line Signal Detector
Received Data
Transmitted Data
Data Terminal Ready
DCE Ready
Signal Ground Ring Indicator
Clear To Send
Request To Send
Gambar 2. 3. Konektor serial DB-9
Tabel 2.1. Konfigurasi pin dan nama sinyal konektor serial DB-9 Nomor
Pin Nama Sinyal Direction Keterangan
1 DCD In Data Carrier Detect / Received 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 9 RI In Ring Indicator
5
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 data masuk.
2. Received Data, digunakan DTE menerima data dari DCE
3. Transmit Data, digunakan DTE mengirimkan data ke DCE
4. Data Terminal Ready, pada saluran ini DTE memberitahukan kesiapan
terminalnya
5. Signal Ground, saluran ground
6. Ring Indicator, pada saluran ini DCE memberitahu ke DTE bahwa sebuah
stasiun menghendaki hubungan dengannya
7. Clear to Send, dengan saluran ini DCE memberitahukan bahwa DTE boleh
mulai mengirim data
8. Request To Send, dengan saluran ini DCE diminta mengirim data oleh
DTE
9. DCE Ready, sinyal aktif pada saluran ini menunjukkan bahwa DCE sudah
siap
Untuk dapat menggunakan port serial kita perlu mengetahui alamatnya.
Biasanya tersedia dua port serial pada CPU, yaitu COM1 dan COM2. Base
Address COM1 biasanya adalah 1016 (3F8h) dan COM2 biasanya 760 (2F8h).
Alamat tersebut adalah alamat yang biasa digunakan, tergantung dari komputer
yang digunakan. Tepatnya kita bisa melihat pada peta memori tempat menyimpan
alamat tersebut, yaitu memori 0000.0400h untuk base address COM1 dan memori
0000.0402h untuk base address COM2.
2. 2. Mikrokontroler AT89S8252 Mikrokontroler AT89S8252 adalah mikrokontroler CMOS 8-bit yang
berkemampuan tinggi dengan 8K bytes in-sistem programmable Flash Memory.
AT89S8252 ini dibuat dengan teknologi Atmel memori non-volatile. AT89S8252
6
yang dipakai memiliki fitur: 8KB In-Sistem Programmable Flash, 2 KB
EEPROM, 256 Bytes RAM, 32 jalur I/O, tiga 16-bit timers/counters, Watchdog
Timer, 2 data pointer, 6 vektor dua level interupsi, serial port full duplex, osilator
on-chip dan clock circuitry.
2. 2. 1. Organisasi Memori AT89S8252
Memori merupakan rangkaian elektronis yang digunakan untuk
menyimpan informasi secara temporer atau permanen. Memori biasanya
digunakan untuk menyimpan data yang diperoleh dari saluran masukan-keluaran
atau untuk menyimpan program dari sebuah sistem.
Mikrokontroler AT89S8252 memiliki ruang alamat untuk memori program
dan memori data yang terpisah, seperti terlihat pada (Gambar 2.4.) di bawah.
Setiap memori program dan memori data eksternal dapat dialamati hingga
64Kbytes.
Gambar 2. 4. Memori data dan memori program pada mikrokontroler AT89S8252
Pemisahan program dan data memori ini memungkinkan pengaksesan data
memori dengan pengalamatan 8 bit, sehingga dapat langsung disimpan dan
dimanipulasi oleh mikrokontroler dengan kapasitas akses 8 bit. Namun demikian,
7
untuk pengaksesan data memori dengan alamat 16 bit, harus dilakukan dengan
menggunakan register DPTR (Data Pointer). Program memori hanya dapat dibaca
saja (diletakkan pada ROM/ EPROM). Untuk membaca program memori
eksternal, mikrokontroler akan mengirim sinyal PSEN (Program Store Enable).
Sebagai data memori eksternal dapat digunakan RAM eksternal (maksimum 64
Kbyte). Dalam pengaksesannya mikrokontroler akan mengirimkan sinyal RD
(Read, melakukan operasi pembacaan data) dan WR (Write, melakukan operasi
penulisan data). Bila diperlukan, program memori dan eksternal data dapat
dikombinasikan dengan menyatukan sinyal RD dan PSEN ke dalam input gerbang
AND dan menggunakan output dari gerbang tersebut sebagai sinyal read (baca)
untuk program memori / Eksternal Data.
2. 2. 2. Memori Program
Memori program atau sering disebut dengan flash memory pada
mikrokontroler AT89S8252 memiliki kapasitas sebesar 8KB yang hanya bisa
dibaca saja. Bila pin dihubungkan pada ground program memori dapat di akses
secara eksternal, bila pin AE dihubungkan pada VCC program memori 4KB dapat
diakses langsung pada alamat 0000H-FFFH secara internal dan pada alamat
1000H-FFFFH secara eksternal.
2. 2. 3. Memori Data
Memori data menggunakan memori jenis RAM. RAM merupakan memori
yang dapat dibaca dan ditulis. RAM dipakai sebagai penyimpan data pada saat
program bekerja. Isi RAM akan hilang bila catu daya mati (Volatile Memory).
Mikrokontroler AT89S8252 memiliki memori data 256 bytes dan dapat
diakses secara pengalamatan langsung dan pengalamatan tidak langsung.
Pengoperasian stack adalah contoh dari pengalamatan tidak langsung, jadi 128
bytes RAM data tersedia sebagai ruang stack. Peta memori data dapat dilihat pada
(Gambar 2. 5.).
8
Gambar 2. 5. Peta memori dan metode untuk mengakses isinya
Mikrokontroler AT89S8252 memiliki tambahan fitur yang tidak dimiliki
jenis MCS-51. Salah satunya adalah EEPROM yang terpasang pada chip (on-
Chip). EEPROM yang ditanamkan pada MCS825252 memiliki kapasitas sebesar
2 kiloByte yang terletak pada alamat 000h sampai 7FFh. Untuk mengakses
EEPROM on-chip ini dilakukan pengaturan dengan mengeset bit EEMEN pada
register WMCON.
2. 2. 4. Register Fungsi Khusus (Special Function Register)
Peta dari memori on-chip disebut dengan ruang register fungsi khusus
(Special Function Register).
a. Akumulator
ACC atau akumulator yang menempati lokasi E0H digunakan sebagai register
untuk penyimpanan data sementara dan dapat dialamati secara bit addressable.
Gambar2. 6. Akumulator
b. Register B
Register B menempati lokasi F0H digunakan selama operasi perkalian dan
pembagian, untuk intruksi lain dapat diperlakukan sebagai register scratch pad
(papan coret-coret) dan register B juga dapat dialamati secara bit addressable.
9
Gambar 2. 7. Register B
c. Program Status Word (PSW)
Register PSW (lokasi D0H) mengandung informasi status program seperti
terlihat pada (Gambar 2. 8.).
Gambar 2. 8. Program Status Word
Fungsi bit pada PSW sebagai berikut:
CY (carry flag) : bit ini akan diset oleh sejumlah instruksi
matematika seperti ADD, ADDC, SUBB, MUL, DIV dan juga termasuk
instruksi untuk rotasi.
AC (auxillary carry) : bit ini akan diset pada penjumlahan dua
buah bilangan BCD (Binary Code Desimal) yang menghasilkan carry dari bit
ketiga ke bit keempat atau jika nibble bawahnya berada pada range 0AH
sampai 0FH.
F0 (flag 0) : flag untuk fungsi umum.
RS0, RS1 (register bank select) : dua bit RS1 Dan RS0 digunakan untuk
memilih bank register yang penggunaannya ditunjukkan pada tabel berikut:
Tabel 2. 2. Register Bank Select
OV (overflow flag) : bit ini akan diset oleh sejumlah intruksi
aritmetika, tetapi biasanya instruksi yang sering membuat bit ini menjadi 1
adalah instruksi ADD dan SUBB.
10
P (parity flag) : bit ini akan diset menjadi satu jika bit-bit 1
pada akumulator berjumlah ganjil. Sebagai contoh jika isi akumulator adalah
15H (00010101) maka bit P akan diset menjadi 1 karena jumlah bit satu pada
akumulator adalah 3 buah.
d. Stack Pointer
Register Stack Pointer (lokasi 81H) merupakan register dengan panjang
8-bit, digunakan dalam proses simpan dan ambil dari/ ke stack. Dan operasi
yang sering melibatkan stack pointer adalah PUSH, POP, LCALL, ACALL,
RET, dan RETI.
e. Data Pointer
Register Data Pointer terdiri dari DPTR untuk byte tinggi (DPH) dan
byte rendah (DPL). Pada AT89S8252 memiliki 2 buah DPTR untuk
memudahkan pengaksesan baik internal maupun eksternal, yaitu DP0 di lokasi
82H-83H dan DP1 di lokasi 84H-85H. Untuk menggunakannya harus
menginisialisasi bit DPS pada register AUXR1 (lokasi A2H). Bila DPS = 0,
maka memilih register DPTR DP0L-DP0H dan bila DPS = 1, maka memilih
register DPTR DP1L-DP1H. Register AUXR1 dapat dilihat pada (Gambar 2.
9.).
Gambar 2. 9. Register AUXR1
f. Kontrol Register
Register-register IP, IE, TMOD, dan TCON berisi bit-bit kontrol dan status
untuk sistem interupsi, pencacah/ pewaktu dan serial port .
11
g. Port masukan/keluaran (I/O port)
Sama seperti keluarga MCS-51 lainnya mikrokontroler AT89S8252
memiliki 4 port masukan/keluaran (I/O port) yang diberi nama port 0, port 1,
port 2 dan port 3. Setiap port selain sebagai jalur masuk atau keluar data, juga
memiliki karakteristik masing-masing.
Port 0 merupakan port keluaran/masukan (I/O) bertipe open drain
bidirectional. Port 0 juga dapat dikonfigurasikan sebagai bus alamat data
bagian rendah selama proses pengaksesan memori data dan program eksternal.
Port ini berada di alamat 80H pada SFR.
Port 1 merupakan port I/O dwiarah yang dilengkapi dengan pull-up
internal. Jika ‘1’ dituliskan ke kaki-kaki port 1, masing-masing kaki akan di
pull high dengan pull up internal sehingga dapat digunakan sebagai masukan.
Port 1 berada di alamat 90H juga menerima alamat bagian rendah (low bit)
selama pemrograman dan verifikasi flash.
Port 2 berada di alamat A0H dan memiliki karakteristik yang mirip
dengan port 1. Port 2 akan memberikan byte alamat bagian tinggi selama
pengambilan instruksi dari memori program eksternal dan selama pengaksesan
memori data eksternal yang menggunakan perintah dengan alamat 16-bit
(misalnya: MOVX @DPTR). Port ini juga menerima alamat begian tinggi
selama pemrograman dan verifikasi flash.
Port 3 terletak di alamat B0H. Selain berfungsi untuk menerima
sinyal-sinyal kontrol untuk pemrograman dan verifikasi flash, dapat juga
digunakan untuk fungsi-fungsi yang lain seperti terlihat pada tabel berikut :
12
Tabel 2. 3. fungsi alternatif Port 3
Pin Port Fungsi Alternatif P3.0 RXD (masukan port serial) P3.1 TXD (keluaran port serial) P3.2 0INT (interupsi 0 eksternal) P3.3 1INT (interupsi 1 eksternal) P3.4 T0 (input eksternal timer 0) P3.5 T1 (input eksternal timer 1) P3.6 WR (memori data eksternal jalur tulis)P3.7 RD (memori data eksternal jalur baca)
h. Timer / Counter
Mikrokontroler AT89S8252 mempunyai tiga buah register
timer/counter 16 bit , Timer 0,Timer 1 serta Timer 2. Pada saat sebagai Timer,
register naik satu (increment) setiap satu cycle. Jika digunakan osilator 12
Mhz, maka satu cycle sama dengan 1/12 frekuensi osilator = 1µs. Pada saat
sebagai counter, register naik satu (increment) pada saat transisi 1 ke 0 dari
input eksternal , T0 atau T1.
Apabila periode tertentu telah dilampaui, timer/counter segera
menginterupsi mikrokontroler untuk memberitahukan bahwa perhitungan
periode waktu telah selesai dilaksanakan. Periode waktu timer/counter secara
umum ditentukan oleh persamaan berikut:
* Sebagai T/C 8 bit
( ) sTLxT μ1*255−= dimana TLx adalah isi register TL0 atau TL1.
* Sebagai T/C 16 bit
( ) sTHxTLxT μ1*65535−=
THx = isi register TH0 atau TH1, TLx = isi register TL0 atau TL1
13
Register TCON
Pengontrol kerja timer/counter ada pada register timer control
(TCON). Adapun definisi dari bit-bit pada timer control adalah sebagai
berikut:
Gambar 2. 10 Register TCON
TF1 (Timer 1 Overflow)
Bit ini akan otomatis diset menjadi 1 jika timer 1 telah terjadi
overflow, dan akan dinolkan pada saat menjalankan rutin interupsi.
TR1 (Timer 1 Run control bit)
Bit ini digunakan untuk megaktifkan atau menonaktifkan kerja dari
timer/counter.
TF0 (Timer 0 overflow)
Bit ini akan otomatis diset menjadi 1 jika timer 0 telah terjadi
overflow, dan akan dinolkan pada saat menjalankan rutin interupsi.
IE1 (Interrupt 1 Edge flag)
Di set oleh hardware ketika interupsi eksternal mendeteksi adanya
edge. Di clear ketika proses interupsi.
IT1 (Interrupt 1 Type control bit)
Di set / clear oleh software untuk menentukan pen-triger-an
interrupsi eksternal pada transisi turun / low level.
IE0 (Interrupt 0 Edge flag)
Di set oleh hardware ketika interupsi eksternal mendeteksi adanya
edge. Di clear ketika ada interupsi.
IR0 (Interrupt 0 Type control bit)
Di set/clear oleh perangkat lunak untuk menentukan pen-triger-an
interrupsi eksternal pada transisi turun / low level
Register TMOD
14
Pengontrol pemilihan mode operasi timer/counter ada pada register
timer mode (TMOD) . Definisi bit-bitnya adalah sebagai berikut:
Gambar 2. 11. Register TMOD
Tabel 2. 4a Fungsi-fungsi Register TMOD
Simbol Fungsi
GATE Gate control set. Timer/counter ‘x’ akan aktif jika pin “INT” high dan kondisi pin “TRx” sedang set. Gate control clear. Timer”x” akan aktif jika “TRx” set
C / T Selector timer/counter. Clear untuk mode timer ( input dari internal clock ) dan set untuk mode counter (input dari pin “Tx” )
M1 Bit untuk memilih mode timer/counter
M0 Bit untuk memilih mode timer/counter
Tabel 2. 4b Kombinasi M0 dan M1 M1 M0 Mode Operasi
0 0 0 Timer 13 bit
0 1 1 Timer/counter 16 bit
1 0 2 Timer/counter pengisian otomatis (auto reload) 8 bit
1 1 3 (Timer 0)
TL0 adalah T/C 8 bit yang dikontrol oleh kontrol bit standar timer 0. TH0 adalah timer 8 bit dan dikontrol oleh kontrol bit timer 1
15
Mode Timer/Counter
Mode 0
Pada mode ini timer bekerja sebagai timer 13 bit yang terdiri
dari counter 8-bit dengan pembagi 32 (pembagi 5 bit). Setelah
perhitungan selesai, mikrokontroler akan mengeset Timer Interrupt
Flag (TF1). Dengan membuat GATE = 1, timer dapat dikontrol oleh
input dari luar (INT1), untuk fasilitas pengukuran lebar pulsa. Register
13 bit yang digunakan terdiri dari 8 bit dari TH1 dan 5 bit bawah dari
TL1 ( bit 6,7,8 tidak digunakan ). Mengeset TR1 tidak akan
menghapus isi register. Operasi pada mode 0 untuk Timer 0 dan Timer
1 adalah sama.
Mode 1
Mode 1 sama dengan mode 0 kecuali register timer akan
bekerja dalam mode 16 bit.
Mode 2
Mode 2 menyusun register timer sebagai 8 bit counter (TL1)
dengan kemampuan pengisian otomatis. Overflow dari TL1 tidak
hanya men-set TF1 tetapi juga mengisi TL1 dengan isi TH1 yang diisi
sebelumnya oleh software. Pengisian ulang ini tidak mengubah nilai
TH1.
Mode 3
Dalam operasi mode 3 timer 1 akan berhenti, hitungan yang
sedang berjalan dipegang. Efeknya sama seperti mengatur TR1 = 0.
Timer 0 dalam mode 3 membuat TL0 dan TH0 sebagai dua counter
terpisah. TL0 menggunakan kontrol bit timer 0 yaitu C/T, GATE, TR0,
INT0 dan TF0.. TH0 berfungsi hanya sebagai timer dan mengambil
alih penggunaan TR1 dan TF1 dari timer 1 dan sekarang TH0
mengontrol interupsi timer 1. Mode 3 diperlukan untuk aplikasi yang
membutuhkan ekstra timer/counter 8 bit. Dengan timer 0 dalam mode
3, mikrokontroler AT89S51 seperti memiliki 3 timer/counter. Saat
16
timer 0 dalam mode 3, timer 1 dapat dihidupkan atau dimatikan, atau
dapat digunakan oleh port serial sebagai pembangkit baud rate dalam
aplikasi komunikasi serial.
i. Register WMCON
Nilai SFR ini saat reset adalah 0000 0000b. Adapun bit-btnya adalah sebagai
berikut :
PS2 PS1 PS0 EEMWE EEMEN DPS WDTTRST WDTEN
Keterangan :
a. PS2, PS1, PS0 adalah bit prescaler untuk wacthdog timer.
b. EEMWE adalah pengaktif penulisan EEPROM data memori, harus diset
sebelum penulisan dan bit tersebut harus direset setelah penulisan.
c. EEMEN adalah bit pengaktif pengaksesan data internal EEPROM, harus
bernilai 1 saat akan mengakses internal EEPROM dan bernilai 0 saat
mengakses memori eksternal.
d. DPS adalah Data Pointer Select
e. WDTRST adalahWacthdog Timer Reset dan bendera EEPROM Ready /
busy
f. WDTEN adalah bit pengaktif Wacthdog Timer.
2. 2. 5. Mode Pengalamatan dan Instruksi Mikrokontroler
Untuk mengakes data di dalam memori mikrokontroler dapat dilakukan
dengan beberapa mode, yaitu:
1. Direct Addressing Mode (Mode Pengalamatan Langsung)
Pada direct addressing instruksi yang dikeluarkan secara spesifik
akan menyebutkan alamat dari operan yang diproses. Hanya internal Data
RAM dan SFR yang dapat diproses dengan menggunakan direct
addressing ini. Contoh: MOV A,55h.
2. Indirect Addressing Mode (Mode Pengalamatan Tak langsung)
Pada indirect addressing instruksi yang dikeluarkan akan
menyebutkan sebuah register yang berisi alamat dari operan yang akan
17
diproses. Baik internal maupun eksternal RAM dapat diakses
menggunakan indirect addressing ini. Register alamat untuk 8 bit yang
dapat dipakai adalah R0 dan R1 dari bank register, atau Stack Pointer.
Pada pengalamatan 16 bit dapat menggunakan register DPTR (Data
The MAX232 is a dual driver/receiver that includes a capacitive voltage generator to supply EIA-232 voltagelevels from a single 5-V supply. Each receiver converts EIA-232 inputs to 5-V TTL/CMOS levels. Thesereceivers have a typical threshold of 1.3 V and a typical hysteresis of 0.5 V, and can accept ±30-V inputs. Eachdriver converts TTL/CMOS input levels into EIA-232 levels. The driver, receiver, and voltage-generatorfunctions are available as cells in the Texas Instruments LinASIC library.
ORDERING INFORMATION
TA PACKAGE† ORDERABLEPART NUMBER
TOP-SIDEMARKING
PDIP (N) Tube MAX232N MAX232N
SOIC (D)Tube MAX232D
MAX232
0°C to 70°C
SOIC (D)Tape and reel MAX232DR
MAX232
0°C to 70°C
SOIC (DW)Tube MAX232DW
MAX232SOIC (DW)Tape and reel MAX232DWR
MAX232
SOP (NS) Tape and reel MAX232NSR MAX232
PDIP (N) Tube MAX232IN MAX232IN
SOIC (D)Tube MAX232ID
MAX232I–40°C to 85°C
SOIC (D)Tape and reel MAX232IDR
MAX232I
SOIC (DW)Tube MAX232IDW
MAX232ISOIC (DW)Tape and reel MAX232IDWR
MAX232I
† Package drawings, standard packing quantities, thermal data, symbolization, and PCB designguidelines are available at www.ti.com/sc/package.
Copyright 2002, Texas Instruments IncorporatedPRODUCTION DATA information is current as of publication date.Products conform to specifications per the terms of Texas Instrumentsstandard warranty. Production processing does not necessarily includetesting of all parameters.
Please be aware that an important notice concerning availability, standard warranty, and use in critical applications ofTexas Instruments semiconductor products and disclaimers thereto appears at the end of this data sheet.
LinASIC is a trademark of Texas Instruments.
1
2
3
4
5
6
7
8
16
15
14
13
12
11
10
9
C1+VS+C1–C2+C2–VS–
T2OUTR2IN
VCCGNDT1OUTR1INR1OUTT1INT2INR2OUT
MAX232 . . . D, DW, N, OR NS PACKAGEMAX232I . . . D, DW, OR N PACKAGE
(TOP VIEW)
MAX232, MAX232IDUAL EIA-232 DRIVERS/RECEIVERS
SLLS047I – FEBRUARY 1989 – REVISED OCTOBER 2002
2 POST OFFICE BOX 655303 • DALLAS, TEXAS 75265
Function Tables
EACH DRIVER
INPUTTIN
OUTPUTTOUT
L H
H L
H = high level, L = lowlevel
EACH RECEIVER
INPUTRIN
OUTPUTROUT
L H
H L
H = high level, L = lowlevel
logic diagram (positive logic)
T1IN T1OUT
R1INR1OUT
T2IN T2OUT
R2INR2OUT
11
10
12
9
14
7
13
8
MAX232, MAX232IDUAL EIA-232 DRIVERS/RECEIVERS
SLLS047I – FEBRUARY 1989 – REVISED OCTOBER 2002
3POST OFFICE BOX 655303 • DALLAS, TEXAS 75265
absolute maximum ratings over operating free-air temperature range (unless otherwise noted)†
† Stresses beyond those listed under “absolute maximum ratings” may cause permanent damage to the device. These are stress ratings only, andfunctional operation of the device at these or any other conditions beyond those indicated under “recommended operating conditions” is notimplied. Exposure to absolute-maximum-rated conditions for extended periods may affect device reliability.
NOTE 1: All voltage values are with respect to network ground terminal.2. The package thermal impedance is calculated in accordance with JESD 51-7.
recommended operating conditionsMIN NOM MAX UNIT
VCC Supply voltage 4.5 5 5.5 V
VIH High-level input voltage (T1IN,T2IN) 2 V
VIL Low-level input voltage (T1IN, T2IN) 0.8 V
R1IN, R2IN Receiver input voltage ±30 V
TA Operating free air temperatureMAX232 0 70
°CTA Operating free-air temperatureMAX232I –40 85
°C
electrical characteristics over recommended ranges of supply voltage and operating free-airtemperature (unless otherwise noted) (see Note 3 and Figure 4)
PARAMETER TEST CONDITIONS MIN TYP‡ MAX UNIT
ICC Supply currentVCC = 5.5 V,TA = 25°C
All outputs open,8 10 mA
‡ All typical values are at VCC = 5 V and TA = 25°C.NOTE 3: Test conditions are C1–C4 = 1 µF at VCC = 5 V ± 0.5 V.
MAX232, MAX232IDUAL EIA-232 DRIVERS/RECEIVERS
SLLS047I – FEBRUARY 1989 – REVISED OCTOBER 2002
4 POST OFFICE BOX 655303 • DALLAS, TEXAS 75265
DRIVER SECTION
electrical characteristics over recommended ranges of supply voltage and operating free-airtemperature range (see Note 3)
PARAMETER TEST CONDITIONS MIN TYP† MAX UNIT
VOH High-level output voltage T1OUT, T2OUT RL = 3 kΩ to GND 5 7 V
VOL Low-level output voltage‡ T1OUT, T2OUT RL = 3 kΩ to GND –7 –5 V
ro Output resistance T1OUT, T2OUT VS+ = VS– = 0, VO = ±2 V 300 Ω
IOS§ Short-circuit output current T1OUT, T2OUT VCC = 5.5 V, VO = 0 ±10 mA
IIS Short-circuit input current T1IN, T2IN VI = 0 200 µA
† All typical values are at VCC = 5 V, TA = 25°C.‡ The algebraic convention, in which the least positive (most negative) value is designated minimum, is used in this data sheet for logic voltage
levels only.§ Not more than one output should be shorted at a time.NOTE 3: Test conditions are C1–C4 = 1 µF at VCC = 5 V ± 0.5 V.
switching characteristics, VCC = 5 V, TA = 25°C (see Note 3)
PARAMETER TEST CONDITIONS MIN TYP MAX UNIT
SR Driver slew rateRL = 3 kΩ to 7 kΩ,See Figure 2
30 V/µs
SR(t) Driver transition region slew rate See Figure 3 3 V/µs
Data rate One TOUT switching 120 kbit/s
NOTE 3: Test conditions are C1–C4 = 1 µF at VCC = 5 V ± 0.5 V.
RECEIVER SECTION
electrical characteristics over recommended ranges of supply voltage and operating free-airtemperature range (see Note 3)
PARAMETER TEST CONDITIONS MIN TYP† MAX UNIT
VOH High-level output voltage R1OUT, R2OUT IOH = –1 mA 3.5 V
VOL Low-level output voltage‡ R1OUT, R2OUT IOL = 3.2 mA 0.4 V
VIT+Receiver positive-going inputthreshold voltage
R1IN, R2IN VCC = 5 V, TA = 25°C 1.7 2.4 V
VIT–Receiver negative-going inputthreshold voltage
R1IN, R2IN VCC = 5 V, TA = 25°C 0.8 1.2 V
Vhys Input hysteresis voltage R1IN, R2IN VCC = 5 V 0.2 0.5 1 V
ri Receiver input resistance R1IN, R2IN VCC = 5, TA = 25°C 3 5 7 kΩ† All typical values are at VCC = 5 V, TA = 25°C.‡ The algebraic convention, in which the least positive (most negative) value is designated minimum, is used in this data sheet for logic voltage
levels only.NOTE 3: Test conditions are C1–C4 = 1 µF at VCC = 5 V ± 0.5 V.
switching characteristics, VCC = 5 V, TA = 25°C (see Note 3 and Figure 1)
PARAMETER TYP UNIT
tPLH(R) Receiver propagation delay time, low- to high-level output 500 ns
tPHL(R) Receiver propagation delay time, high- to low-level output 500 ns
NOTE 3: Test conditions are C1–C4 = 1 µF at VCC = 5 V ± 0.5 V.
MAX232, MAX232IDUAL EIA-232 DRIVERS/RECEIVERS
SLLS047I – FEBRUARY 1989 – REVISED OCTOBER 2002
5POST OFFICE BOX 655303 • DALLAS, TEXAS 75265
PARAMETER MEASUREMENT INFORMATION
≤10 ns
VCC
R1INor
R2IN
R1OUTor
R2OUT
RL = 1.3 kΩ
See Note C
CL = 50 pF(see Note B)
TEST CIRCUIT
≤10 ns
Input
Output
tPHLtPLH
1.5 VVOL
VOH
0 V
3 V
10%90%
50%
500 ns
WAVEFORMS
1.5 V
90%50% 10%
NOTES: A. The pulse generator has the following characteristics: ZO = 50 Ω, duty cycle ≤ 50%.B. CL includes probe and jig capacitance.C. All diodes are 1N3064 or equivalent.
PulseGenerator
(see Note A)
Figure 1. Receiver Test Circuit and Waveforms for tPHL and tPLH Measurements
MAX232, MAX232IDUAL EIA-232 DRIVERS/RECEIVERS
SLLS047I – FEBRUARY 1989 – REVISED OCTOBER 2002
6 POST OFFICE BOX 655303 • DALLAS, TEXAS 75265
PARAMETER MEASUREMENT INFORMATION
T1IN or T2IN T1OUT or T2OUT
CL = 10 pF(see Note B)
TEST CIRCUIT
≤10 ns≤10 ns
Input
Output
tPHLtPLH
VOL
VOH
0 V
3 V
10%
90%50%
5 µs
WAVEFORMS
90%50%
10%
RL
90%
10%
90%
10%
tTLHtTHL
SR 0.8 (VOH – VOL)
tTLHor
0.8 (VOL – VOH)
tTHL
NOTES: A. The pulse generator has the following characteristics: ZO = 50 Ω, duty cycle ≤ 50%.B. CL includes probe and jig capacitance.
PulseGenerator
(see Note A)EIA-232 Output
Figure 2. Driver Test Circuit and Waveforms for tPHL and tPLH Measurements (5-µs Input)
EIA-232 Output
–3 V
3 V
–3 V
3 V
3 kΩ
10%1.5 V90%
WAVEFORMS
20 µs
1.5 V90%
10%
VOH
VOL
tTLHtTHL
≤10 ns ≤10 ns
TEST CIRCUIT
CL = 2.5 nF
PulseGenerator
(see Note A)
Input
Output
SR 6 VtTHL or tTLH
NOTE A: The pulse generator has the following characteristics: ZO = 50 Ω, duty cycle ≤ 50%.
Figure 3. Test Circuit and Waveforms for tTHL and tTLH Measurements (20-µs Input)
MAX232, MAX232IDUAL EIA-232 DRIVERS/RECEIVERS
SLLS047I – FEBRUARY 1989 – REVISED OCTOBER 2002
7POST OFFICE BOX 655303 • DALLAS, TEXAS 75265
APPLICATION INFORMATION
VS+
VS–
2
6
14
7
13
8
C1+
C1–
C2+
C2–
1
3
4
5
11
10
12
9
GND15
0 V
VCC
16
5 V
EIA-232 Output
EIA-232 Output
EIA-232 Input
EIA-232 Input
+1 µF
8.5 V
–8.5 V
1 µF
1 µF
1 µF
From CMOS or TTL
To CMOS or TTL
CBYPASS = 1 µF+
–
C1
C2
C3†
C4
† C3 can be connected to VCC or GND.
Figure 4. Typical Operating Circuit
IMPORTANT NOTICE
Texas Instruments Incorporated and its subsidiaries (TI) reserve the right to make corrections, modifications,enhancements, improvements, and other changes to its products and services at any time and to discontinueany product or service without notice. Customers should obtain the latest relevant information before placingorders and should verify that such information is current and complete. All products are sold subject to TI’s termsand conditions of sale supplied at the time of order acknowledgment.
TI warrants performance of its hardware products to the specifications applicable at the time of sale inaccordance with TI’s standard warranty. Testing and other quality control techniques are used to the extent TIdeems necessary to support this warranty. Except where mandated by government requirements, testing of allparameters of each product is not necessarily performed.
TI assumes no liability for applications assistance or customer product design. Customers are responsible fortheir products and applications using TI components. To minimize the risks associated with customer productsand applications, customers should provide adequate design and operating safeguards.
TI does not warrant or represent that any license, either express or implied, is granted under any TI patent right,copyright, mask work right, or other TI intellectual property right relating to any combination, machine, or processin which TI products or services are used. Information published by TI regarding third–party products or servicesdoes not constitute a license from TI to use such products or services or a warranty or endorsement thereof.Use of such information may require a license from a third party under the patents or other intellectual propertyof the third party, or a license from TI under the patents or other intellectual property of TI.
Reproduction of information in TI data books or data sheets is permissible only if reproduction is withoutalteration and is accompanied by all associated warranties, conditions, limitations, and notices. Reproductionof this information with alteration is an unfair and deceptive business practice. TI is not responsible or liable forsuch altered documentation.
Resale of TI products or services with statements different from or beyond the parameters stated by TI for thatproduct or service voids all express and any implied warranties for the associated TI product or service andis an unfair and deceptive business practice. TI is not responsible or liable for any such statements.