Penggunaan Layanan SMS Berbasis Mikrokontroler Untuk Deteksi Kebocoran Saluran Air dan Monitor Ketinggian Air.
ABSTRAK
Kantor atau pabrik yang sudah makan usia terkadang dapat menimbulkan
gangguan. Contoh paling nyata adalah pada pipa-pipa saluran air di suatu pabrik
mudah menyebabkan kebocoran. Masalah tersebut dapat menjadi besar ketika
kebocoran tersebut tidak terdeteksi, sehingga diperlukan alat yang dapat mendeteksi
dan memberikan peringatan jika terjadi kebocoran pada pipa-pipa saluran air.
Pada tugas akhir ini, direalisasikan suatu cara untuk mendeteksi kebocoran
pada pipa distribusi dan monitor ketinggian air. Pendeteksian dilakukan oleh
rangkaian komparator, yang akan mengirimkan sinyal pada mikrokontroler jika
terjadi kebocoran. SMS pemberitahuan akan dikirim ke telepon selular operator
melalui telepon selular yang terhubung dengan mikrokontroler. Sistem juga dapat
menerima perintah-perintah untuk mengaktifkan pompa dan selenoid valve.
Kebocoran mulai terdeteksi sampai dengan laporan kebocoran diterima
membutuhkan
waktu
rata-rata
16
detik,
dengan
menggunakan
operator
telekomunikasi yang berbeda. Mikrokontroler membutuhkan waktu rata-rata 6,03
detik untuk melaksanakan perintah yang diberikan dimulai dari SMS dikirim sampai
dengan perintah dijalankan, dengan menggunakan operator telekomunikasi yang
sama.
i
DAFTAR ISI
ABSTRAK ……………………………………………………………….. i
KATA PENGANTAR …………………………………………………… ii
DAFTAR ISI ……………………………………………………………... iv
DAFTAR GAMBAR .................................................................................. vii
DAFTAR TABEL ....................................................................................... viii
BAB I
PENDAHULUAN ……………………………………………... 1
1.1
Latar Belakang ……………………………………............ 1
1.2 Identifikasi Masalah ………………………………............ 2
1.3 Tujuan ……………………………………………............. 2
1.4 Pembatasan Masalah ……………………………............... 2
1.5 Spesifikasi Alat …………………………………............... 3
1.6
Sistematika Laporan ………………………………............ 3
BAB II LANDASAN TEORI ................................................................... 4
2.1 AT Command ...................................................................... 4
2.2
PDU Sebagai Bahasa SMS ................................................. 6
2.2.1
Pengkodean 7 Bit .................................................... 6
2.2.2
Format Pengiriman dan Penerimaan Pesan
SMS ......................................................................... 8
iv
2.3
Mikrokontroler Atmel AT89S8252 ................................. 11
2.4
Pembanding (Komparator) ............................................... 13
BAB III PERANCANGAN DAN REALISASI SISTEM ...................... 15
3.1 Perancangan dan Realisasi Perangkat Keras ................... 16
3.1.1
Rangkaian Sumber Tegangan .............................. 16
3.1.2 Rangkaian Mikrokontroler ................................... 17
3.1.3
Rangkaian Antarmuka Serial pada
Mikrokontroler ..................................................... 18
3.1.4
Rangkaian Sensor Deteksi Ketinggian ................. 19
3.2 Perancangan dan Realisasi Perangkat Lunak .................. 20
BAB IV UJI COBA DAN DATA PENGAMATAN .............................. 24
BAB V
4.1
Pengujian Perangkat Lunak ............................................. 24
4.2
Pengujian Perangkat Keras .............................................. 26
4.2.1
Pengujian Respon Mikrokontroler ....................... 26
4.2.2
Pengujian Respon Sistem ..................................... 35
KESIMPULAN DAN SARAN ................................................ 41
5.1
Kesimpulan ...................................................................... 41
5.2
Saran ................................................................................ 42
v
LAMPIRAN:
A. Tampilan Perangkat Keras ..................................... A-1
B. Source Perangkat Lunak ......................................... B-1
C. Skema Rangkaian ..................................................
C-1
D. Data Komponen ...................................................... D-1
vi
DAFTAR GAMBAR
2.1
Tata letak kaki-kaki AT89S8252 .................................................... 12
2.2
Rangkaian komparator .................................................................... 14
2.2
Karakteristik sinyal keluaran kompartor ......................................... 14
3.1
Diagram blok sistem ......................................................................
3.2
Rangkaian sumber tegangan ........................................................... 17
3.3
Rangkaian mikrokontroler .............................................................. 18
3.4
Rangkaian antarmuka serial pada mikrokontroler .......................... 19
3.5
Rangkaian sensor deteksi ketinggian .............................................. 19
3.6
Diagram alir perangkat lunak .......................................................... 20
3.7
Diagram alir pemeriksaan isi SMS dan eksekusinya ...................... 21
3.8
Diagram alir pemeriksaan kebocoran ............................................. 22
vii
15
DAFTAR TABEL
4.1
Format PDU dari pesan yang dikirim ............................................. 25
4.2
Format PDU dari pesan yang diterima ............................................ 26
4.3
Respon menyalakan pompa 1 ......................................................... 27
4.4
Respon mematikan pompa 1 ........................................................... 28
4.5
Respon menutup SV ....................................................................... 29
4.6
Respon membuka SV ...................................................................... 30
4.7
Respon menyalakan pompa 2 ......................................................... 31
4.8
Respon mematikan pompa 2 ........................................................... 32
4.9
Respon kebocoran ........................................................................... 33
4.10 Pengujian respon deteksi kebocoran ............................................... 34
4.11 Hasil ujicoba pengisian dari kosong sampai sensor 1 ..................... 35
4.12 Hasil ujicoba pengisian dari sensor 1 sampai sensor 1 ................... 36
4.13 Hasil ujicoba pengisian dari sensor 1 sampai sensor 3 ................... 36
4.14 Hasil ujicoba pengisian dari sensor 1 sampai sensor 4 ................... 37
4.15 Hasil uji pengosongan dari sensor 4 ............................................... 38
4.16 Hasil uji pengosongan dari sensor 3 ............................................... 38
4.17 Hasil uji pengosongan dari sensor 2 ............................................... 39
4.18 Hasil uji keberhasilan. ……………………………………………. 40
viii
Pendahuluan
BAB I
PENDAHULUAN
Short Massage Service (SMS) atau dikenal pula sebagai pesan singkat
merupakan salah satu fasilitas pada telepon selular. Kegunaan SMS tersebut dapat
dikembangkan sebagai sistem informasi dengan pengiriman data yang relatif cepat
dan jangkauan yang luas.
1.1
Latar Belakang
Kondisi fisik suatu kantor atau pabrik yang sudah cukup dimakan usia
terkadang dapat menimbulkan gangguan pada kinerja kantor tersebut atau proses
produksi di suatu pabrik. Contoh paling nyata adalah pada pipa-pipa saluran air di
suatu pabrik yang sudah dimakan usia mudah terjadi kebocoran. Masalah tersebut
dapat menjadi besar ketika kebocoran tersebut tidak terdeteksi, misalnya
kebocoran tersebut terjadi pada akhir minggu saat para karyawan sedang libur.
Sehingga saat karyawan masuk bekerja kembali pada awal minggu, pabrik sudah
dalam keadaan tergenang air.
Untuk itu diperlukan suatu cara untuk mendeteksi kebocoran tersebut.
Cara yang relatif sederhana adalah dengan melakukan inspeksi pada setiap pipapipa saluran air, tetapi cara tersebut tidak efektif dan akan memakan waktu
terutama jika pipa-pipa saluran air cukup banyak dan panjang. Cara lain yang
dapat dilakukan adalah dengan membuat suatu alat yang dapat mendeteksi dan
memberikan peringatan jika terjadi kebocoran pada pipa-pipa saluran air, alat
pendeteksi tersebut tetap bekerja dan dapat memberikan peringatan walaupun
karyawan sedang libur.
1
Pendahuluan
1.2
Identifikasi Masalah
Untuk
mengendalikan
mikrokontroler
dari
jarak
jauh
dengan
menggunakan layanan SMS terdapat masalah-masalah antara lain:
•
Dapatkah sistem mendeteksi dan memberikan laporan secara otomatis
ketika terjadi kebocoran pada pipa distribusi?
•
Apakah format layanan SMS dapat dimengerti oleh mikrokontroler?
•
Dapatkah mikrokontroler secara otomatis mengirimkan laporan melalui
SMS bila ketinggian air telah tercapai?
1.3
Tujuan
Tugas akhir ini bertujuan membuat suatu alat yang dapat mendeteksi
kebocoran pada pipa distribusi dan memonitor ketinggian air pada tangki
penampung. Laporan dengan fasilitas SMS diberikan melalui mikrokontroler.
1.4
Pembatasan Masalah
Dalam melaksanakan tugas akhir, ini masalah yang ada dibatasi menjadi
beberapa kriteria, yaitu:
•
Sistem distribusi air dibuat dalam bentuk miniatur.
•
Sensor deteksi ketinggian dibuat dengan menggunakan rangkaian
komparator.
•
Standar instruksi komunikasi antara telepon selular dan mikrokontroler
yang digunakan adalah standar AT-Command.
2
Pendahuluan
1.5
Spesifikasi Alat
Dalam pembuatan tugas akhir ini, alat-alat yang dipergunakan memiliki
spesifikasi sebagai berikut:
•
Mikrokontroler yang digunakan adalah buatan Atmel tipe AT89S8252.
•
Menggunakan satu buah telepon selular merk Siemens tipe C35.
•
Sensor deteksi ketinggian yang digunakan berupa rangkaian komparator.
•
Satu buah pompa aquarium buatan Resun tipe SP-3800 dengan kapasitas
2000 liter/jam.
•
Satu buah solenoid valve buatan SMC model VX2120.
•
Satu buah tangki dengan kapasitas 20 liter.
1.6
Sistematika Laporan
Penulisan tugas akhir ini bertujuan agar segala aktivitas yang dilakukan
dapat tersusun dalam bentuk laporan secara jelas, ringkas dan mudah dimengerti.
Sistematika penulisan laporan adalah sebagai berikut:
I. Bab I PENDAHULUAN
Bab ini membahas latar belakang, identifikasi masalah, tujuan, pembatasan
masalah, dan sistematika laporan pada tugas akhir ini.
II. Bab II TEORI PENUNJANG
Bab ini menjelaskan mengenai teori-teori dasar dari buku literatur yang
berhubungan dengan melaksanakan tugas akhir ini.
III. Bab III PERANCANGAN DAN REALISASI ALAT
Bab ini berisikan penjelasan cara-cara perancangan dan realisasi tugas
akhir ini.
IV. Bab IV UJI COBA DAN DATA PENGAMATAN
Bab ini berisikan data-data hasil pengujian dan pengamatan dari tugas
akhir.
V. Bab V KESIMPULAN DAN SARAN
Bab ini memaparkan kesimpulan yang didapat dari tugas akhir ini beserta
saran-saran untuk perbaikan dan pengembangan.
3
LAMPIRAN A
Tampilan Perangkat Keras
Gambar A.1 Foto Sistem secara keseluruhan
Gambar A.2 Foto Rangkaian
A-1
LAMPIRAN B
Source Perangkat Lunak
Lampiran B
;*******************************************************************
;Tugas Akhir : Penggunaan Layanan SMS Berbasis Mikrokontroler Untuk
;Deteksi Kebocoran Saluran Air Dan Monitor Ketinggian Air
;*******************************************************************
;P1.0
;P1.1
;P1.2
;P1.3
PORT
PORT
PORT
PORT
PENUNJUK HUB DGN HP
UTK POMPA1
UTK SV DI BLKNG POMPA2 UTK KEADAAN BOCOR
UTK SV DI DPN POMPA 2 UTK KONTROL ALIRAN
LJMP
NOP
RETI
START1
ORG
RETI
0BH
ORG
RETI
13H
ORG
RETI
1BH
ORG
RETI
23H
COMP:
LIST:
READ:
DELETE:
SEND:
SMSC:
SMSC_SENDER:
NO_SENDER:
DIKRM:
LAPORAN:
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
'A','T','+','C','P','M','S','?',0DH
'A','T','+','C','M','G','L','=','4',0DH
'A','T','+','C','M','G','R','='
'A','T','+','C','M','G','D','='
'A','T','+','C','M','G','S','='
'0','7','9','1','2','6','5','8','0','5','0','0'
'0','0','F','0'
'0','5','9','1','2','6','1','8','1','6','4','2'
'0','C','9','1','2','6','1','8','7','5','0','0'
'6','5','6','4'
'1','B','C','B','3','2','3','D','E','D','3','E'
'9','F','D','3','6','1','3','7'
'2','8','9','C','9','6','8','3','E','6','6','4'
'3','4','8','8','5','E','9','6'
'8','F','C','3','F','0','7','0','1','A'
'2','1','D','4','B','2','5','C','1','D','2','6'
'A','7','4','1','E','B','B','2'
'F','8','3','D','7','E','C','B','C','3','6','E'
'1','6','B','D','E','E','3','E'
'9','F','E','B','2','0','7','8','5','9','9','E'
'7','6','D','3','C','3','6','8'
B-1
Lampiran B
ISI_SMS1:
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
ISI_SMS2:
ISI_SMS3:
ISI_SMS4:
ISI_SMS5:
ISI_SMS6:
ISI_SMS7:
ISI_SMS8:
ISI_SMS9:
ISI_SMS10:
ISI_SMS11:
'0','9','C','9','7','9','1','A','0','4','2','F'
'B','B','E','B','6','8'
'0','7','C','9','7','9','1','A','2','4','7','B'
'C','D','0','0'
'0','7','C','9','7','9','1','A','1','4','7','B'
'C','9','0','0'
'0','7','C','2','F','A','3','A','0','C','9','A'
'5','A','0','1'
'0','8','D','4','3','A','B','D','0','E','0','7'
'4','D','A','D'
'0','B','C','2','F','A','3','A','0','C','0','A'
'B','3','D','3','F','2','B','0','1','B'
'0','C','D','4','3','A','B','D','0','E','0','7'
'8','5','D','9','6','9','7','9','D','8','0','D'
'0','E','5','3','2','B','6','8','4','E','4','6'
'8','3' 'E','8','6','5','B','9','B','8','B','E'
'0','E','0','3'
'0','F','5','3','2','B','6','8','4','E','4','6'
'8','3','E','8','6','5','3','9','B','D','4','E'
'A','F','C','3','0','1'
'2','6','D','4','B','0','F','B','B','C','4','E'
'8','3','D','6','E','F','F','9','D','B','7','D'
'6','6','8','5','D','9','6','9','7','9','D','8'
'0','D','0','A','A','7','E','5','A','0','3','9'
'1','9','0','D','2','2','A','7','D','B','6','1'
'7','A','7','A','1','D','7','6','0','3'
'0','5','D','2','F','2','B','C','4','C','0','7'
;*******************************************************************
;*
MAIN PROGRAM
;*******************************************************************
START1:
MOV
MOV
MOV
MOV
P2,#00H
P1,#00H
A,P2
B,A
START:
MOV
MOV
MOV
MOV
MOV
SETB
SETB
SETB
SETB
SCON,#40H
PCON,#80H
TMOD,#20H
TH1,#0FDH
TCON,#40H
P2.0
P2.1
P2.2
P2.3
B-2
Lampiran B
;*******************************************************************
;*
TDK ADA SMS,CEK KEBOCORAN
;*******************************************************************
CEK_AIR:
LCALL
CLR
MOV
ANL
CJNE
CPL
JMP
DELAY
A
A,P2
A,#00000001B
A,#00000001B,AIR_KSNG
P1.0
NO_SMS
AIR_KSNG:
CLR
SETB
LCALL
CLR
CLR
MOV
MOV
JMP
P1.3
P1.1
DELAY2
P1.1
A
A,P2
B,A
CEK_AIR
NO_SMS:
CLR
MOV
MOV
MOV
XRL
CJNE
JMP
JB
JMP
A
A,B
R0,#56H
@R0,P2
A,@R0
A,#00H,BOCOR
TUNGGU_PRNT
P1.3,TUNGGU_PRNT
KNDS_BCR
BOCOR:
;*******************************************************************
;*
BACA SEMUA SMS
;*******************************************************************
TUNGGU_PRNT:
CLR
MOV
MOV
LIST1:
MOV
MOVC
MOV
JNB
CLR
INC
CJNE
SETB
MOV
TI
R4,#00H
DPTR,#LIST
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
A,#0DH,LIST1
REN
R1,#80H
B-3
Lampiran B
;*******************************************************************
;
SMS DI INDEX & SIMPAN INDEX EEPROM
;*******************************************************************
EEWRT:
INDEX:
ORL
ORL
MOV
MOV
WMCON,#EEMEN
WMCON,#EEMWE
DPTR,#000H
R0,#80H
MOV
MOVX
LCALL
INC
DEC
INC
A,@R0
@DPTR,A
DELAY
DPTR
R1
R0
CJNE
XRL
R1,#80H,EEWRT
WMCON,#EEMWE
ORL
ORL
MOV
WMCON,#EEMEN
WMCON,#EEMWE
DPTR,#000H
MOVX
LCALL
INC
MOV
XRL
XRL
A,@DPTR
DELAY
DPTR
R3,A
WMCON,#EEMWE
WMCON,#EEMEN
JZ
CEK_AIR
B-4
Lampiran B
;*******************************************************************
;
BACA SMS SATU PERSATU
;*******************************************************************
BANDING1:
READ1:
LAGI4:
LAGI5:
CLR
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
CJNE
MOV
MOV
JNB
CLR
MOV
JNB
CLR
TI
R4,#00H
DPTR,#READ
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
A,#'=',READ1
A,R3
SBUF,A
TI,$
TI
SBUF,#13
TI,$
TI
SETB
MOV
MOV
JNB
MOV
CLR
CJNE
DEC
CJNE
JNB
MOV
CLR
MOV
INC
CJNE
REN
R0,#02H
R1,#5AH
RI,$
A,SBUF
RI
A,#0AH,LAGI4
R0
R0,#00H,LAGI4
RI,$
A,SBUF
RI
@R1,A
R1
A,#0DH,LAGI5
;*******************************************************************
;*
BANDINGKAN SMS CENTER PENGIRIM
;*******************************************************************
CSMSC1:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
R5,#00H
R0,#59H
DPTR,#SMSC_SENDER
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
B-5
Lampiran B
CSMSC2:
CJNE
SJMP
XRL
CJNE
SJMP
R5,#0DH,CSMSC2
NEXT1
A,@R0
A,#00H,LJT
CSMSC1
;*******************************************************************
;*
BANDINGKAN NO PENGIRIM
;*******************************************************************
NEXT1:
CNOS:
CNOS2:
LJT:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R5,#00H
R0,#67H
DPTR,#NO_SENDER
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
R5,#11H,CNOS2
NEXT2
A,@R0
A,#00H,LJT
CNOS
LCALL HAPUS
JMP
CEK_AIR
;*******************************************************************
;*
BANDINGKAN ISI SMS: ISI PENUH
;*******************************************************************
NEXT2:
CISI:
CISI1:
ISIPNH:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R5,#00H
R0,#89H
DPTR,#ISI_SMS1
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
R5,#13H,CISI1
ISIPNH
A,@R0
A,#00H,NEXT3
CISI
LCALL HAPUS
SETB P1.1
JB
P2.1,ISIPNH
B-6
Lampiran B
JB
P2.2,ISIPNH
JB
P2.3,ISIPNH
LCALL DELAY1
LCALL DELAY1
LCALL DELAY1
CLR
P1.1
MOV
B,#01H
LCALL DELAY2
;******************************************************
;
LAPORAN KETINGGIAN TERCAPAI
;******************************************************
LCALL KIRIM
LCALL SMS_SUM1
LCALL WAIT
LCALL SMSC_OP
LCALL TYPE
LCALL NOMOR
LCALL TIME
MOV
DPTR,#DIKRM
LCALL DTA1
MOV
SBUF,#26
JNB
TI,$
CLR
TI
JMP
CEK_AIR
;*******************************************************************
;*
BANDINGKAN ISI SMS: ISI 2/3
;*******************************************************************
NEXT3:
CISI2:
CISI3:
ISI2_3:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R5,#00H
R0,#89H
DPTR,#ISI_SMS2
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
R5,#11H,CISI3
ISI2_3
A,@R0
A,#00H,NEXT4
CISI2
LCALL
SETB
JB
JB
LCALL
LCALL
LCALL
HAPUS
P1.1
P2.1,ISI2_3
P2.2,ISI2_3
DELAY1
DELAY1
DELAY1
B-7
Lampiran B
CLR
P1.1
MOV
B,#09H
LCALL DELAY2
;******************************************************
;
LAPORAN KETINGGIAN TERCAPAI
;******************************************************
LCALL KIRIM
LCALL SMS_SUM1
LCALL WAIT
LCALL SMSC_OP
LCALL TYPE
LCALL NOMOR
LCALL TIME
MOV
DPTR,#DIKRM
LCALL DTA1
MOV
SBUF,#26
JNB
TI,$
CLR
TI
JMP
CEK_AIR
;*******************************************************************
;*
BANDINGKAN ISI SMS: ISI 1/2
;*******************************************************************
NEXT4:
CISI4:
CISI5:
ISI1_2:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R5,#00H
R0,#89H
DPTR,#ISI_SMS3
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
R5,#11H,CISI5
ISI1_2
A,@R0
A,#00H,NEXT5
CISI4
LCALL
SETB
JB
LCALL
LCALL
LCALL
CLR
MOV
LCALL
HAPUS
P1.1
P2.1,ISI1_2
DELAY1
DELAY1
DELAY1
P1.1
B,#0DH
DELAY2
B-8
Lampiran B
;******************************************************
;
LAPORAN KETINGGIAN TERCAPAI
;******************************************************
LCALL KIRIM
LCALL SMS_SUM1
LCALL WAIT
LCALL SMSC_OP
LCALL TYPE
LCALL NOMOR
LCALL TIME
MOV
DPTR,#DIKRM
LCALL DTA1
MOV
SBUF,#26
JNB
TI,$
CLR
TI
JMP
CEK_AIR
;*******************************************************************
;*
BANDINGKAN ISI SMS: BUKA ALIRAN
;*******************************************************************
NEXT5:
CISI6:
CISI7:
ISI_BKSV:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R5,#00H
R0,#89H
DPTR,#ISI_SMS6
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
R5,#17H,CISI7
ISI_BKSV
A,@R0
A,#00H,NEXT6
CISI6
LCALL HAPUS
SETB P1.3
JMP
CEK_AIR
;*******************************************************************
;*
BANDINGKAN ISI SMS: TUTUP ALIRAN
;*******************************************************************
NEXT6:
CISI8:
MOV
MOV
MOV
MOV
MOV
MOVC
R5,#00H
R0,#89H
DPTR,#ISI_SMS7
R4,#00H
A,R4
A,@A+DPTR
B-9
Lampiran B
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R0
R4
R5
R5,#19H,CISI9
ISI_TTPSV
A,@R0
A,#00H,LJT1
CISI8
ISI_TTPSV:
LCALL
CLR
MOV
MOV
JMP
HAPUS
P1.3
A,P2
B,A
CEK_AIR
LJT1:
LCALL HAPUS
JMP
CEK_AIR
CISI9:
;*******************************************************************
;
SEND A SMS
;*******************************************************************
KIRIM:
CLR
CLR
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
CJNE
RET
RI
TI
R4,#00H
DPTR,#SEND
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
A,#'=',KRM1
SMS_SUM1:
MOV
JNB
CLR
MOV
JNB
CLR
MOV
JNB
CLR
RET
SBUF,#'3'
TI,$
TI
SBUF,#'7'
TI,$
TI
SBUF,#0DH
TI,$
TI
SMS_SUM2:
MOV
JNB
CLR
MOV
JNB
SBUF,#'4'
TI,$
TI
SBUF,#'2'
TI,$
KRM1:
B-10
Lampiran B
CLR
MOV
JNB
CLR
RET
TI
SBUF,#0DH
TI,$
TI
SMS_SUM3:
MOV
JNB
CLR
MOV
JNB
CLR
MOV
JNB
CLR
RET
SBUF,#'2'
TI,$
TI
SBUF,#'7'
TI,$
TI
SBUF,#0DH
TI,$
TI
SMS_SUM4:
MOV
JNB
CLR
MOV
JNB
CLR
MOV
JNB
CLR
RET
SBUF,#'2'
TI,$
TI
SBUF,#'6'
TI,$
TI
SBUF,#0DH
TI,$
TI
SMS_SUM5:
MOV
JNB
CLR
MOV
JNB
CLR
MOV
JNB
CLR
RET
SBUF,#'4'
TI,$
TI
SBUF,#'7'
TI,$
TI
SBUF,#0DH
TI,$
TI
SMS_SUM6:
MOV
JNB
CLR
MOV
JNB
CLR
MOV
JNB
CLR
RET
SBUF,#'1'
TI,$
TI
SBUF,#'8'
TI,$
TI
SBUF,#0DH
TI,$
TI
WAIT:
CLR
SETB
RI
REN
B-11
Lampiran B
WT1:
JNB
MOV
CLR
CJNE
RET
RI,$
A,SBUF
RI
A,#0DH,WT1
SMSC_OP:
MOV
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
INC
CJNE
RET
R5,#00H
DPTR,#SMSC
R4,#00H
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
R5
R5,#10H,OP1
TYPE:
MOV
JNB
CLR
MOV
JNB
CLR
MOV
JNB
CLR
MOV
JNB
CLR
RET
SBUF,#'0'
TI,$
TI
SBUF,#'1'
TI,$
TI
SBUF,#'0'
TI,$
TI
SBUF,#'0'
TI,$
TI
NOMOR:
MOV
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
INC
CJNE
RET
R5,#00H
DPTR,#NO_SENDER
R4,#00H
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
R5
R5,#10H,NM1
MOV
JNB
CLR
MOV
JNB
CLR
SBUF,#'0'
TI,$
TI
SBUF,#'0'
TI,$
TI
OP1:
NM1:
TIME:
B-12
Lampiran B
DTA1:
DT1:
DTA2:
DT2:
DTA3:
DT3:
DTA4:
DT4:
MOV
JNB
CLR
MOV
JNB
CLR
RET
SBUF,#'0'
TI,$
TI
SBUF,#'0'
TI,$
TI
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
INC
CJNE
RET
R5,#00H
R4,#00H
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
R5
R5,#32H,DT1
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
INC
CJNE
RET
R5,#00H
R4,#00H
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
R5
R5,#3CH,DT2
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
INC
CJNE
RET
R5,#00H
R4,#00H
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
R5
R5,#1EH,DT3
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
R5,#00H
R4,#00H
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
B-13
Lampiran B
DTA5:
DT5:
DTA6:
DT6:
INC
CJNE
RET
R5
R5,#1CH,DT4
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
INC
CJNE
RET
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
INC
CJNE
RET
R5,#00H
R4,#00H
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
R5
R5,#46H,DT5
R5,#00H
R4,#00H
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
R5
R5,#0CH,DT6
;*******************************************************************
;*
HAPUS SMS
;*******************************************************************
HAPUS:
DEL1:
CLR
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
CJNE
MOV
MOV
JNB
CLR
MOV
JNB
CLR
LCALL
RET
TI
R4,#00H
DPTR,#DELETE
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
A,#'=',DEL1
A,R3
SBUF,A
TI,$
TI
SBUF,#13
TI,$
TI
DELAY
B-14
Lampiran B
;*******************************************************************
;*
DELAY
;*******************************************************************
DELAY:
ULANG2:
ULANG1:
ULANG:
MOV
MOV
MOV
INC
CJNE
INC
CJNE
INC
CJNE
RET
R7,#0
R6,#0
R5,#0
R5
R5,#15H,ULANG
R6
R6,#15H,ULANG1
R7
R7,#15H,ULANG2
DELAY1:
ULANG5:
ULANG4:
ULANG3:
MOV
MOV
MOV
INC
CJNE
INC
CJNE
INC
CJNE
RET
R7,#0
R6,#0
R5,#0
R5
R5,#40H,ULANG3
R6
R6,#40H,ULANG4
R7
R7,#40H,ULANG5
DELAY2:
ULANG8:
ULANG7:
ULANG6:
MOV
MOV
MOV
INC
CJNE
INC
CJNE
INC
CJNE
RET
R7,#0
R6,#0
R5,#0
R5
R5,#90H,ULANG6
R6
R6,#90H,ULANG7
R7
R7,#90H,ULANG8
;*******************************************************************
;*
JIKA KEBOCORAN TERJADI
;*******************************************************************
KNDS_BCR:
LCALL
LCALL
LCALL
LCALL
LCALL
LCALL
LCALL
MOV
KIRIM
SMS_SUM2
WAIT
SMSC_OP
TYPE
NOMOR
TIME
DPTR,#LAPORAN
B-15
Lampiran B
LCALL
MOV
JNB
CLR
DTA2
SBUF,#26
TI,$
TI
;*******************************************************************
;*
CEK SMS DATANG
;*******************************************************************
TUNGGU_PRNT2:
CLR
MOV
MOV
LIST4:
MOV
MOVC
MOV
JNB
CLR
INC
CJNE
SETB
MOV
LIST5:
LIST6:
EEWRT1:
TI
R4,#00H
DPTR,#LIST
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
A,#0DH,LIST4
REN
R1,#80H
JNB
MOV
CLR
CJNE
JNB
MOV
CLR
MOV
INC
CJNE
CLR
ORL
ORL
MOV
MOV
MOV
MOV
MOVX
LCALL
INC
DEC
INC
INC
CJNE
XRL
XRL
RI,$
A,SBUF
RI
A,#20H,LIST6
RI,$
A,SBUF
RI
@R1,A
R1
A,#4BH,LIST5
REN
WMCON,#EEMEN
WMCON,#EEMWE
DPTR,#000H
R0,#80H
R2,#00H
A,@R0
@DPTR,A
DELAY
DPTR
R1
R0
R2
R1,#80H,EEWRT1
WMCON,#EEMWE
WMCON,#EEMEN
ORL
WMCON,#EEMEN
B-16
Lampiran B
INDEX2:
INDEX3:
ORL
MOV
PUSH
PUSH
CJNE
JMP
POP
POP
MOVX
LCALL
INC
PUSH
PUSH
MOV
DEC
XRL
XRL
WMCON,#EEMWE
DPTR,#000H
DPL
DPH
R2,#00H,INDEX3
TUNGGU_PRNT2
DPH
DPL
A,@DPTR
DELAY
DPTR
DPL
DPH
R3,A
R2
WMCON,#EEMWE
WMCON,#EEMEN
;*******************************************************************
;
BACA SMS YG DATANG
;*******************************************************************
BANDING2:
READ2:
LAGI6:
LAGI7:
CLR
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
CJNE
MOV
MOV
JNB
CLR
MOV
JNB
CLR
TI
R4,#00H
DPTR,#READ
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
A,#'=',READ2
A,R3
SBUF,A
TI,$
TI
SBUF,#13
TI,$
TI
SETB
MOV
MOV
JNB
MOV
CLR
CJNE
DEC
CJNE
JNB
MOV
REN
R0,#02H
R1,#5AH
RI,$
A,SBUF
RI
A,#0AH,LAGI6
R0
R0,#00H,LAGI6
RI,$
A,SBUF
B-17
Lampiran B
CLR
MOV
INC
CJNE
RI
@R1,A
R1
A,#0DH,LAGI7
;*******************************************************************
;*
BANDINGKAN SMS CENTER PENGIRIM
;*******************************************************************
CSMSC3:
CSMSC4:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R5,#00H
R0,#59H
DPTR,#SMSC_SENDER
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
R5,#0DH,CSMSC4
NEXT7
A,@R0
A,#00H,LJTA
CSMSC3
;*******************************************************************
;*
BANDINGKAN NO PENGIRIM
;*******************************************************************
NEXT7:
CNOS3:
CNOS4:
LJTA:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R5,#00H
R0,#67H
DPTR,#NO_SENDER
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
R5,#11H,CNOS4
NEXT8
A,@R0
A,#00H,LJTA
CNOS3
LCALL HAPUS
JMP
TUNGGU_PRNT2
B-18
Lampiran B
;*******************************************************************
;*
BANDINGKAN ISI SMS: BUKA SV
;*******************************************************************
NEXT8:
CISI10:
CISI11:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R5,#00H
R0,#89H
DPTR,#ISI_SMS4
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
R5,#11H,CISI11
TTPSV
A,@R0
A,#00H,NEXT9
CISI10
;*******************************************************************
;*
BANDINGKAN ISI SMS: TUTUP SV
;*******************************************************************
NEXT9:
CISI12:
CISI13:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R5,#00H
R0,#89H
DPTR,#ISI_SMS5
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
R5,#11H,CISI13
BUKASV
A,@R0
A,#00H,NEXT10
CISI12
;*******************************************************************
;*
BANDINGKAN ISI SMS: RESET
;*******************************************************************
NEXT10:
CISI14:
MOV
MOV
MOV
MOV
MOV
R5,#00H
R0,#89H
DPTR,#ISI_SMS11
R4,#00H
A,R4
B-19
Lampiran B
CISI15:
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
A,@A+DPTR
R0
R4
R5
R5,#0DH,CISI15
RST
A,@R0
A,#00H,LJTB
CISI14
BUKASV:
LCALL DELAY
LCALL HAPUS
CLR
P1.2
;******************************************************
;
LAPORAN KONDISI SV DITUTUP
;******************************************************
LCALL DELAY2
LCALL KIRIM
LCALL SMS_SUM3
LCALL WAIT
LCALL SMSC_OP
LCALL TYPE
LCALL NOMOR
LCALL TIME
MOV
DPTR,#ISI_SMS9
LCALL DTA3
MOV
SBUF,#26
JNB
TI,$
CLR
TI
JMP
TUNGGU_PRNT2
TTPSV:
LCALL DELAY
LCALL HAPUS
SETB P1.2
CLR
P1.2
SETB P1.2
;******************************************************
;
LAPORAN KONDISI SV DIBUKA
;******************************************************
LCALL DELAY2
LCALL KIRIM
LCALL SMS_SUM4
LCALL WAIT
LCALL SMSC_OP
LCALL TYPE
LCALL NOMOR
LCALL TIME
MOV
DPTR,#ISI_SMS8
LCALL DTA4
MOV
SBUF,#26
JNB
TI,$
CLR
TI
B-20
Lampiran B
JMP
TUNGGU_PRNT2
LJTB:
LCALL HAPUS
LCALL DELAY
JMP
TUNGGU_PRNT2
RST:
LCALL
SETB
MOV
MOV
JMP
DELAY
P1.2
A,P2
B,A
AWAL
;*******************************************************************
;*
AKHIR PROGRAM
;*******************************************************************
AKH:
NOP
SJMP
END;
AKH
B-21
LAMPIRAN C
Skema Rangkaian
Lampiran C
C-1
Lampiran C
C-2
LAMPIRAN D
Data Komponen
Features
• Compatible with MCS®51 Products
• 8K Bytes of In-System Reprogrammable Downloadable Flash Memory
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
– SPI Serial Interface for Program Downloading
– Endurance: 1,000 Write/Erase Cycles
2K Bytes EEPROM
– Endurance: 100,000 Write/Erase Cycles
4V to 6V Operating Range
Fully Static Operation: 0 Hz to 24 MHz
Three-level Program Memory Lock
256 x 8-bit Internal RAM
32 Programmable I/O Lines
Three 16-bit Timer/Counters
Nine Interrupt Sources
Programmable UART Serial Channel
SPI Serial Interface
Low-power Idle and Power-down Modes
Interrupt Recovery from Power-down
Programmable Watchdog Timer
Dual Data Pointer
Power-off Flag
8-bit
Microcontroller
with 8K Bytes
Flash
AT89S8252
Description
The AT89S8252 is a low-power, high-performance CMOS 8-bit microcontroller with 8K
bytes of downloadable Flash programmable and erasable read-only memory and 2K
bytes of EEPROM. The device is manufactured using Atmel’s high-density nonvolatile
memory technology and is compatible with the industry-standard 80C51 instruction
set and pinout. The on-chip downloadable Flash allows the program memory to be
reprogrammed In-System through an SPI serial interface or by a conventional nonvolatile memory programmer. By combining a versatile 8-bit CPU with downloadable
Flash on a monolithic chip, the Atmel AT89S8252 is a powerful microcontroller, which
provides a highly-flexible and cost-effective solution to many embedded control
applications.
The AT89S8252 provides the following standard features: 8K bytes of downloadable
Flash, 2K bytes of EEPROM, 256 bytes of RAM, 32 I/O lines, programmable watchdog
timer, two data pointers, three 16-bit timer/counters, a six-vector two-level interrupt
architecture, a full duplex serial port, on-chip oscillator, and clock circuitry. In addition,
the AT89S8252 is designed with static logic for operation down to zero frequency and
supports two software selectable power saving modes. The Idle Mode stops the CPU
while allowing the RAM, timer/counters, serial port, and interrupt system to continue
functioning. The Power-down mode saves the RAM contents but freezes the oscillator,
disabling all other chip functions until the next external interrupt or hardware reset.
The downloadable Flash can be changed a single byte at a time and is accessible
through the SPI serial interface. Holding RESET active forces the SPI bus into a serial
programming interface and allows the program memory to be written to or read from
unless lock bits have been activated.
0401F–MICRO–11/03
1
Pin Configurations
TQFP
VCC
P0.0 (AD0)
P0.1 (AD1)
P0.2 (AD2)
P0.3 (AD3)
P0.4 (AD4)
P0.5 (AD5)
P0.6 (AD6)
P0.7 (AD7)
EA/VPP
ALE/PROG
PSEN
P2.7 (A15)
P2.6 (A14)
P2.5 (A13)
P2.4 (A12)
P2.3 (A11)
P2.2 (A10)
P2.1 (A9)
P2.0 (A8)
44
43
42
41
40
39
38
37
36
35
34
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
(MOSI) P1.5
(MISO) P1.6
(SCK) P1.7
RST
(RXD) P3.0
NC
(TXD) P3.1
(INT0) P3.2
(INT1) P3.3
(T0) P3.4
(T1) P3.5
33
32
31
30
29
28
27
26
25
24
23
1
2
3
4
5
6
7
8
9
10
11
P0.4 (AD4)
P0.5 (AD5)
P0.6 (AD6)
P0.7 (AD7)
EA/VPP
NC
ALE/PROG
PSEN
P2.7 (A15)
P2.6 (A14)
P2.5 (A13)
12
13
14
15
16
17
18
19
20
21
22
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
(WR) P3.6
(RD) P3.7
XTAL2
XTAL1
GND
GND
(A8) P2.0
(A9) P2.1
(A10) P2.2
(A11) P2.3
(A12) P2.4
(T2) P1.0
(T2 EX) P1.1
P1.2
P1.3
(SS) P1.4
(MOSI) P1.5
(MISO) P1.6
(SCK) P1.7
RST
(RXD) P3.0
(TXD) P3.1
(INT0) P3.2
(INT1) P3.3
(T0) P3.4
(T1) P3.5
(WR) P3.6
(RD) P3.7
XTAL2
XTAL1
GND
P1.4 (SS)
P1.3
P1.2
P1.1 (T2 EX)
P1.0 (T2)
NC
VCC
P0.0 (AD0)
P0.1 (AD1)
P0.2 (AD2)
P0.3 (AD3)
PDIP
39
38
37
36
35
34
33
32
31
30
29
18
19
20
21
22
23
24
25
26
27
28
7
8
9
10
11
12
13
14
15
16
17
P0.4 (AD4)
P0.5 (AD5)
P0.6 (AD6)
P0.7 (AD7)
EA/VPP
NC
ALE/PROG
PSEN
P2.7 (A15)
P2.6 (A14)
P2.5 (A13)
(WR) P3.6
(RD) P3.7
XTAL2
XTAL1
GND
NC
(A8) P2.0
(A9) P2.1
(A10) P2.2
(A11) P2.3
(A12) P2.4
(MOSI) P1.5
(MISO) P1.6
(SCK) P1.7
RST
(RXD) P3.0
NC
(TXD) P3.1
(INT0) P3.2
(INT1) P3.3
(T0) P3.4
(T1) P3.5
6
5
4
3
2
1
44
43
42
41
40
P1.4 (SS)
P1.3
P1.2
P1.1 (T2 EX)
P1.0 (T2)
NC
VCC
P0.0 (AD0)
P0.1 (AD1)
P0.2 (AD2)
P0.3 (AD3)
PLCC
Pin Description
VCC
Supply voltage.
GND
Ground.
Port 0
Port 0 is an 8-bit open drain bi-didirectional I/O port. As an output port, each pin can
sink eight TTL inputs. When 1s are written to port 0 pins, the pins can be used as highimpedance inputs.
Port 0 can also be configured to be the multiplexed low-order address/data bus during
accesses to external program and data memory. In this mode, P0 has internal pull-ups.
Port 0 also receives the code bytes during Flash programming and outputs the code
bytes during program verification. External pull-ups are required during program
verification.
Port 1
2
Port 1 is an 8-bit bi-directional I/O port with internal pull-ups. The Port 1 output buffers
can sink/source four TTL inputs. When 1s are written to Port 1 pins, they are pulled high
by the internal pull-ups and can be used as inputs. As inputs, Port 1 pins that are externally being pulled low will source current (IIL) because of the internal pull-ups.
AT89S8252
0401F–MICRO–11/03
AT89S8252
Block Diagram
P0.0 - P0.7
P2.0 - P2.7
PORT 0 DRIVERS
PORT 2 DRIVERS
VCC
GND
EEPROM
RAM ADDR.
REGISTER
B
REGISTER
PORT 0
LATCH
RAM
PORT 2
LATCH
FLASH
PROGRAM
ADDRESS
REGISTER
STACK
POINTER
ACC
BUFFER
TMP2
TMP1
PC
INCREMENTER
ALU
INTERRUPT, SERIAL PORT,
AND TIMER BLOCKS
PROGRAM
COUNTER
PSW
PSEN
ALE/PROG
EA / VPP
TIMING
AND
CONTROL
DUAL
DPTR
INSTRUCTION
REGISTER
RST
WATCH
DOG
PORT 3
LATCH
PORT 1
LATCH
SPI
PORT
PROGRAM
LOGIC
OSC
PORT 3 DRIVERS
P3.0 - P3.7
PORT 1 DRIVERS
P1.0 - P1.7
3
0401F–MICRO–11/03
Some Port 1 pins provide additional functions. P1.0 and P1.1 can be configured to be
the timer/counter 2 external count input (P1.0/T2) and the timer/counter 2 trigger input
(P1.1/T2EX), respectively.
Furthermore, P1.4, P1.5, P1.6, and P1.7 can be configured as the SPI slave port select,
data input/output and shift clock input/output pins as shown in the following table.
Port Pin
Alternate Functions
P1.0
T2 (external count input to Timer/Counter 2), clock-out
P1.1
T2EX (Timer/Counter 2 capture/reload trigger and direction control)
P1.4
SS (Slave port select input)
P1.5
MOSI (Master data output, slave data input pin for SPI channel)
P1.6
MISO (Master data input, slave data output pin for SPI channel)
P1.7
SCK (Master clock output, slave clock input pin for SPI channel)
Port 1 also receives the low-order address bytes during Flash programming and
verification.
Port 2
Port 2 is an 8-bit bi-directional I/O port with internal pull-ups. The Port 2 output buffers
can sink/source four TTL inputs. When 1s are written to Port 2 pins, they are pulled high
by the internal pull-ups and can be used as inputs. As inputs, Port 2 pins that are externally being pulled low will source current (IIL) because of the internal pull-ups.
Port 2 emits the high-order address byte during fetches from external program memory
and during accesses to external data memory that use 16-bit addresses (MOVX @
DPTR). In this application, Port 2 uses strong internal pull-ups when emitting 1s. During
accesses to external data memory that use 8-bit addresses (MOVX @ RI), Port 2 emits
the contents of the P2 Special Function Register.
Port 2 also receives the high-order address bits and some control signals during Flash
programming and verification.
Port 3
Port 3 is an 8-bit bi-directional I/O port with internal pull-ups. The Port 3 output buffers
can sink/source four TTL inputs. When 1s are written to Port 3 pins, they are pulled high
by the internal pull-ups and can be used as inputs. As inputs, Port 3 pins that are externally being pulled low will source current (IIL) because of the pull-ups.
Port 3 receives some control signals for Flash programming and verification.
Port 3 also serves the functions of various special features of the AT89S8252, as shown
in the following table.
4
AT89S8252
0401F–MICRO–11/03
AT89S8252
Port Pin
Alternate Functions
P3.0
RXD (serial input port)
P3.1
TXD (serial output port)
P3.2
INT0 (external interrupt 0)
P3.3
INT1 (external interrupt 1)
P3.4
T0 (timer 0 external input)
P3.5
T1 (timer 1 external input)
P3.6
WR (external data memory write strobe)
P3.7
RD (external data memory read strobe)
RST
Reset input. A high on this pin for two machine cycles while the oscillator is running
resets the device.
ALE/PROG
Address Latch Enable is an output pulse for latching the low byte of the address during
accesses to external memory. This pin is also the program pulse input (PROG) during
Flash programming.
In normal operation, ALE is emitted at a constant rate of 1/6 the oscillator frequency and
may be used for external timing or clocking purposes. Note, however, that one ALE
pulse is skipped during each access to external data memory.
If desired, ALE operation can be disabled by setting bit 0 of SFR location 8EH. With the
bit set, ALE is active only during a MOVX or MOVC instruction. Otherwise, the pin is
weakly pulled high. Setting the ALE-disable bit has no effect if the microcontroller is in
external execution mode.
PSEN
Program Store Enable is the read strobe to external program memory.
When the AT89S8252 is executing code from external program memory, PSEN is activated twice each machine cycle, except that two PSEN activations are skipped during
each access to external data memory.
EA/VPP
External Access Enable. EA must be strapped to GND in order to enable the device to
fetch code from external program memory locations starting at 0000H up to FFFFH.
Note, however, that if lock bit 1 is programmed, EA will be internally latched on reset.
EA should be strapped to VCC for internal program executions. This pin also receives the
12-volt programming enable voltage (VPP) during Flash programming when 12-volt programming is selected.
XTAL1
Input to the inverting oscillator amplifier and input to the internal clock operating circuit.
XTAL2
Output from the inverting oscillator amplifier.
5
0401F–MICRO–11/03
19-4323; Rev 14; 8/04
+5V-Powered, Multichannel RS-232
Drivers/Receivers
The MAX220–MAX249 family of line drivers/receivers is
intended for all EIA/TIA-232E and V.28/V.24 communications interfaces, particularly applications where ±12V is
not available.
These parts are especially useful in battery-powered systems, since their low-power shutdown mode reduces
power dissipation to less than 5µW. The MAX225,
MAX233, MAX235, and MAX245/MAX246/MAX247 use
no external components and are recommended for applications where printed circuit board space is critical.
Next-Generation
Device Features
♦ For Low-Voltage, Integrated ESD Applications
MAX3222E/MAX3232E/MAX3237E/MAX3241E/
MAX3246E: +3.0V to +5.5V, Low-Power, Up to
1Mbps, True RS-232 Transceivers Using Four
0.1µF External Capacitors (MAX3246E Available
in a UCSP™ Package)
♦ For Low-Cost Applications
MAX221E: ±15kV ESD-Protected, +5V, 1µA,
Single RS-232 Transceiver with AutoShutdown™
________________________Applications
Ordering Information
Portable Computers
PART
MAX220CPE
MAX220CSE
MAX220CWE
MAX220C/D
MAX220EPE
MAX220ESE
MAX220EWE
MAX220EJE
MAX220MJE
Low-Power Modems
Interface Translation
Battery-Powered RS-232 Systems
Multidrop RS-232 Networks
AutoShutdown and UCSP are trademarks of Maxim Integrated
Products, Inc.
TEMP RANGE
0°C to +70°C
0°C to +70°C
0°C to +70°C
0°C to +70°C
-40°C to +85°C
-40°C to +85°C
-40°C to +85°C
-40°C to +85°C
-55°C to +125°C
PIN-PACKAGE
16 Plastic DIP
16 Narrow SO
16 Wide SO
Dice*
16 Plastic DIP
16 Narrow SO
16 Wide SO
16 CERDIP
16 CERDIP
Ordering Information continued at end of data sheet.
*Contact factory for dice specifications.
Selection Table
Part
Number
MAX220
MAX222
MAX223 (MAX213)
MAX225
MAX230 (MAX200)
MAX231 (MAX201)
MAX232 (MAX202)
MAX232A
MAX233 (MAX203)
MAX233A
MAX234 (MAX204)
MAX235 (MAX205)
MAX236 (MAX206)
MAX237 (MAX207)
MAX238 (MAX208)
MAX239 (MAX209)
MAX240
MAX241 (MAX211)
MAX242
MAX243
MAX244
MAX245
MAX246
MAX247
MAX248
MAX249
Power
Supply
(V)
+5
+5
+5
+5
+5
+5 and
+7.5 to +13.2
+5
+5
+5
+5
+5
+5
+5
+5
+5
+5 and
+7.5 to +13.2
+5
+5
+5
+5
+5
+5
+5
+5
+5
+5
No. of
RS-232
Drivers/Rx
2/2
2/2
4/5
5/5
5/0
2/2
No. of
Ext. Caps
4
4
4
0
4
2
Nominal
Cap. Value
(µF)
0.047/0.33
0.1
1.0 (0.1)
—
1.0 (0.1)
1.0 (0.1)
SHDN
& ThreeState
No
Yes
Yes
Yes
Yes
No
Rx
Active in
SHDN
—
—
✔
✔
—
—
Data Rate
(kbps)
120
200
120
120
120
120
2/2
2/2
2/2
2/2
4/0
5/5
4/3
5/3
4/4
3/5
4
4
0
0
4
0
4
4
4
2
1.0 (0.1)
0.1
—
—
1.0 (0.1)
—
1.0 (0.1)
1.0 (0.1)
1.0 (0.1)
1.0 (0.1)
No
No
No
No
No
Yes
Yes
No
No
No
—
—
—
—
—
—
—
—
—
—
120 (64)
200
120
200
120
120
120
120
120
120
5/5
4/5
2/2
2/2
8/10
8/10
8/10
8/9
8/8
6/10
4
4
4
4
4
0
0
0
4
4
1.0
1.0 (0.1)
0.1
0.1
1.0
—
—
—
1.0
1.0
Yes
Yes
Yes
No
No
Yes
Yes
Yes
Yes
Yes
—
—
✔
—
—
✔
✔
✔
✔
✔
120
120
200
200
120
120
120
120
120
120
Features
Ultra-low-power, industry-standard pinout
Low-power shutdown
MAX241 and receivers active in shutdown
Available in SO
5 drivers with shutdown
Standard +5/+12V or battery supplies;
same functions as MAX232
Industry standard
Higher slew rate, small caps
No external caps
No external caps, high slew rate
Replaces 1488
No external caps
Shutdown, three state
Complements IBM PC serial port
Replaces 1488 and 1489
Standard +5/+12V or battery supplies;
single-package solution for IBM PC serial port
DIP or flatpack package
Complete IBM PC serial port
Separate shutdown and enable
Open-line detection simplifies cabling
High slew rate
High slew rate, int. caps, two shutdown modes
High slew rate, int. caps, three shutdown modes
High slew rate, int. caps, nine operating modes
High slew rate, selective half-chip enables
Available in quad flatpack package
________________________________________________________________ Maxim Integrated Products
For pricing, delivery, and ordering information, please contact Maxim/Dallas Direct! at
1-888-629-4642, or visit Maxim’s website at www.maxim-ic.com.
1
MAX220–MAX249
General Description
MAX220–MAX249
+5V-Powered, Multichannel RS-232
Drivers/Receivers
ABSOLUTE MAXIMUM RATINGS—MAX220/222/232A/233A/242/243
Supply Voltage (VCC) ...............................................-0.3V to +6V
V+ (Note 1) ..................................................(VCC - 0.3V) to +14V
V- (Note 1) .............................................................+0.3V to +14V
Input Voltages
TIN..............................................................-0.3V to (VCC - 0.3V)
RIN (Except MAX220) ........................................................±30V
RIN (MAX220).....................................................................±25V
TOUT (Except MAX220) (Note 2) .......................................±15V
TOUT (MAX220)...............................................................±13.2V
Output Voltages
TOUT ...................................................................................±15V
ROUT .........................................................-0.3V to (VCC + 0.3V)
Driver/Receiver Output Short Circuited to GND.........Continuous
Continuous Power Dissipation (TA = +70°C)
16-Pin Plastic DIP (derate 10.53mW/°C above +70°C)..842mW
18-Pin Plastic DIP (derate 11.11mW/°C above +70°C)..889mW
20-Pin Plastic DIP (derate 8.00mW/°C above +70°C) ..440mW
16-Pin Narrow SO (derate 8.70mW/°C above +70°C) ...696mW
16-Pin Wide SO (derate 9.52mW/°C above +70°C)......762mW
18-Pin Wide SO (derate 9.52mW/°C above +70°C)......762mW
20-Pin Wide SO (derate 10.00mW/°C above +70°C)....800mW
20-Pin SSOP (derate 8.00mW/°C above +70°C) ..........640mW
16-Pin CERDIP (derate 10.00mW/°C above +70°C).....800mW
18-Pin CERDIP (derate 10.53mW/°C above +70°C).....842mW
Operating Temperature Ranges
MAX2_ _AC_ _, MAX2_ _C_ _ .............................0°C to +70°C
MAX2_ _AE_ _, MAX2_ _E_ _ ..........................-40°C to +85°C
MAX2_ _AM_ _, MAX2_ _M_ _ .......................-55°C to +125°C
Storage Temperature Range .............................-65°C to +160°C
Lead Temperature (soldering, 10s) (Note 3) ...................+300°C
Note 1: For the MAX220, V+ and V- can have a maximum magnitude of 7V, but their absolute difference cannot exceed 13V.
Note 2: Input voltage measured with TOUT in high-impedance state, SHDN or VCC = 0V.
Note 3: Maximum reflow temperature for the MAX225_WI and MAX233A_WP is +220°C.
Stresses beyond those listed under “Absolute Maximum Ratings” may cause permanent damage to the device. These are stress ratings only, and functional
operation of the device at these or any other conditions beyond those indicated in the operational sections of the specifications is not implied. Exposure to
absolute maximum rating conditions for extended periods may affect device reliability.
ELECTRICAL CHARACTERISTICS—MAX220/222/232A/233A/242/243
(VCC = +5V ±10%, C1–C4 = 0.1µF‚ MAX220, C1 = 0.047µF, C2–C4 = 0.33µF, TA = TMIN to TMAX‚ unless otherwise noted.)
PARAMETER
CONDITIONS
MIN
TYP
MAX
UNITS
RS-232 TRANSMITTERS
Output Voltage Swing
All transmitter outputs loaded with 3kΩ to GND
±5
Input Logic Threshold Low
Input Logic Threshold High
All devices except MAX220
MAX220: VCC = 5.0V
2
SHDN = 0V, MAX222/MAX242, shutdown,
MAX220
±0.01
±1
VCC = 5.5V, SHDN = 0V, VOUT = ±15V,
MAX222/MAX242
±0.01
±10
±0.01
±10
VOUT = ±15V
MAX220, VOUT = ±12V
µA
µA
±25
Data Rate
200
VCC = V+ = V- = 0V, VOUT = ±2V
300
10M
VOUT = 0V
±7
±22
VOUT = 0V
V
V
40
VCC = SHDN = 0V
Output Short-Circuit Current
1.4
5
Output Leakage Current
Transmitter Output Resistance
V
0.8
2.4
All except MAX220, normal operation
Logic Pullup/lnput Current
±8
1.4
116
kbps
Ω
MAX220
±60
MAX220
±30
±25
mA
RS-232 RECEIVERS
RS-232 Input Voltage Operating Range
RS-232 Input Threshold Low
VCC = 5V
RS-232 Input Threshold High
VCC = 5V
2
All except MAX243 R2IN
0.8
MAX243 R2 IN (Note 4)
-3
1.3
V
All except MAX243 R2IN
1.8
2.4
MAX243 R2 IN (Note 4)
-0.5
-0.1
_______________________________________________________________________________________
V
V
+5 V-Pow e re d, M ult ic ha nne l RS-2 3 2
Drive rs/Re c e ive rs
(VCC = +5V ±10%, C1–C4 = 0.1µF‚ MAX220, C1 = 0.047µF, C2–C4 = 0.33µF, TA = TMIN to TMAX‚ unless otherwise noted.)
PARAMETER
RS-232 Input Hysteresis
CONDITIONS
All except MAX220/MAX243, VCC = 5V, no
hysteresis in SHDN
MIN
TYP
MAX
0.2
0.5
1
MAX220
RS-232 Input Resistance
TTL/CMOS Output Voltage Low
TTL/CMOS Output Voltage High
1
TA = +25°C (MAX220)
3
5
7
3
5
7
0.2
0.4
IOUT = 3.2mA
IOUT = 1.6mA (MAX220)
IOUT = -1.0mA
0.4
3.5
VCC - 0.2
Sourcing VOUT = GND
-2
-10
10
30
EN Input Threshold Low
Shrinking VOUT = VCC
SHDN = VCC or EN = VCC (SHDN = 0V for
MAX222), 0V ≤ VOUT ≤ VCC
MAX242
EN Input Threshold High
MAX242
2.0
TTL/CMOS Output Short-Circuit Current
TTL/CMOS Output Leakage Current
Operating Supply Voltage
VCC Supply Current (SHDN = VCC),
figures 5, 6, 11, 19
Shutdown Supply Current
3kΩ load both
inputs
MAX222/
MAX242
±10
1.4
0.8
1.4
5.5
MAX222/MAX232A/MAX233A/
MAX242/MAX243
4
10
MAX220
12
MAX222/MAX232A/MAX233A/
MAX242/MAX243
15
TA = +25°C
0.1
V
V
µA
10
TA = 0°C to +70°C
2
50
TA = -40°C to +85°C
2
50
TA = -55°C to +125°C
35
100
±1
µA
1.4
0.8
V
MAX222/MAX242
MAX222/MAX242
SHDN Threshold High
MAX222/MAX242
Transition Slew Rate
CL = 50pF to
MAX222/MAX232A/MAX233/
2500pF, RL = 3kΩ MAX242/MAX243
to 7kΩ, VCC = 5V,
TA = +25°C,
MAX220
measured from
+3V to -3V or -3V
MAX222/MAX232A/MAX233/
MAX242/MAX243
MAX220
tPLHT
µA
V
2
SHDN Threshold Low
Transmitter Propagation Delay TLL to
RS-232 (Normal Operation), Figure 1
V
mA
0.5
SHDN Input Leakage Current
tPHLT
KΩ
V
±0.05
4.5
MAX220
No load
V
0.3
MAX243
UNITS
MAX222/MAX232A/MAX233/
MAX242/MAX243
MAX220
2.0
1.4
6
12
µA
V
30
V/µs
1.5
3
30
1.3
3.5
4
10
1.5
3.5
5
10
µs
Note 4: MAX243 R2OUT is guaranteed to be low when R2IN is ≥ 0V or is floating.
_______________________________________________________________________________________
3
M AX 2 2 0 –M AX 2 4 9
ELECTRICAL CHARACTERISTICS—MAX220/222/232A/233A/242/243 (continued)
ELECTRICAL CHARACTERISTICS—MAX220/222/232A/233A/242/243 (continued)
(VCC = +5V ±10%, C1–C4 = 0.1µF‚ MAX220, C1 = 0.047µF, C2–C4 = 0.33µF, TA = TMIN to TMAX‚ unless otherwise noted.)
PARAMETER
TYP
MAX
CONDITIONS
MAX222/MAX232A/MAX233/
MAX242/MAX243
0.5
1
MAX220
0.6
3
MAX222/MAX232A/MAX233/
MAX242/MAX243
0.6
1
MAX220
0.8
3
tPHLS
MAX242
0.5
10
tPHLS
MAX242
2.5
10
Receiver-Output Enable Time, Figure 3
tER
MAX242
125
500
ns
Receiver-Output Disable Time, Figure 3
tDR
MAX242
160
500
ns
Transmitter-Output Enable Time (SHDN
Goes High), Figure 4
tET
MAX222/MAX242, 0.1µF
caps (includes charge-pump
start-up)
250
µs
Transmitter-Output Disable Time (SHDN
Goes Low), Figure 4
tDT
MAX222/MAX242,
0.1µF caps
600
ns
MAX222/MAX232A/MAX233/
MAX242/MAX243
300
MAX220
2000
MAX222/MAX232A/MAX233/
MAX242/MAX243
100
MAX220
225
tPHLR
Receiver Propagation Delay RS-232 to
TLL (Normal Operation), Figure 2
tPLHR
Receiver Propagation Delay RS-232 to
TLL (Shutdown), Figure 2
MIN
UNITS
µs
µs
Transmitter + to - Propagation Delay
Difference (Normal Operat
Kantor atau pabrik yang sudah makan usia terkadang dapat menimbulkan
gangguan. Contoh paling nyata adalah pada pipa-pipa saluran air di suatu pabrik
mudah menyebabkan kebocoran. Masalah tersebut dapat menjadi besar ketika
kebocoran tersebut tidak terdeteksi, sehingga diperlukan alat yang dapat mendeteksi
dan memberikan peringatan jika terjadi kebocoran pada pipa-pipa saluran air.
Pada tugas akhir ini, direalisasikan suatu cara untuk mendeteksi kebocoran
pada pipa distribusi dan monitor ketinggian air. Pendeteksian dilakukan oleh
rangkaian komparator, yang akan mengirimkan sinyal pada mikrokontroler jika
terjadi kebocoran. SMS pemberitahuan akan dikirim ke telepon selular operator
melalui telepon selular yang terhubung dengan mikrokontroler. Sistem juga dapat
menerima perintah-perintah untuk mengaktifkan pompa dan selenoid valve.
Kebocoran mulai terdeteksi sampai dengan laporan kebocoran diterima
membutuhkan
waktu
rata-rata
16
detik,
dengan
menggunakan
operator
telekomunikasi yang berbeda. Mikrokontroler membutuhkan waktu rata-rata 6,03
detik untuk melaksanakan perintah yang diberikan dimulai dari SMS dikirim sampai
dengan perintah dijalankan, dengan menggunakan operator telekomunikasi yang
sama.
i
DAFTAR ISI
ABSTRAK ……………………………………………………………….. i
KATA PENGANTAR …………………………………………………… ii
DAFTAR ISI ……………………………………………………………... iv
DAFTAR GAMBAR .................................................................................. vii
DAFTAR TABEL ....................................................................................... viii
BAB I
PENDAHULUAN ……………………………………………... 1
1.1
Latar Belakang ……………………………………............ 1
1.2 Identifikasi Masalah ………………………………............ 2
1.3 Tujuan ……………………………………………............. 2
1.4 Pembatasan Masalah ……………………………............... 2
1.5 Spesifikasi Alat …………………………………............... 3
1.6
Sistematika Laporan ………………………………............ 3
BAB II LANDASAN TEORI ................................................................... 4
2.1 AT Command ...................................................................... 4
2.2
PDU Sebagai Bahasa SMS ................................................. 6
2.2.1
Pengkodean 7 Bit .................................................... 6
2.2.2
Format Pengiriman dan Penerimaan Pesan
SMS ......................................................................... 8
iv
2.3
Mikrokontroler Atmel AT89S8252 ................................. 11
2.4
Pembanding (Komparator) ............................................... 13
BAB III PERANCANGAN DAN REALISASI SISTEM ...................... 15
3.1 Perancangan dan Realisasi Perangkat Keras ................... 16
3.1.1
Rangkaian Sumber Tegangan .............................. 16
3.1.2 Rangkaian Mikrokontroler ................................... 17
3.1.3
Rangkaian Antarmuka Serial pada
Mikrokontroler ..................................................... 18
3.1.4
Rangkaian Sensor Deteksi Ketinggian ................. 19
3.2 Perancangan dan Realisasi Perangkat Lunak .................. 20
BAB IV UJI COBA DAN DATA PENGAMATAN .............................. 24
BAB V
4.1
Pengujian Perangkat Lunak ............................................. 24
4.2
Pengujian Perangkat Keras .............................................. 26
4.2.1
Pengujian Respon Mikrokontroler ....................... 26
4.2.2
Pengujian Respon Sistem ..................................... 35
KESIMPULAN DAN SARAN ................................................ 41
5.1
Kesimpulan ...................................................................... 41
5.2
Saran ................................................................................ 42
v
LAMPIRAN:
A. Tampilan Perangkat Keras ..................................... A-1
B. Source Perangkat Lunak ......................................... B-1
C. Skema Rangkaian ..................................................
C-1
D. Data Komponen ...................................................... D-1
vi
DAFTAR GAMBAR
2.1
Tata letak kaki-kaki AT89S8252 .................................................... 12
2.2
Rangkaian komparator .................................................................... 14
2.2
Karakteristik sinyal keluaran kompartor ......................................... 14
3.1
Diagram blok sistem ......................................................................
3.2
Rangkaian sumber tegangan ........................................................... 17
3.3
Rangkaian mikrokontroler .............................................................. 18
3.4
Rangkaian antarmuka serial pada mikrokontroler .......................... 19
3.5
Rangkaian sensor deteksi ketinggian .............................................. 19
3.6
Diagram alir perangkat lunak .......................................................... 20
3.7
Diagram alir pemeriksaan isi SMS dan eksekusinya ...................... 21
3.8
Diagram alir pemeriksaan kebocoran ............................................. 22
vii
15
DAFTAR TABEL
4.1
Format PDU dari pesan yang dikirim ............................................. 25
4.2
Format PDU dari pesan yang diterima ............................................ 26
4.3
Respon menyalakan pompa 1 ......................................................... 27
4.4
Respon mematikan pompa 1 ........................................................... 28
4.5
Respon menutup SV ....................................................................... 29
4.6
Respon membuka SV ...................................................................... 30
4.7
Respon menyalakan pompa 2 ......................................................... 31
4.8
Respon mematikan pompa 2 ........................................................... 32
4.9
Respon kebocoran ........................................................................... 33
4.10 Pengujian respon deteksi kebocoran ............................................... 34
4.11 Hasil ujicoba pengisian dari kosong sampai sensor 1 ..................... 35
4.12 Hasil ujicoba pengisian dari sensor 1 sampai sensor 1 ................... 36
4.13 Hasil ujicoba pengisian dari sensor 1 sampai sensor 3 ................... 36
4.14 Hasil ujicoba pengisian dari sensor 1 sampai sensor 4 ................... 37
4.15 Hasil uji pengosongan dari sensor 4 ............................................... 38
4.16 Hasil uji pengosongan dari sensor 3 ............................................... 38
4.17 Hasil uji pengosongan dari sensor 2 ............................................... 39
4.18 Hasil uji keberhasilan. ……………………………………………. 40
viii
Pendahuluan
BAB I
PENDAHULUAN
Short Massage Service (SMS) atau dikenal pula sebagai pesan singkat
merupakan salah satu fasilitas pada telepon selular. Kegunaan SMS tersebut dapat
dikembangkan sebagai sistem informasi dengan pengiriman data yang relatif cepat
dan jangkauan yang luas.
1.1
Latar Belakang
Kondisi fisik suatu kantor atau pabrik yang sudah cukup dimakan usia
terkadang dapat menimbulkan gangguan pada kinerja kantor tersebut atau proses
produksi di suatu pabrik. Contoh paling nyata adalah pada pipa-pipa saluran air di
suatu pabrik yang sudah dimakan usia mudah terjadi kebocoran. Masalah tersebut
dapat menjadi besar ketika kebocoran tersebut tidak terdeteksi, misalnya
kebocoran tersebut terjadi pada akhir minggu saat para karyawan sedang libur.
Sehingga saat karyawan masuk bekerja kembali pada awal minggu, pabrik sudah
dalam keadaan tergenang air.
Untuk itu diperlukan suatu cara untuk mendeteksi kebocoran tersebut.
Cara yang relatif sederhana adalah dengan melakukan inspeksi pada setiap pipapipa saluran air, tetapi cara tersebut tidak efektif dan akan memakan waktu
terutama jika pipa-pipa saluran air cukup banyak dan panjang. Cara lain yang
dapat dilakukan adalah dengan membuat suatu alat yang dapat mendeteksi dan
memberikan peringatan jika terjadi kebocoran pada pipa-pipa saluran air, alat
pendeteksi tersebut tetap bekerja dan dapat memberikan peringatan walaupun
karyawan sedang libur.
1
Pendahuluan
1.2
Identifikasi Masalah
Untuk
mengendalikan
mikrokontroler
dari
jarak
jauh
dengan
menggunakan layanan SMS terdapat masalah-masalah antara lain:
•
Dapatkah sistem mendeteksi dan memberikan laporan secara otomatis
ketika terjadi kebocoran pada pipa distribusi?
•
Apakah format layanan SMS dapat dimengerti oleh mikrokontroler?
•
Dapatkah mikrokontroler secara otomatis mengirimkan laporan melalui
SMS bila ketinggian air telah tercapai?
1.3
Tujuan
Tugas akhir ini bertujuan membuat suatu alat yang dapat mendeteksi
kebocoran pada pipa distribusi dan memonitor ketinggian air pada tangki
penampung. Laporan dengan fasilitas SMS diberikan melalui mikrokontroler.
1.4
Pembatasan Masalah
Dalam melaksanakan tugas akhir, ini masalah yang ada dibatasi menjadi
beberapa kriteria, yaitu:
•
Sistem distribusi air dibuat dalam bentuk miniatur.
•
Sensor deteksi ketinggian dibuat dengan menggunakan rangkaian
komparator.
•
Standar instruksi komunikasi antara telepon selular dan mikrokontroler
yang digunakan adalah standar AT-Command.
2
Pendahuluan
1.5
Spesifikasi Alat
Dalam pembuatan tugas akhir ini, alat-alat yang dipergunakan memiliki
spesifikasi sebagai berikut:
•
Mikrokontroler yang digunakan adalah buatan Atmel tipe AT89S8252.
•
Menggunakan satu buah telepon selular merk Siemens tipe C35.
•
Sensor deteksi ketinggian yang digunakan berupa rangkaian komparator.
•
Satu buah pompa aquarium buatan Resun tipe SP-3800 dengan kapasitas
2000 liter/jam.
•
Satu buah solenoid valve buatan SMC model VX2120.
•
Satu buah tangki dengan kapasitas 20 liter.
1.6
Sistematika Laporan
Penulisan tugas akhir ini bertujuan agar segala aktivitas yang dilakukan
dapat tersusun dalam bentuk laporan secara jelas, ringkas dan mudah dimengerti.
Sistematika penulisan laporan adalah sebagai berikut:
I. Bab I PENDAHULUAN
Bab ini membahas latar belakang, identifikasi masalah, tujuan, pembatasan
masalah, dan sistematika laporan pada tugas akhir ini.
II. Bab II TEORI PENUNJANG
Bab ini menjelaskan mengenai teori-teori dasar dari buku literatur yang
berhubungan dengan melaksanakan tugas akhir ini.
III. Bab III PERANCANGAN DAN REALISASI ALAT
Bab ini berisikan penjelasan cara-cara perancangan dan realisasi tugas
akhir ini.
IV. Bab IV UJI COBA DAN DATA PENGAMATAN
Bab ini berisikan data-data hasil pengujian dan pengamatan dari tugas
akhir.
V. Bab V KESIMPULAN DAN SARAN
Bab ini memaparkan kesimpulan yang didapat dari tugas akhir ini beserta
saran-saran untuk perbaikan dan pengembangan.
3
LAMPIRAN A
Tampilan Perangkat Keras
Gambar A.1 Foto Sistem secara keseluruhan
Gambar A.2 Foto Rangkaian
A-1
LAMPIRAN B
Source Perangkat Lunak
Lampiran B
;*******************************************************************
;Tugas Akhir : Penggunaan Layanan SMS Berbasis Mikrokontroler Untuk
;Deteksi Kebocoran Saluran Air Dan Monitor Ketinggian Air
;*******************************************************************
;P1.0
;P1.1
;P1.2
;P1.3
PORT
PORT
PORT
PORT
PENUNJUK HUB DGN HP
UTK POMPA1
UTK SV DI BLKNG POMPA2 UTK KEADAAN BOCOR
UTK SV DI DPN POMPA 2 UTK KONTROL ALIRAN
LJMP
NOP
RETI
START1
ORG
RETI
0BH
ORG
RETI
13H
ORG
RETI
1BH
ORG
RETI
23H
COMP:
LIST:
READ:
DELETE:
SEND:
SMSC:
SMSC_SENDER:
NO_SENDER:
DIKRM:
LAPORAN:
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
'A','T','+','C','P','M','S','?',0DH
'A','T','+','C','M','G','L','=','4',0DH
'A','T','+','C','M','G','R','='
'A','T','+','C','M','G','D','='
'A','T','+','C','M','G','S','='
'0','7','9','1','2','6','5','8','0','5','0','0'
'0','0','F','0'
'0','5','9','1','2','6','1','8','1','6','4','2'
'0','C','9','1','2','6','1','8','7','5','0','0'
'6','5','6','4'
'1','B','C','B','3','2','3','D','E','D','3','E'
'9','F','D','3','6','1','3','7'
'2','8','9','C','9','6','8','3','E','6','6','4'
'3','4','8','8','5','E','9','6'
'8','F','C','3','F','0','7','0','1','A'
'2','1','D','4','B','2','5','C','1','D','2','6'
'A','7','4','1','E','B','B','2'
'F','8','3','D','7','E','C','B','C','3','6','E'
'1','6','B','D','E','E','3','E'
'9','F','E','B','2','0','7','8','5','9','9','E'
'7','6','D','3','C','3','6','8'
B-1
Lampiran B
ISI_SMS1:
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
ISI_SMS2:
ISI_SMS3:
ISI_SMS4:
ISI_SMS5:
ISI_SMS6:
ISI_SMS7:
ISI_SMS8:
ISI_SMS9:
ISI_SMS10:
ISI_SMS11:
'0','9','C','9','7','9','1','A','0','4','2','F'
'B','B','E','B','6','8'
'0','7','C','9','7','9','1','A','2','4','7','B'
'C','D','0','0'
'0','7','C','9','7','9','1','A','1','4','7','B'
'C','9','0','0'
'0','7','C','2','F','A','3','A','0','C','9','A'
'5','A','0','1'
'0','8','D','4','3','A','B','D','0','E','0','7'
'4','D','A','D'
'0','B','C','2','F','A','3','A','0','C','0','A'
'B','3','D','3','F','2','B','0','1','B'
'0','C','D','4','3','A','B','D','0','E','0','7'
'8','5','D','9','6','9','7','9','D','8','0','D'
'0','E','5','3','2','B','6','8','4','E','4','6'
'8','3' 'E','8','6','5','B','9','B','8','B','E'
'0','E','0','3'
'0','F','5','3','2','B','6','8','4','E','4','6'
'8','3','E','8','6','5','3','9','B','D','4','E'
'A','F','C','3','0','1'
'2','6','D','4','B','0','F','B','B','C','4','E'
'8','3','D','6','E','F','F','9','D','B','7','D'
'6','6','8','5','D','9','6','9','7','9','D','8'
'0','D','0','A','A','7','E','5','A','0','3','9'
'1','9','0','D','2','2','A','7','D','B','6','1'
'7','A','7','A','1','D','7','6','0','3'
'0','5','D','2','F','2','B','C','4','C','0','7'
;*******************************************************************
;*
MAIN PROGRAM
;*******************************************************************
START1:
MOV
MOV
MOV
MOV
P2,#00H
P1,#00H
A,P2
B,A
START:
MOV
MOV
MOV
MOV
MOV
SETB
SETB
SETB
SETB
SCON,#40H
PCON,#80H
TMOD,#20H
TH1,#0FDH
TCON,#40H
P2.0
P2.1
P2.2
P2.3
B-2
Lampiran B
;*******************************************************************
;*
TDK ADA SMS,CEK KEBOCORAN
;*******************************************************************
CEK_AIR:
LCALL
CLR
MOV
ANL
CJNE
CPL
JMP
DELAY
A
A,P2
A,#00000001B
A,#00000001B,AIR_KSNG
P1.0
NO_SMS
AIR_KSNG:
CLR
SETB
LCALL
CLR
CLR
MOV
MOV
JMP
P1.3
P1.1
DELAY2
P1.1
A
A,P2
B,A
CEK_AIR
NO_SMS:
CLR
MOV
MOV
MOV
XRL
CJNE
JMP
JB
JMP
A
A,B
R0,#56H
@R0,P2
A,@R0
A,#00H,BOCOR
TUNGGU_PRNT
P1.3,TUNGGU_PRNT
KNDS_BCR
BOCOR:
;*******************************************************************
;*
BACA SEMUA SMS
;*******************************************************************
TUNGGU_PRNT:
CLR
MOV
MOV
LIST1:
MOV
MOVC
MOV
JNB
CLR
INC
CJNE
SETB
MOV
TI
R4,#00H
DPTR,#LIST
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
A,#0DH,LIST1
REN
R1,#80H
B-3
Lampiran B
;*******************************************************************
;
SMS DI INDEX & SIMPAN INDEX EEPROM
;*******************************************************************
EEWRT:
INDEX:
ORL
ORL
MOV
MOV
WMCON,#EEMEN
WMCON,#EEMWE
DPTR,#000H
R0,#80H
MOV
MOVX
LCALL
INC
DEC
INC
A,@R0
@DPTR,A
DELAY
DPTR
R1
R0
CJNE
XRL
R1,#80H,EEWRT
WMCON,#EEMWE
ORL
ORL
MOV
WMCON,#EEMEN
WMCON,#EEMWE
DPTR,#000H
MOVX
LCALL
INC
MOV
XRL
XRL
A,@DPTR
DELAY
DPTR
R3,A
WMCON,#EEMWE
WMCON,#EEMEN
JZ
CEK_AIR
B-4
Lampiran B
;*******************************************************************
;
BACA SMS SATU PERSATU
;*******************************************************************
BANDING1:
READ1:
LAGI4:
LAGI5:
CLR
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
CJNE
MOV
MOV
JNB
CLR
MOV
JNB
CLR
TI
R4,#00H
DPTR,#READ
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
A,#'=',READ1
A,R3
SBUF,A
TI,$
TI
SBUF,#13
TI,$
TI
SETB
MOV
MOV
JNB
MOV
CLR
CJNE
DEC
CJNE
JNB
MOV
CLR
MOV
INC
CJNE
REN
R0,#02H
R1,#5AH
RI,$
A,SBUF
RI
A,#0AH,LAGI4
R0
R0,#00H,LAGI4
RI,$
A,SBUF
RI
@R1,A
R1
A,#0DH,LAGI5
;*******************************************************************
;*
BANDINGKAN SMS CENTER PENGIRIM
;*******************************************************************
CSMSC1:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
R5,#00H
R0,#59H
DPTR,#SMSC_SENDER
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
B-5
Lampiran B
CSMSC2:
CJNE
SJMP
XRL
CJNE
SJMP
R5,#0DH,CSMSC2
NEXT1
A,@R0
A,#00H,LJT
CSMSC1
;*******************************************************************
;*
BANDINGKAN NO PENGIRIM
;*******************************************************************
NEXT1:
CNOS:
CNOS2:
LJT:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R5,#00H
R0,#67H
DPTR,#NO_SENDER
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
R5,#11H,CNOS2
NEXT2
A,@R0
A,#00H,LJT
CNOS
LCALL HAPUS
JMP
CEK_AIR
;*******************************************************************
;*
BANDINGKAN ISI SMS: ISI PENUH
;*******************************************************************
NEXT2:
CISI:
CISI1:
ISIPNH:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R5,#00H
R0,#89H
DPTR,#ISI_SMS1
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
R5,#13H,CISI1
ISIPNH
A,@R0
A,#00H,NEXT3
CISI
LCALL HAPUS
SETB P1.1
JB
P2.1,ISIPNH
B-6
Lampiran B
JB
P2.2,ISIPNH
JB
P2.3,ISIPNH
LCALL DELAY1
LCALL DELAY1
LCALL DELAY1
CLR
P1.1
MOV
B,#01H
LCALL DELAY2
;******************************************************
;
LAPORAN KETINGGIAN TERCAPAI
;******************************************************
LCALL KIRIM
LCALL SMS_SUM1
LCALL WAIT
LCALL SMSC_OP
LCALL TYPE
LCALL NOMOR
LCALL TIME
MOV
DPTR,#DIKRM
LCALL DTA1
MOV
SBUF,#26
JNB
TI,$
CLR
TI
JMP
CEK_AIR
;*******************************************************************
;*
BANDINGKAN ISI SMS: ISI 2/3
;*******************************************************************
NEXT3:
CISI2:
CISI3:
ISI2_3:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R5,#00H
R0,#89H
DPTR,#ISI_SMS2
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
R5,#11H,CISI3
ISI2_3
A,@R0
A,#00H,NEXT4
CISI2
LCALL
SETB
JB
JB
LCALL
LCALL
LCALL
HAPUS
P1.1
P2.1,ISI2_3
P2.2,ISI2_3
DELAY1
DELAY1
DELAY1
B-7
Lampiran B
CLR
P1.1
MOV
B,#09H
LCALL DELAY2
;******************************************************
;
LAPORAN KETINGGIAN TERCAPAI
;******************************************************
LCALL KIRIM
LCALL SMS_SUM1
LCALL WAIT
LCALL SMSC_OP
LCALL TYPE
LCALL NOMOR
LCALL TIME
MOV
DPTR,#DIKRM
LCALL DTA1
MOV
SBUF,#26
JNB
TI,$
CLR
TI
JMP
CEK_AIR
;*******************************************************************
;*
BANDINGKAN ISI SMS: ISI 1/2
;*******************************************************************
NEXT4:
CISI4:
CISI5:
ISI1_2:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R5,#00H
R0,#89H
DPTR,#ISI_SMS3
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
R5,#11H,CISI5
ISI1_2
A,@R0
A,#00H,NEXT5
CISI4
LCALL
SETB
JB
LCALL
LCALL
LCALL
CLR
MOV
LCALL
HAPUS
P1.1
P2.1,ISI1_2
DELAY1
DELAY1
DELAY1
P1.1
B,#0DH
DELAY2
B-8
Lampiran B
;******************************************************
;
LAPORAN KETINGGIAN TERCAPAI
;******************************************************
LCALL KIRIM
LCALL SMS_SUM1
LCALL WAIT
LCALL SMSC_OP
LCALL TYPE
LCALL NOMOR
LCALL TIME
MOV
DPTR,#DIKRM
LCALL DTA1
MOV
SBUF,#26
JNB
TI,$
CLR
TI
JMP
CEK_AIR
;*******************************************************************
;*
BANDINGKAN ISI SMS: BUKA ALIRAN
;*******************************************************************
NEXT5:
CISI6:
CISI7:
ISI_BKSV:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R5,#00H
R0,#89H
DPTR,#ISI_SMS6
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
R5,#17H,CISI7
ISI_BKSV
A,@R0
A,#00H,NEXT6
CISI6
LCALL HAPUS
SETB P1.3
JMP
CEK_AIR
;*******************************************************************
;*
BANDINGKAN ISI SMS: TUTUP ALIRAN
;*******************************************************************
NEXT6:
CISI8:
MOV
MOV
MOV
MOV
MOV
MOVC
R5,#00H
R0,#89H
DPTR,#ISI_SMS7
R4,#00H
A,R4
A,@A+DPTR
B-9
Lampiran B
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R0
R4
R5
R5,#19H,CISI9
ISI_TTPSV
A,@R0
A,#00H,LJT1
CISI8
ISI_TTPSV:
LCALL
CLR
MOV
MOV
JMP
HAPUS
P1.3
A,P2
B,A
CEK_AIR
LJT1:
LCALL HAPUS
JMP
CEK_AIR
CISI9:
;*******************************************************************
;
SEND A SMS
;*******************************************************************
KIRIM:
CLR
CLR
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
CJNE
RET
RI
TI
R4,#00H
DPTR,#SEND
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
A,#'=',KRM1
SMS_SUM1:
MOV
JNB
CLR
MOV
JNB
CLR
MOV
JNB
CLR
RET
SBUF,#'3'
TI,$
TI
SBUF,#'7'
TI,$
TI
SBUF,#0DH
TI,$
TI
SMS_SUM2:
MOV
JNB
CLR
MOV
JNB
SBUF,#'4'
TI,$
TI
SBUF,#'2'
TI,$
KRM1:
B-10
Lampiran B
CLR
MOV
JNB
CLR
RET
TI
SBUF,#0DH
TI,$
TI
SMS_SUM3:
MOV
JNB
CLR
MOV
JNB
CLR
MOV
JNB
CLR
RET
SBUF,#'2'
TI,$
TI
SBUF,#'7'
TI,$
TI
SBUF,#0DH
TI,$
TI
SMS_SUM4:
MOV
JNB
CLR
MOV
JNB
CLR
MOV
JNB
CLR
RET
SBUF,#'2'
TI,$
TI
SBUF,#'6'
TI,$
TI
SBUF,#0DH
TI,$
TI
SMS_SUM5:
MOV
JNB
CLR
MOV
JNB
CLR
MOV
JNB
CLR
RET
SBUF,#'4'
TI,$
TI
SBUF,#'7'
TI,$
TI
SBUF,#0DH
TI,$
TI
SMS_SUM6:
MOV
JNB
CLR
MOV
JNB
CLR
MOV
JNB
CLR
RET
SBUF,#'1'
TI,$
TI
SBUF,#'8'
TI,$
TI
SBUF,#0DH
TI,$
TI
WAIT:
CLR
SETB
RI
REN
B-11
Lampiran B
WT1:
JNB
MOV
CLR
CJNE
RET
RI,$
A,SBUF
RI
A,#0DH,WT1
SMSC_OP:
MOV
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
INC
CJNE
RET
R5,#00H
DPTR,#SMSC
R4,#00H
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
R5
R5,#10H,OP1
TYPE:
MOV
JNB
CLR
MOV
JNB
CLR
MOV
JNB
CLR
MOV
JNB
CLR
RET
SBUF,#'0'
TI,$
TI
SBUF,#'1'
TI,$
TI
SBUF,#'0'
TI,$
TI
SBUF,#'0'
TI,$
TI
NOMOR:
MOV
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
INC
CJNE
RET
R5,#00H
DPTR,#NO_SENDER
R4,#00H
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
R5
R5,#10H,NM1
MOV
JNB
CLR
MOV
JNB
CLR
SBUF,#'0'
TI,$
TI
SBUF,#'0'
TI,$
TI
OP1:
NM1:
TIME:
B-12
Lampiran B
DTA1:
DT1:
DTA2:
DT2:
DTA3:
DT3:
DTA4:
DT4:
MOV
JNB
CLR
MOV
JNB
CLR
RET
SBUF,#'0'
TI,$
TI
SBUF,#'0'
TI,$
TI
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
INC
CJNE
RET
R5,#00H
R4,#00H
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
R5
R5,#32H,DT1
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
INC
CJNE
RET
R5,#00H
R4,#00H
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
R5
R5,#3CH,DT2
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
INC
CJNE
RET
R5,#00H
R4,#00H
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
R5
R5,#1EH,DT3
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
R5,#00H
R4,#00H
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
B-13
Lampiran B
DTA5:
DT5:
DTA6:
DT6:
INC
CJNE
RET
R5
R5,#1CH,DT4
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
INC
CJNE
RET
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
INC
CJNE
RET
R5,#00H
R4,#00H
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
R5
R5,#46H,DT5
R5,#00H
R4,#00H
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
R5
R5,#0CH,DT6
;*******************************************************************
;*
HAPUS SMS
;*******************************************************************
HAPUS:
DEL1:
CLR
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
CJNE
MOV
MOV
JNB
CLR
MOV
JNB
CLR
LCALL
RET
TI
R4,#00H
DPTR,#DELETE
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
A,#'=',DEL1
A,R3
SBUF,A
TI,$
TI
SBUF,#13
TI,$
TI
DELAY
B-14
Lampiran B
;*******************************************************************
;*
DELAY
;*******************************************************************
DELAY:
ULANG2:
ULANG1:
ULANG:
MOV
MOV
MOV
INC
CJNE
INC
CJNE
INC
CJNE
RET
R7,#0
R6,#0
R5,#0
R5
R5,#15H,ULANG
R6
R6,#15H,ULANG1
R7
R7,#15H,ULANG2
DELAY1:
ULANG5:
ULANG4:
ULANG3:
MOV
MOV
MOV
INC
CJNE
INC
CJNE
INC
CJNE
RET
R7,#0
R6,#0
R5,#0
R5
R5,#40H,ULANG3
R6
R6,#40H,ULANG4
R7
R7,#40H,ULANG5
DELAY2:
ULANG8:
ULANG7:
ULANG6:
MOV
MOV
MOV
INC
CJNE
INC
CJNE
INC
CJNE
RET
R7,#0
R6,#0
R5,#0
R5
R5,#90H,ULANG6
R6
R6,#90H,ULANG7
R7
R7,#90H,ULANG8
;*******************************************************************
;*
JIKA KEBOCORAN TERJADI
;*******************************************************************
KNDS_BCR:
LCALL
LCALL
LCALL
LCALL
LCALL
LCALL
LCALL
MOV
KIRIM
SMS_SUM2
WAIT
SMSC_OP
TYPE
NOMOR
TIME
DPTR,#LAPORAN
B-15
Lampiran B
LCALL
MOV
JNB
CLR
DTA2
SBUF,#26
TI,$
TI
;*******************************************************************
;*
CEK SMS DATANG
;*******************************************************************
TUNGGU_PRNT2:
CLR
MOV
MOV
LIST4:
MOV
MOVC
MOV
JNB
CLR
INC
CJNE
SETB
MOV
LIST5:
LIST6:
EEWRT1:
TI
R4,#00H
DPTR,#LIST
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
A,#0DH,LIST4
REN
R1,#80H
JNB
MOV
CLR
CJNE
JNB
MOV
CLR
MOV
INC
CJNE
CLR
ORL
ORL
MOV
MOV
MOV
MOV
MOVX
LCALL
INC
DEC
INC
INC
CJNE
XRL
XRL
RI,$
A,SBUF
RI
A,#20H,LIST6
RI,$
A,SBUF
RI
@R1,A
R1
A,#4BH,LIST5
REN
WMCON,#EEMEN
WMCON,#EEMWE
DPTR,#000H
R0,#80H
R2,#00H
A,@R0
@DPTR,A
DELAY
DPTR
R1
R0
R2
R1,#80H,EEWRT1
WMCON,#EEMWE
WMCON,#EEMEN
ORL
WMCON,#EEMEN
B-16
Lampiran B
INDEX2:
INDEX3:
ORL
MOV
PUSH
PUSH
CJNE
JMP
POP
POP
MOVX
LCALL
INC
PUSH
PUSH
MOV
DEC
XRL
XRL
WMCON,#EEMWE
DPTR,#000H
DPL
DPH
R2,#00H,INDEX3
TUNGGU_PRNT2
DPH
DPL
A,@DPTR
DELAY
DPTR
DPL
DPH
R3,A
R2
WMCON,#EEMWE
WMCON,#EEMEN
;*******************************************************************
;
BACA SMS YG DATANG
;*******************************************************************
BANDING2:
READ2:
LAGI6:
LAGI7:
CLR
MOV
MOV
MOV
MOVC
MOV
JNB
CLR
INC
CJNE
MOV
MOV
JNB
CLR
MOV
JNB
CLR
TI
R4,#00H
DPTR,#READ
A,R4
A,@A+DPTR
SBUF,A
TI,$
TI
R4
A,#'=',READ2
A,R3
SBUF,A
TI,$
TI
SBUF,#13
TI,$
TI
SETB
MOV
MOV
JNB
MOV
CLR
CJNE
DEC
CJNE
JNB
MOV
REN
R0,#02H
R1,#5AH
RI,$
A,SBUF
RI
A,#0AH,LAGI6
R0
R0,#00H,LAGI6
RI,$
A,SBUF
B-17
Lampiran B
CLR
MOV
INC
CJNE
RI
@R1,A
R1
A,#0DH,LAGI7
;*******************************************************************
;*
BANDINGKAN SMS CENTER PENGIRIM
;*******************************************************************
CSMSC3:
CSMSC4:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R5,#00H
R0,#59H
DPTR,#SMSC_SENDER
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
R5,#0DH,CSMSC4
NEXT7
A,@R0
A,#00H,LJTA
CSMSC3
;*******************************************************************
;*
BANDINGKAN NO PENGIRIM
;*******************************************************************
NEXT7:
CNOS3:
CNOS4:
LJTA:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R5,#00H
R0,#67H
DPTR,#NO_SENDER
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
R5,#11H,CNOS4
NEXT8
A,@R0
A,#00H,LJTA
CNOS3
LCALL HAPUS
JMP
TUNGGU_PRNT2
B-18
Lampiran B
;*******************************************************************
;*
BANDINGKAN ISI SMS: BUKA SV
;*******************************************************************
NEXT8:
CISI10:
CISI11:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R5,#00H
R0,#89H
DPTR,#ISI_SMS4
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
R5,#11H,CISI11
TTPSV
A,@R0
A,#00H,NEXT9
CISI10
;*******************************************************************
;*
BANDINGKAN ISI SMS: TUTUP SV
;*******************************************************************
NEXT9:
CISI12:
CISI13:
MOV
MOV
MOV
MOV
MOV
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
R5,#00H
R0,#89H
DPTR,#ISI_SMS5
R4,#00H
A,R4
A,@A+DPTR
R0
R4
R5
R5,#11H,CISI13
BUKASV
A,@R0
A,#00H,NEXT10
CISI12
;*******************************************************************
;*
BANDINGKAN ISI SMS: RESET
;*******************************************************************
NEXT10:
CISI14:
MOV
MOV
MOV
MOV
MOV
R5,#00H
R0,#89H
DPTR,#ISI_SMS11
R4,#00H
A,R4
B-19
Lampiran B
CISI15:
MOVC
INC
INC
INC
CJNE
SJMP
XRL
CJNE
SJMP
A,@A+DPTR
R0
R4
R5
R5,#0DH,CISI15
RST
A,@R0
A,#00H,LJTB
CISI14
BUKASV:
LCALL DELAY
LCALL HAPUS
CLR
P1.2
;******************************************************
;
LAPORAN KONDISI SV DITUTUP
;******************************************************
LCALL DELAY2
LCALL KIRIM
LCALL SMS_SUM3
LCALL WAIT
LCALL SMSC_OP
LCALL TYPE
LCALL NOMOR
LCALL TIME
MOV
DPTR,#ISI_SMS9
LCALL DTA3
MOV
SBUF,#26
JNB
TI,$
CLR
TI
JMP
TUNGGU_PRNT2
TTPSV:
LCALL DELAY
LCALL HAPUS
SETB P1.2
CLR
P1.2
SETB P1.2
;******************************************************
;
LAPORAN KONDISI SV DIBUKA
;******************************************************
LCALL DELAY2
LCALL KIRIM
LCALL SMS_SUM4
LCALL WAIT
LCALL SMSC_OP
LCALL TYPE
LCALL NOMOR
LCALL TIME
MOV
DPTR,#ISI_SMS8
LCALL DTA4
MOV
SBUF,#26
JNB
TI,$
CLR
TI
B-20
Lampiran B
JMP
TUNGGU_PRNT2
LJTB:
LCALL HAPUS
LCALL DELAY
JMP
TUNGGU_PRNT2
RST:
LCALL
SETB
MOV
MOV
JMP
DELAY
P1.2
A,P2
B,A
AWAL
;*******************************************************************
;*
AKHIR PROGRAM
;*******************************************************************
AKH:
NOP
SJMP
END;
AKH
B-21
LAMPIRAN C
Skema Rangkaian
Lampiran C
C-1
Lampiran C
C-2
LAMPIRAN D
Data Komponen
Features
• Compatible with MCS®51 Products
• 8K Bytes of In-System Reprogrammable Downloadable Flash Memory
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
– SPI Serial Interface for Program Downloading
– Endurance: 1,000 Write/Erase Cycles
2K Bytes EEPROM
– Endurance: 100,000 Write/Erase Cycles
4V to 6V Operating Range
Fully Static Operation: 0 Hz to 24 MHz
Three-level Program Memory Lock
256 x 8-bit Internal RAM
32 Programmable I/O Lines
Three 16-bit Timer/Counters
Nine Interrupt Sources
Programmable UART Serial Channel
SPI Serial Interface
Low-power Idle and Power-down Modes
Interrupt Recovery from Power-down
Programmable Watchdog Timer
Dual Data Pointer
Power-off Flag
8-bit
Microcontroller
with 8K Bytes
Flash
AT89S8252
Description
The AT89S8252 is a low-power, high-performance CMOS 8-bit microcontroller with 8K
bytes of downloadable Flash programmable and erasable read-only memory and 2K
bytes of EEPROM. The device is manufactured using Atmel’s high-density nonvolatile
memory technology and is compatible with the industry-standard 80C51 instruction
set and pinout. The on-chip downloadable Flash allows the program memory to be
reprogrammed In-System through an SPI serial interface or by a conventional nonvolatile memory programmer. By combining a versatile 8-bit CPU with downloadable
Flash on a monolithic chip, the Atmel AT89S8252 is a powerful microcontroller, which
provides a highly-flexible and cost-effective solution to many embedded control
applications.
The AT89S8252 provides the following standard features: 8K bytes of downloadable
Flash, 2K bytes of EEPROM, 256 bytes of RAM, 32 I/O lines, programmable watchdog
timer, two data pointers, three 16-bit timer/counters, a six-vector two-level interrupt
architecture, a full duplex serial port, on-chip oscillator, and clock circuitry. In addition,
the AT89S8252 is designed with static logic for operation down to zero frequency and
supports two software selectable power saving modes. The Idle Mode stops the CPU
while allowing the RAM, timer/counters, serial port, and interrupt system to continue
functioning. The Power-down mode saves the RAM contents but freezes the oscillator,
disabling all other chip functions until the next external interrupt or hardware reset.
The downloadable Flash can be changed a single byte at a time and is accessible
through the SPI serial interface. Holding RESET active forces the SPI bus into a serial
programming interface and allows the program memory to be written to or read from
unless lock bits have been activated.
0401F–MICRO–11/03
1
Pin Configurations
TQFP
VCC
P0.0 (AD0)
P0.1 (AD1)
P0.2 (AD2)
P0.3 (AD3)
P0.4 (AD4)
P0.5 (AD5)
P0.6 (AD6)
P0.7 (AD7)
EA/VPP
ALE/PROG
PSEN
P2.7 (A15)
P2.6 (A14)
P2.5 (A13)
P2.4 (A12)
P2.3 (A11)
P2.2 (A10)
P2.1 (A9)
P2.0 (A8)
44
43
42
41
40
39
38
37
36
35
34
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
(MOSI) P1.5
(MISO) P1.6
(SCK) P1.7
RST
(RXD) P3.0
NC
(TXD) P3.1
(INT0) P3.2
(INT1) P3.3
(T0) P3.4
(T1) P3.5
33
32
31
30
29
28
27
26
25
24
23
1
2
3
4
5
6
7
8
9
10
11
P0.4 (AD4)
P0.5 (AD5)
P0.6 (AD6)
P0.7 (AD7)
EA/VPP
NC
ALE/PROG
PSEN
P2.7 (A15)
P2.6 (A14)
P2.5 (A13)
12
13
14
15
16
17
18
19
20
21
22
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
(WR) P3.6
(RD) P3.7
XTAL2
XTAL1
GND
GND
(A8) P2.0
(A9) P2.1
(A10) P2.2
(A11) P2.3
(A12) P2.4
(T2) P1.0
(T2 EX) P1.1
P1.2
P1.3
(SS) P1.4
(MOSI) P1.5
(MISO) P1.6
(SCK) P1.7
RST
(RXD) P3.0
(TXD) P3.1
(INT0) P3.2
(INT1) P3.3
(T0) P3.4
(T1) P3.5
(WR) P3.6
(RD) P3.7
XTAL2
XTAL1
GND
P1.4 (SS)
P1.3
P1.2
P1.1 (T2 EX)
P1.0 (T2)
NC
VCC
P0.0 (AD0)
P0.1 (AD1)
P0.2 (AD2)
P0.3 (AD3)
PDIP
39
38
37
36
35
34
33
32
31
30
29
18
19
20
21
22
23
24
25
26
27
28
7
8
9
10
11
12
13
14
15
16
17
P0.4 (AD4)
P0.5 (AD5)
P0.6 (AD6)
P0.7 (AD7)
EA/VPP
NC
ALE/PROG
PSEN
P2.7 (A15)
P2.6 (A14)
P2.5 (A13)
(WR) P3.6
(RD) P3.7
XTAL2
XTAL1
GND
NC
(A8) P2.0
(A9) P2.1
(A10) P2.2
(A11) P2.3
(A12) P2.4
(MOSI) P1.5
(MISO) P1.6
(SCK) P1.7
RST
(RXD) P3.0
NC
(TXD) P3.1
(INT0) P3.2
(INT1) P3.3
(T0) P3.4
(T1) P3.5
6
5
4
3
2
1
44
43
42
41
40
P1.4 (SS)
P1.3
P1.2
P1.1 (T2 EX)
P1.0 (T2)
NC
VCC
P0.0 (AD0)
P0.1 (AD1)
P0.2 (AD2)
P0.3 (AD3)
PLCC
Pin Description
VCC
Supply voltage.
GND
Ground.
Port 0
Port 0 is an 8-bit open drain bi-didirectional I/O port. As an output port, each pin can
sink eight TTL inputs. When 1s are written to port 0 pins, the pins can be used as highimpedance inputs.
Port 0 can also be configured to be the multiplexed low-order address/data bus during
accesses to external program and data memory. In this mode, P0 has internal pull-ups.
Port 0 also receives the code bytes during Flash programming and outputs the code
bytes during program verification. External pull-ups are required during program
verification.
Port 1
2
Port 1 is an 8-bit bi-directional I/O port with internal pull-ups. The Port 1 output buffers
can sink/source four TTL inputs. When 1s are written to Port 1 pins, they are pulled high
by the internal pull-ups and can be used as inputs. As inputs, Port 1 pins that are externally being pulled low will source current (IIL) because of the internal pull-ups.
AT89S8252
0401F–MICRO–11/03
AT89S8252
Block Diagram
P0.0 - P0.7
P2.0 - P2.7
PORT 0 DRIVERS
PORT 2 DRIVERS
VCC
GND
EEPROM
RAM ADDR.
REGISTER
B
REGISTER
PORT 0
LATCH
RAM
PORT 2
LATCH
FLASH
PROGRAM
ADDRESS
REGISTER
STACK
POINTER
ACC
BUFFER
TMP2
TMP1
PC
INCREMENTER
ALU
INTERRUPT, SERIAL PORT,
AND TIMER BLOCKS
PROGRAM
COUNTER
PSW
PSEN
ALE/PROG
EA / VPP
TIMING
AND
CONTROL
DUAL
DPTR
INSTRUCTION
REGISTER
RST
WATCH
DOG
PORT 3
LATCH
PORT 1
LATCH
SPI
PORT
PROGRAM
LOGIC
OSC
PORT 3 DRIVERS
P3.0 - P3.7
PORT 1 DRIVERS
P1.0 - P1.7
3
0401F–MICRO–11/03
Some Port 1 pins provide additional functions. P1.0 and P1.1 can be configured to be
the timer/counter 2 external count input (P1.0/T2) and the timer/counter 2 trigger input
(P1.1/T2EX), respectively.
Furthermore, P1.4, P1.5, P1.6, and P1.7 can be configured as the SPI slave port select,
data input/output and shift clock input/output pins as shown in the following table.
Port Pin
Alternate Functions
P1.0
T2 (external count input to Timer/Counter 2), clock-out
P1.1
T2EX (Timer/Counter 2 capture/reload trigger and direction control)
P1.4
SS (Slave port select input)
P1.5
MOSI (Master data output, slave data input pin for SPI channel)
P1.6
MISO (Master data input, slave data output pin for SPI channel)
P1.7
SCK (Master clock output, slave clock input pin for SPI channel)
Port 1 also receives the low-order address bytes during Flash programming and
verification.
Port 2
Port 2 is an 8-bit bi-directional I/O port with internal pull-ups. The Port 2 output buffers
can sink/source four TTL inputs. When 1s are written to Port 2 pins, they are pulled high
by the internal pull-ups and can be used as inputs. As inputs, Port 2 pins that are externally being pulled low will source current (IIL) because of the internal pull-ups.
Port 2 emits the high-order address byte during fetches from external program memory
and during accesses to external data memory that use 16-bit addresses (MOVX @
DPTR). In this application, Port 2 uses strong internal pull-ups when emitting 1s. During
accesses to external data memory that use 8-bit addresses (MOVX @ RI), Port 2 emits
the contents of the P2 Special Function Register.
Port 2 also receives the high-order address bits and some control signals during Flash
programming and verification.
Port 3
Port 3 is an 8-bit bi-directional I/O port with internal pull-ups. The Port 3 output buffers
can sink/source four TTL inputs. When 1s are written to Port 3 pins, they are pulled high
by the internal pull-ups and can be used as inputs. As inputs, Port 3 pins that are externally being pulled low will source current (IIL) because of the pull-ups.
Port 3 receives some control signals for Flash programming and verification.
Port 3 also serves the functions of various special features of the AT89S8252, as shown
in the following table.
4
AT89S8252
0401F–MICRO–11/03
AT89S8252
Port Pin
Alternate Functions
P3.0
RXD (serial input port)
P3.1
TXD (serial output port)
P3.2
INT0 (external interrupt 0)
P3.3
INT1 (external interrupt 1)
P3.4
T0 (timer 0 external input)
P3.5
T1 (timer 1 external input)
P3.6
WR (external data memory write strobe)
P3.7
RD (external data memory read strobe)
RST
Reset input. A high on this pin for two machine cycles while the oscillator is running
resets the device.
ALE/PROG
Address Latch Enable is an output pulse for latching the low byte of the address during
accesses to external memory. This pin is also the program pulse input (PROG) during
Flash programming.
In normal operation, ALE is emitted at a constant rate of 1/6 the oscillator frequency and
may be used for external timing or clocking purposes. Note, however, that one ALE
pulse is skipped during each access to external data memory.
If desired, ALE operation can be disabled by setting bit 0 of SFR location 8EH. With the
bit set, ALE is active only during a MOVX or MOVC instruction. Otherwise, the pin is
weakly pulled high. Setting the ALE-disable bit has no effect if the microcontroller is in
external execution mode.
PSEN
Program Store Enable is the read strobe to external program memory.
When the AT89S8252 is executing code from external program memory, PSEN is activated twice each machine cycle, except that two PSEN activations are skipped during
each access to external data memory.
EA/VPP
External Access Enable. EA must be strapped to GND in order to enable the device to
fetch code from external program memory locations starting at 0000H up to FFFFH.
Note, however, that if lock bit 1 is programmed, EA will be internally latched on reset.
EA should be strapped to VCC for internal program executions. This pin also receives the
12-volt programming enable voltage (VPP) during Flash programming when 12-volt programming is selected.
XTAL1
Input to the inverting oscillator amplifier and input to the internal clock operating circuit.
XTAL2
Output from the inverting oscillator amplifier.
5
0401F–MICRO–11/03
19-4323; Rev 14; 8/04
+5V-Powered, Multichannel RS-232
Drivers/Receivers
The MAX220–MAX249 family of line drivers/receivers is
intended for all EIA/TIA-232E and V.28/V.24 communications interfaces, particularly applications where ±12V is
not available.
These parts are especially useful in battery-powered systems, since their low-power shutdown mode reduces
power dissipation to less than 5µW. The MAX225,
MAX233, MAX235, and MAX245/MAX246/MAX247 use
no external components and are recommended for applications where printed circuit board space is critical.
Next-Generation
Device Features
♦ For Low-Voltage, Integrated ESD Applications
MAX3222E/MAX3232E/MAX3237E/MAX3241E/
MAX3246E: +3.0V to +5.5V, Low-Power, Up to
1Mbps, True RS-232 Transceivers Using Four
0.1µF External Capacitors (MAX3246E Available
in a UCSP™ Package)
♦ For Low-Cost Applications
MAX221E: ±15kV ESD-Protected, +5V, 1µA,
Single RS-232 Transceiver with AutoShutdown™
________________________Applications
Ordering Information
Portable Computers
PART
MAX220CPE
MAX220CSE
MAX220CWE
MAX220C/D
MAX220EPE
MAX220ESE
MAX220EWE
MAX220EJE
MAX220MJE
Low-Power Modems
Interface Translation
Battery-Powered RS-232 Systems
Multidrop RS-232 Networks
AutoShutdown and UCSP are trademarks of Maxim Integrated
Products, Inc.
TEMP RANGE
0°C to +70°C
0°C to +70°C
0°C to +70°C
0°C to +70°C
-40°C to +85°C
-40°C to +85°C
-40°C to +85°C
-40°C to +85°C
-55°C to +125°C
PIN-PACKAGE
16 Plastic DIP
16 Narrow SO
16 Wide SO
Dice*
16 Plastic DIP
16 Narrow SO
16 Wide SO
16 CERDIP
16 CERDIP
Ordering Information continued at end of data sheet.
*Contact factory for dice specifications.
Selection Table
Part
Number
MAX220
MAX222
MAX223 (MAX213)
MAX225
MAX230 (MAX200)
MAX231 (MAX201)
MAX232 (MAX202)
MAX232A
MAX233 (MAX203)
MAX233A
MAX234 (MAX204)
MAX235 (MAX205)
MAX236 (MAX206)
MAX237 (MAX207)
MAX238 (MAX208)
MAX239 (MAX209)
MAX240
MAX241 (MAX211)
MAX242
MAX243
MAX244
MAX245
MAX246
MAX247
MAX248
MAX249
Power
Supply
(V)
+5
+5
+5
+5
+5
+5 and
+7.5 to +13.2
+5
+5
+5
+5
+5
+5
+5
+5
+5
+5 and
+7.5 to +13.2
+5
+5
+5
+5
+5
+5
+5
+5
+5
+5
No. of
RS-232
Drivers/Rx
2/2
2/2
4/5
5/5
5/0
2/2
No. of
Ext. Caps
4
4
4
0
4
2
Nominal
Cap. Value
(µF)
0.047/0.33
0.1
1.0 (0.1)
—
1.0 (0.1)
1.0 (0.1)
SHDN
& ThreeState
No
Yes
Yes
Yes
Yes
No
Rx
Active in
SHDN
—
—
✔
✔
—
—
Data Rate
(kbps)
120
200
120
120
120
120
2/2
2/2
2/2
2/2
4/0
5/5
4/3
5/3
4/4
3/5
4
4
0
0
4
0
4
4
4
2
1.0 (0.1)
0.1
—
—
1.0 (0.1)
—
1.0 (0.1)
1.0 (0.1)
1.0 (0.1)
1.0 (0.1)
No
No
No
No
No
Yes
Yes
No
No
No
—
—
—
—
—
—
—
—
—
—
120 (64)
200
120
200
120
120
120
120
120
120
5/5
4/5
2/2
2/2
8/10
8/10
8/10
8/9
8/8
6/10
4
4
4
4
4
0
0
0
4
4
1.0
1.0 (0.1)
0.1
0.1
1.0
—
—
—
1.0
1.0
Yes
Yes
Yes
No
No
Yes
Yes
Yes
Yes
Yes
—
—
✔
—
—
✔
✔
✔
✔
✔
120
120
200
200
120
120
120
120
120
120
Features
Ultra-low-power, industry-standard pinout
Low-power shutdown
MAX241 and receivers active in shutdown
Available in SO
5 drivers with shutdown
Standard +5/+12V or battery supplies;
same functions as MAX232
Industry standard
Higher slew rate, small caps
No external caps
No external caps, high slew rate
Replaces 1488
No external caps
Shutdown, three state
Complements IBM PC serial port
Replaces 1488 and 1489
Standard +5/+12V or battery supplies;
single-package solution for IBM PC serial port
DIP or flatpack package
Complete IBM PC serial port
Separate shutdown and enable
Open-line detection simplifies cabling
High slew rate
High slew rate, int. caps, two shutdown modes
High slew rate, int. caps, three shutdown modes
High slew rate, int. caps, nine operating modes
High slew rate, selective half-chip enables
Available in quad flatpack package
________________________________________________________________ Maxim Integrated Products
For pricing, delivery, and ordering information, please contact Maxim/Dallas Direct! at
1-888-629-4642, or visit Maxim’s website at www.maxim-ic.com.
1
MAX220–MAX249
General Description
MAX220–MAX249
+5V-Powered, Multichannel RS-232
Drivers/Receivers
ABSOLUTE MAXIMUM RATINGS—MAX220/222/232A/233A/242/243
Supply Voltage (VCC) ...............................................-0.3V to +6V
V+ (Note 1) ..................................................(VCC - 0.3V) to +14V
V- (Note 1) .............................................................+0.3V to +14V
Input Voltages
TIN..............................................................-0.3V to (VCC - 0.3V)
RIN (Except MAX220) ........................................................±30V
RIN (MAX220).....................................................................±25V
TOUT (Except MAX220) (Note 2) .......................................±15V
TOUT (MAX220)...............................................................±13.2V
Output Voltages
TOUT ...................................................................................±15V
ROUT .........................................................-0.3V to (VCC + 0.3V)
Driver/Receiver Output Short Circuited to GND.........Continuous
Continuous Power Dissipation (TA = +70°C)
16-Pin Plastic DIP (derate 10.53mW/°C above +70°C)..842mW
18-Pin Plastic DIP (derate 11.11mW/°C above +70°C)..889mW
20-Pin Plastic DIP (derate 8.00mW/°C above +70°C) ..440mW
16-Pin Narrow SO (derate 8.70mW/°C above +70°C) ...696mW
16-Pin Wide SO (derate 9.52mW/°C above +70°C)......762mW
18-Pin Wide SO (derate 9.52mW/°C above +70°C)......762mW
20-Pin Wide SO (derate 10.00mW/°C above +70°C)....800mW
20-Pin SSOP (derate 8.00mW/°C above +70°C) ..........640mW
16-Pin CERDIP (derate 10.00mW/°C above +70°C).....800mW
18-Pin CERDIP (derate 10.53mW/°C above +70°C).....842mW
Operating Temperature Ranges
MAX2_ _AC_ _, MAX2_ _C_ _ .............................0°C to +70°C
MAX2_ _AE_ _, MAX2_ _E_ _ ..........................-40°C to +85°C
MAX2_ _AM_ _, MAX2_ _M_ _ .......................-55°C to +125°C
Storage Temperature Range .............................-65°C to +160°C
Lead Temperature (soldering, 10s) (Note 3) ...................+300°C
Note 1: For the MAX220, V+ and V- can have a maximum magnitude of 7V, but their absolute difference cannot exceed 13V.
Note 2: Input voltage measured with TOUT in high-impedance state, SHDN or VCC = 0V.
Note 3: Maximum reflow temperature for the MAX225_WI and MAX233A_WP is +220°C.
Stresses beyond those listed under “Absolute Maximum Ratings” may cause permanent damage to the device. These are stress ratings only, and functional
operation of the device at these or any other conditions beyond those indicated in the operational sections of the specifications is not implied. Exposure to
absolute maximum rating conditions for extended periods may affect device reliability.
ELECTRICAL CHARACTERISTICS—MAX220/222/232A/233A/242/243
(VCC = +5V ±10%, C1–C4 = 0.1µF‚ MAX220, C1 = 0.047µF, C2–C4 = 0.33µF, TA = TMIN to TMAX‚ unless otherwise noted.)
PARAMETER
CONDITIONS
MIN
TYP
MAX
UNITS
RS-232 TRANSMITTERS
Output Voltage Swing
All transmitter outputs loaded with 3kΩ to GND
±5
Input Logic Threshold Low
Input Logic Threshold High
All devices except MAX220
MAX220: VCC = 5.0V
2
SHDN = 0V, MAX222/MAX242, shutdown,
MAX220
±0.01
±1
VCC = 5.5V, SHDN = 0V, VOUT = ±15V,
MAX222/MAX242
±0.01
±10
±0.01
±10
VOUT = ±15V
MAX220, VOUT = ±12V
µA
µA
±25
Data Rate
200
VCC = V+ = V- = 0V, VOUT = ±2V
300
10M
VOUT = 0V
±7
±22
VOUT = 0V
V
V
40
VCC = SHDN = 0V
Output Short-Circuit Current
1.4
5
Output Leakage Current
Transmitter Output Resistance
V
0.8
2.4
All except MAX220, normal operation
Logic Pullup/lnput Current
±8
1.4
116
kbps
Ω
MAX220
±60
MAX220
±30
±25
mA
RS-232 RECEIVERS
RS-232 Input Voltage Operating Range
RS-232 Input Threshold Low
VCC = 5V
RS-232 Input Threshold High
VCC = 5V
2
All except MAX243 R2IN
0.8
MAX243 R2 IN (Note 4)
-3
1.3
V
All except MAX243 R2IN
1.8
2.4
MAX243 R2 IN (Note 4)
-0.5
-0.1
_______________________________________________________________________________________
V
V
+5 V-Pow e re d, M ult ic ha nne l RS-2 3 2
Drive rs/Re c e ive rs
(VCC = +5V ±10%, C1–C4 = 0.1µF‚ MAX220, C1 = 0.047µF, C2–C4 = 0.33µF, TA = TMIN to TMAX‚ unless otherwise noted.)
PARAMETER
RS-232 Input Hysteresis
CONDITIONS
All except MAX220/MAX243, VCC = 5V, no
hysteresis in SHDN
MIN
TYP
MAX
0.2
0.5
1
MAX220
RS-232 Input Resistance
TTL/CMOS Output Voltage Low
TTL/CMOS Output Voltage High
1
TA = +25°C (MAX220)
3
5
7
3
5
7
0.2
0.4
IOUT = 3.2mA
IOUT = 1.6mA (MAX220)
IOUT = -1.0mA
0.4
3.5
VCC - 0.2
Sourcing VOUT = GND
-2
-10
10
30
EN Input Threshold Low
Shrinking VOUT = VCC
SHDN = VCC or EN = VCC (SHDN = 0V for
MAX222), 0V ≤ VOUT ≤ VCC
MAX242
EN Input Threshold High
MAX242
2.0
TTL/CMOS Output Short-Circuit Current
TTL/CMOS Output Leakage Current
Operating Supply Voltage
VCC Supply Current (SHDN = VCC),
figures 5, 6, 11, 19
Shutdown Supply Current
3kΩ load both
inputs
MAX222/
MAX242
±10
1.4
0.8
1.4
5.5
MAX222/MAX232A/MAX233A/
MAX242/MAX243
4
10
MAX220
12
MAX222/MAX232A/MAX233A/
MAX242/MAX243
15
TA = +25°C
0.1
V
V
µA
10
TA = 0°C to +70°C
2
50
TA = -40°C to +85°C
2
50
TA = -55°C to +125°C
35
100
±1
µA
1.4
0.8
V
MAX222/MAX242
MAX222/MAX242
SHDN Threshold High
MAX222/MAX242
Transition Slew Rate
CL = 50pF to
MAX222/MAX232A/MAX233/
2500pF, RL = 3kΩ MAX242/MAX243
to 7kΩ, VCC = 5V,
TA = +25°C,
MAX220
measured from
+3V to -3V or -3V
MAX222/MAX232A/MAX233/
MAX242/MAX243
MAX220
tPLHT
µA
V
2
SHDN Threshold Low
Transmitter Propagation Delay TLL to
RS-232 (Normal Operation), Figure 1
V
mA
0.5
SHDN Input Leakage Current
tPHLT
KΩ
V
±0.05
4.5
MAX220
No load
V
0.3
MAX243
UNITS
MAX222/MAX232A/MAX233/
MAX242/MAX243
MAX220
2.0
1.4
6
12
µA
V
30
V/µs
1.5
3
30
1.3
3.5
4
10
1.5
3.5
5
10
µs
Note 4: MAX243 R2OUT is guaranteed to be low when R2IN is ≥ 0V or is floating.
_______________________________________________________________________________________
3
M AX 2 2 0 –M AX 2 4 9
ELECTRICAL CHARACTERISTICS—MAX220/222/232A/233A/242/243 (continued)
ELECTRICAL CHARACTERISTICS—MAX220/222/232A/233A/242/243 (continued)
(VCC = +5V ±10%, C1–C4 = 0.1µF‚ MAX220, C1 = 0.047µF, C2–C4 = 0.33µF, TA = TMIN to TMAX‚ unless otherwise noted.)
PARAMETER
TYP
MAX
CONDITIONS
MAX222/MAX232A/MAX233/
MAX242/MAX243
0.5
1
MAX220
0.6
3
MAX222/MAX232A/MAX233/
MAX242/MAX243
0.6
1
MAX220
0.8
3
tPHLS
MAX242
0.5
10
tPHLS
MAX242
2.5
10
Receiver-Output Enable Time, Figure 3
tER
MAX242
125
500
ns
Receiver-Output Disable Time, Figure 3
tDR
MAX242
160
500
ns
Transmitter-Output Enable Time (SHDN
Goes High), Figure 4
tET
MAX222/MAX242, 0.1µF
caps (includes charge-pump
start-up)
250
µs
Transmitter-Output Disable Time (SHDN
Goes Low), Figure 4
tDT
MAX222/MAX242,
0.1µF caps
600
ns
MAX222/MAX232A/MAX233/
MAX242/MAX243
300
MAX220
2000
MAX222/MAX232A/MAX233/
MAX242/MAX243
100
MAX220
225
tPHLR
Receiver Propagation Delay RS-232 to
TLL (Normal Operation), Figure 2
tPLHR
Receiver Propagation Delay RS-232 to
TLL (Shutdown), Figure 2
MIN
UNITS
µs
µs
Transmitter + to - Propagation Delay
Difference (Normal Operat