Anda di halaman 1dari 46

BAB I

PENDAHULUAN
1.1. Latar Belakang Masalah
Sumber daya alam yang bermanfaat bagi kehidupan manusia sangatlah banyak
tersedia di bumi ini. Baik itu sumber daya alam yang dapat diperbaharui maupun sumber daya
alam yang tidak diperbaharui. Gas LPG merupakan salah satu hasil dari sumber daya alam
yang tidak dapat diperbaharui.Peranan Gas LPG pada saat ini sangatlah penting bagi
kehidupan manusia. Teringat, semakin menipisnya persediaan minyak dibumi ini perlahan
lahan Gas LPG mulai menggantikan peranan utama dari minyak bumi sebagai bahan bakar
altetnatif baik itu dalam bidang industri, rumah tangga, maupun transportasi.
Terkadangkala manusia terbuai akan kayanya sumber daya alam ini. Disaat sengaja
maupun tidak sengaja, Gas LPG menjadi dampak negatif terhadap kesehatan manusia bahkan
menimbulkan kerugian yang ukup besar apabila tidak digunakan dengan hati hati terutama
bila tidak diketahui telah terjadinya kebooran dari tabung atau tempat penyimpanan Gas
LPG. Seharusnya, Gas LPG tersebut sesuatu yang dapat mempermudah kelangsungan hidup
manusia tetapi menjadi kerugian manusia.
!ntuk itu, berdasarkan latar belakang masalah tersebut perlu dilakukan suatu
penanganan khusus, guna menegah kerugian yang ditimbulkan oleh Gas LPG tersebut.
Penulis meranang suatu alat dengan judul " #$%&$%G B$%G!% $L$T P'%D'T'(S)
('B*&*#$% G$S LPG D'%G$% S'%S*# TGS+,-. B'#B$S)S
/)(&#*(*%T#*L'# $T01S2- ".
1.2 Rumusan masalah
Berdasarkan permasalahan di atas,maka penulis menoba meranang suatu alat yang
dapat mendeteksi kebooran gas LPG pada suatu ruangan. $lat ini akan memberitahukan
kepada pemilik rumah dengan ara membunyikan alarm dan menampilkan pesan yang tertera
pada display apabila telah terajadi kebooran gas LPG di dalam ruangan tersebut. Selain itu
alat ini juga dlengkapi degan kipas untuk membuang gas LPG yang masih terdapat di dalam
ruangan tersebut agar udara yang terdapat di dalam ruangan tersebut tidak lagi teremar oleh
gas LPG
Pada alat ini digunakan sensor LP Gas TGS+,-. sebagai pendeteksi ada atau tidaknya
gas LPG yang masuk ke dalam ruangan. /ikrokontroller $T01S2- digunakan sebagai otak
dari seluruh system dan mengolah data yang dihasilkan oleh sensor kemudian membunyikan
alarm dan menghidupkan kipas
1.3 Tujuan Penulsan
Tujuan dilakukan Tugas $khir ini adalah sebagai berikut3
-. meranang suatu alat yang dapat mendeteksi kebooran gas LPG
+. /emanfaatkan mikrokontroller sebagai alat pengolah data yang diberikan oleh sensor.
4. meranang suatu alat yang user friendly
5. studi lebih lanjut tentang aplikasi mikrokontroller $T01S2-
1.! Batasan Masalah
/engau pada hal diatas, penulis akan meranang alat pendeteksi kebooran gas LPG
berbasis mikrokontroler $T01S2-, dengan batasan6batasan sebagai berikut 3
-. /ikrokontroler yang digunakan adalah jenis $T01S2-.
+. sensor yang digunakan adalah sensor LP Gas TGS+,-..
4. alat ini hanya mendeteksi keberadaan gas LPG tidak mendeteksi asal kebooran
5. untuk menetralkan udara dalam ruangan digunakan kipas
1." #stematka Penulsan
!ntuk mempermudah pembahasan dan pemahaman maka penulis membuat
sistematika pembahasan bagaimana sebenarnya prinsip kerja dari alat pendeteksi kebooran
gas LPG dengan menggunakan sensor gas TGS+,-. berbasis mikrokontroler $T01S2-, maka
penulis menulis laporan ini sebagai berikut3
BAB I.PENDAHULUAN
Dalam bab ini berisikan mengenai latar belakang, rumusan masalah, tujuan penulisan,
batasan masalah, serta sistematika penulisan.
BAB II.LANDA#AN TE$RI
Landasan teori, dalam bab ini dijelaskan tentang teori pendukung yang digunakan
untuk pembahasan dan ara kerja dari rangkaian Teori pendukung itu antara lain
tentang mikrokontroler $T01S2- 7hard8are dan soft8are9, sensor gas TGS+,-.,$D&
bahasa program yang digunakan. serta karekteristik dari komponen6komponen
pendukung.
BAB III. PERAN%AN&AN ALAT DAN PR$&RAM
Pada bagian ini akan dibahas peranangan dari alat, yaitu diagram blok dari
rangkaian, skematik dari masing6masing rangkaian dan diagram alir dari program
yang akan diisikan ke mikrokontroler $T01S2-.
BAB I'. ANALI#A RAN&(AIAN DAN #I#TEM (ER)A ALAT
Pada bab ini akan dibahas hasil analisa dari rangkaian dan sistem kerja alat, penjelasan
mengenai program6program yang digunakan untuk mengaktipkan rangkaian,
penjelasan mengenai program yang diisikan ke mikrokontroler $T01S2-.
BAB '.(E#IMPULAN DAN #ARAN
Bab ini merupakan penutup yang meliputi tentang kesimpulan dari pembahasan yang
dilakukan dari tugas akhir ini serta saran apakah rangkaian ini dapat dibuat lebih
efisien dan dikembangkan perakitannya pada suatu metode lain yang mempunyai
sistem kerja yang sama.
BAB II
DA#AR TE$RI
2.1 #EN#$R
2.1.1 Pengertan Umum #ens*r
Sebenarnya sensor seara umum didefinisikan sebagai alat yang mampu menangkap
fenomena fisika atau kimia kemudian mengubahnya menjadi sinyal elektrik baik arus listrik
ataupun tegangan. :enomena fisik yang mampu menstimulus sensor untuk menghasilkan
sinyal elektrik meliputi temperatur, tekanan, gaya, medan magnet ahaya, pergerakan dan
sebagainya. Sementara fenomena kimia dapat berupa konsentrasi dari bahan kimia baik airan
maupun gas.
Dengan definisi seperti ini maka sensor merupakan alat elektronik yang begitu banyak
dipakai dalam kehidupan manusia saat ini. Bagaimana tekanan jari kita pada key board
omputer, remote tele;isi, lantai lift yang kita tuju, menghasilkan perubahan pada layar
omputer atau tele;isi, serta gerakan pada lift adalah ontoh mudah sensor seara luas. $tau
sensor temperatur yang banyak digunakan dalam mengontrol temperatur ruangan pada $&.
Demikian pula sensor pengukur airan oksigen ataupun gas lainnya yang sering digunakan di
rumah sakit. <ampir seluruh kehidupan sehari hari saat ini tidak ada yang tidak melibatkan
sensor. Tidak mengherankan jika sensor 7atau juga ada yang menyebutnya dengan transduer9
banyak disebut juga sebagai pana indera6nya alat elektronik modern.
2.1.2 %ara (erja #ens*r &as #e+ara Umum
Terbentuk pada permukaan luar kristal. Tegangan permukaan yang terbentuk akan
menghambat laju aliran eletron seperti tampak pada ilustrasi Gambar.
Ilustras ,en-era,an $2 *leh sens*r
Di dalam sensor, arus elektrik mengalir mele8ati daerah sambungan7grain boundary9
dari kristal Sn*+. Pada daerah sambungan, penyerapan oksigen menegah muatan untuk
bergerak bebas. =ika konsentrasi gas menurun, proses deoksidasi akan terjadi, rapat
permukaan dari muatan negati;e oksigen akan berkurang, dan mengakibatkan menurunnya
ketinggian penghalang dari daerah sambungan, misal terdapat adanya gas &* yang terdeteksi
maka persamaan kimianya dapat digambarkan seperti tampak pada persamaan berikut ini.
&* > *ad7Sn*
+?
9

&*
+
> 7Sn*
+?
9@AAAAAAA7+9
Dengan menurunnya penghalang maka resistansi sensor akan juga ikut menurun.
&am.ar 2
Ilustras ketka ter/eteks a/an-a gas
#ens*r gas LP& T&#2011
Sensor gas LPG TGS+,-. merupakan salah satu sensor utama dalam
penelitian ini. Sensor ini merupakan sebuah sensor kimia atau sensor gas. Sensor ini
mempunyai nilai resistansi #s yang akan berubah bila terkena gas yang me8akili gas LPS di
udara yaitu gas metana dan ethanol. Sensor LPG TGS+,-. mempunyai tingkat sensitifitas
yang tinggi terhadap dua jenis gas tersebut. =ika sensor tersebut mendeteksi keberadaan gas
gas tersebut di udara dengan tingkat konsentrasi tertentu, maka sensor akan menganggap
terdapat gas LPG di udara. Dan ketika sensor mendeteksi keberadaan gas gas tersebut maka
resistensi elektrik sensor tesebut akan menurun yang menyebakan tegangan yang dihasilkan
oleh output sensor akan semakin besar. Selain itu, sensor juga mempunyai sebuah pemanas
(heater) yang digunakan untuk membersihkan ruangan sensor dari kontaminasi udara luar
agar sensor dapat bekerja kembali seara efektif .seara umum bentuk dari sensor gas LPG
TGS+,-. dapat dilihat dari gambar berikut3
2.1.3 Prns, (erja #ens*r
$dapun prinsip kerja dari sensor ini adalah sebagai berikut, Sensor gas TGS +,-.
hanya terdiri dari sebuah lapisan silikon dan dua buah elektroda pada masing6masing sisi
silikon. <al ini akan menghasilkan perbedaan tegangan pada outputnya ketika lapisan silikon
ini dialiri oleh arus listrik. Tanpa adanya gas LPG yang terdeteksi, arus yang mengalir pada
silikon akan tepat berada ditengah6tengah silikon dan menghasilkan tegangan yang sama
antara elektrode sebelah kiri dan elektrode sebelah kanan, sehingga beda tegangan yang
dihasilkan pada output adalah sebesar . ;olt.
Gambar Prinsip kerja sensor, saat tidak ada gas LPG yang terdeteksi
(etika terdapat gas LPG yang mempengaruhi sensor ini, arus yang mengalir akan
berbelok mendekati atau menjauhi salah satu sisi silikon.
Gambar Prinsip kerja sensor, saat dikenai gas LPG
(etika arus yang melalui lapisan silikon tersebut mendekati sisi silikon sebelah kiri maka
terjadi ketidakseimbangan tegangan output dan hal ini akan menghasilkan beda tegangan di
outputnya. Begitu pula bila arus yang melalui lapisan silikon tersebut mendekati sisi silikon
sebelah kanan.
Semakin besar konsentrasi gas yang mempengaruhi sensor ini, pembelokan arus di dalam
lapisan silikon juga semakin besar, sehingga ketidakseimbangan tegangan antara kedua sisi
lapisan silikon pada sensor semakin besar pula. Semakin besar ketidakseimbangan tegangan
ini, beda tegangan pada output sensor juga semakin besar
2.2 AD% 2Analog to Digital Converter3
$nalog to Digital &on;erter 7$D&9 adalah sebuah piranti yang diranang untuk
mengubah sinyal6sinyal analog menjadi sinyal 6 sinyal digital.. $BD Converter ini dapat
dipasang sebagai pengon;ersi tegangan analog dari suatu peralatan sensor ke konfigurasi
digital yang akan diumpankan ke suatu sistem minimum. =enis $D& yang biasa digunakan
dalam peranangan adalah jenis successive approximation convertion (SAC) atau pendekatan
bertingkat yang memiliki 8aktu kon;ersi jauh lebih singkat . )& $D& .0.5 merupakan salah
satu dari sekian banyak pengubah data analog menjadi data digital
=enis .0.5 ini merupakan $D& yang simpel dan mudah digunakan .)& $D& .0.5 ini
mempunyai +. pin dengan konfigurasi seperti gambar berikut 3
Gambar +.1 konfigurasi pin )& $D& .0.5
Pada $D& .0.5 ini, terdapat dua jenis prinsip didalam melakukan kon;ersi, yaitu free
running dan mode control. Pada mode free running, $D& akan mengeluarkan data hasil
pembaaan input seara otomatis dan berkelanjutan 7ontinue9. Prinsip yang kedua yaitu
mode control, pada mode ini $D& baru akan memulai kon;ersi setelah diberi instruksi dari
mikrokontroler. )nstruksi ini dilakukan dengan memberikan pulsa rendah kepada masukan
C# sesaat, kemudian membaa keluaran data $D& setelah keluaran )%T# berlogika rendah.
Pada penelitian ini ,prinsip kon;ersi yang digunakan adalah mode control. Prinsip kerja mode
control akan dijelaskan lebih lanjut sebagai berikut3
Seara umum #angkaian di dalam )& $D& memiliki + bagian utama, yaitu3
-. Bagian Sampling dan Hold, yang berfungsi menangkap atau menahan tagangan analog
input sesaat untuk seterusnya diumpankan ke rangkaian pengon;ersi.
+. #angkaian (on;ersi $BD 7plus rangkaian kontrolnya9.
Gambar diba8ah ini menggambarkan bagaimana aliran sinyal analog diubah ke sinyal digital.
Gambar +.-.. Diagram $D& seara umum
#angkaian di atas dioperasikan sebagai berikut. Pertama, kontroler, dalam hal ini
mikroprosesor B mikrokontroller menghubungi $D& dengan mengirim sinyal %E. $rtinya,
$D& diaktifkan. (emudian #$% 7start of conversion9 dikirimkan sehingga $D& mulai
melakukan sampling sinyal dan diikuti dengan kon;ersi ke digital.
Bila kon;ersi selesai maka $D& akan mengirimkan tanda selesai E$% 7end of
conversion9 yang artinya hasil kon;ersi telah siap dibaa di 7PBD6PB.9. 9. Program yang
sesuai harus dibuat mengikuti prosedur seperti di atas. $rtinya, program utama mikroprosesor
harus dimuati dengan suatu program loop tertutup dan menunggu tanda untuk membaa data
dari $D&. /eski tanda ini tidak harus diperhatikan, tetapi berakibat data yang dipaksa dibaa
akan sering in;alid karena &P! tidak dapat membedakan keadaan ambang 7ketika $D&
tengah melakukan kon;ersi9 dengan keadaan data siap 7;alid9. $gar lebih efektif, fungsi
interrupt harus diaktifkan untuk menghindari terjebaknya &P! dalam loop saat menunggu
$D& siap. Dengan demikian &P! hanya akan membaa data bila mendapatkan interrupt.
Seara singkat, $D& memerlukan bantuan sekuensi kontrol untuk menangkap dan
mengkon;ersi sinyal. Seberapa lama $D& dapat sukses mengkon;ersi suatu nilai sangat
tergantung dari kemampuan sampling dan kon;ersi dalam domain 8aktu. /akin epat
prosesnya, makin berkualitas pula $D& tersebut. (arena inilah maka karakteristik $D& yang
paling penting adalah 8aktu kon;ersi 7conversion time9. %amun demikian, kemampuan riil
$D& dalam kontrol loop tertutup dalam sebuah sistem lengkap justru sangat dipengaruhi oleh
kemampuan kontroler atau prosesor dalam mengolah data input6output seara epat, dan
bukan hanya karena kualitas $D&6nya.
2.3 Mkr*k*ntr*ler
/ikrokontroler adalah single chip computer yang memiliki kemampuan untuk
diprogram dan digunakan untuk tugas6tugas yang berorientasi kontrol. /ikrokontroler
berkembang dengan dua alasan utama, yaitu kebutuhan pasar 7market needed9 dan
perkembangan teknologi baru. Eang dimaksud dengan kebutuhan pasar yaitu kebutuhan
manusia yang semakin besar terhadap alat6alat elektronik dengan perangkat pintar sebagai
pengontrol dan pemroses data. Sedangkan yang dimaksud dengan perkembangan teknologi
baru adalah perkembangan teknologi semikonduktor yang memungkinkan pembuatan chip
dengan kemampuan komputasi yang sangat epat, bentuk yang semakin mungil, dan harga
yang semakin murah.
2.3.1 Mkr*k*ntr*ler AT45#"1
/ikrokontroler seri 0.2- merupakan salah satu seri mikrokontroler yang paling
banyak digunakan di seluruh dunia karena memiliki fasilitas onchip memory. Perusahaan
$T/'L membuat seri ini dengan nama $T01S2-. /ikrokontroler $T01S2- memiliki fitur
sebagai berikut3
F 5( byte #*/
#*/ atau Read Only emory adalah tempat penyimpanan program yang diisikan pada
mikrokontroler. #*/ hanya bisa dibaa. #*/ biasanya berisi kodeB program untuk
mengontrol kerja mikrokontroler. (apasitas memori yang disediakan oleh $T01S2- ini
adalah 5 kilobyte
F -+0 bytes #$/
#$/ atau Random Access emory adalah memori yang berisi data yang akan dieksekusi
oleh mikrokontroler. #$/ bisa ditulis dan dibaa, bersifat volatile 7isinya hilang jika
po8erB sumber tegangan dihilangkan9. (apasitas memori yang disediakan oleh $T01S2-
adalah -+0 bytes.
F 5 buah 06bit )B* 7!nput"Output9 port
#ort ini berfungsi sebagai terminal input dan output. Selain itu, dapat digunakan sebagai
terminal komunikasi paralel, serta komunikasi serial 7pin-. dan --9.
F + buah -, bit timer
F !nterface komunikasi serial
F ,5( pengalamatan code 7program9 memori
F ,5( pengalamatan data memori
F Prosesor Boolean 7satu bit6satu bit9
Dengan fitur ini, mikrokontroler dapat melakukan operasi logika seperti $%D, *#, '?*#,
dan lain6lain.
F +-. lokasi bit$addressable, dan
F 5 Gs operasi pengkalian atau pembagian
$rsitektur hard8are mikrokontroler $T01S2- dari perspektif luar atau biasa disebut
pinout digambarkan pada gambar +.0 di ba8ah ini3
Gambar +.--. #in$Out mikrokontroler $T01S2-
Berikut adalah penjelasan mengenai fungsi dari tiap6tiap pin 7kaki9 yang ada pada
mikrokontroler $T01S2-.
Port 1
/erupakan dual$purpose port 7port yang memiliki dua kegunaan9. Pada disain yang
minimum 7sederhana9, port . digunakan sebagai port !nput"Output 7)B*9. Sedangkan pada
disain lebih lanjut pada peranangan dengan memori eksternal digunakan sebagai data dan
address 7alamat9 yang di6multiplex. #ort . terdapat pada pin 4+641.
Port 1
/erupakan port yang hanya berfungsi sebagai port )B* 7!nput"Output9. Port - terdapat
pada pin -60.
Port 2
/erupakan dual$purpose port. Pada disain minimum digunakan sebagai port )B*
7!nput"Output9. Sedangkan pada disain lebih lanjut digunakan sebagai high byte dari
address 7alamat9. Port + terdapat pada pin +-6+0.
Port 3
/erupakan dual$purpose port. Selain sebagai port )B* 7!nput"Output9, port 4 juga
mempunyai fungsi khusus. :ungsi khusus tersebut diperlihatkan pada tabel +.-. #ort 4
terdapat pada pin -.6-D.
N*. Pn P*rt Pn Nama P*rt 6ungs Alternat7
-. P4.. #?D /enerima data untuk port serial
-- P4.- T?D /engirim data untuk port serial
-+ P4.+ )%T . !nterrupt . eksternal
-4 P4.4 )%T - !nterrupt - eksternal
-5 P4.5 T. %imer . input eksternal
-2 P4.2 T- %imer - input eksternal
-, P4., C# /emori data eksternal &rite
strobe
-D P4.D #D /emori data eksternal read strobe
Tabel +.4. :ungsi khusus #ort 4
P#EN 2Program Store Enable3
PS'% adalah sinyal kontrol yang mengiHinkan untuk mengakses program 7code9 memori
eksternal. Pin ini dihubungkan ke pin *' 7Output 'nable9 dari 'P#*/. Sinyal PS'%
akan ".I 7(O)9 pada tahap fetch 7penjemputan9 instruksi. PS'% akan selalu bernilai "-I
7H!*H9 pada pembaaan program memori internal. PS'% terdapat pada pin +1.
ALE 2Address Latch Enable3
$L' digunakan untuk men6demultiplex address 7alamat9 dan data bus. (etika
menggunakan program memori eksternal, port . akan berfungsi sebagai address 7alamat9
dan data bus. Pada setengah paruh pertama memori yle $L' akan bernilai "-I 7H!*H9
sehingga mengiHinkan penulisan address 7alamat9 pada register eksternal. Dan pada
setengah paruh berikutnya akan bernilai "-I 7H!*H9 sehingga port . dapat digunakan
sebagai data bus. $L' terdapat pada pin 4..
EA 2External Access3
=ika '$ diberi input "-I 7H!*H9, maka mikrokontroler menjalankan program memori
internal saja. =ika '$ diberi input ".I 7(O)9, maka $T01S2- menjalankan program
memori eksternal 7PS'% akan bernilai ".I9. '$ terdapat pada pin 4-.
R#T 2Reset3
#ST terdapat pada pin 1. =ika pada pin ini diberi input "-I 7H!*H9 selama minimal +
machine cycle, maka sistem akan di6reset 7 kembali ke a8al 9
On-Chip oscillator
$T01S2- telah memiliki on$chip oscillator yang dapat bekerja jika didrive menggunakan
kristal. Tambahan kapasitor diperlukan untuk menstabilkan sistem. %ilai kristal yang
biasa digunakan pada $T01S2- ini adalah -+ /<H. On$chip oscillator tidak hanya dapat
di6drive dengan menggunakan kristal, tetapi juga dapat dengan menggunakan %%(
Oscillator.
(*neks power
$T01S2- beroperasi pada tegangan 2 ;olt. Pin J terdapat pada pin 5., sedangkan pin
Jss 7ground9 terdapat pada pin +..
2.! Ds,la- L%D %hara+ter 2810
Display L&D +K-, berfungsi sebagai penampil nilai kuat induksi medan
elektromagnetik yang terukur oleh alat. L&D yang digunakan pada alat ini mempunyai lebar
display + baris -, kolom atau biasa disebut sebagai L&D &harater +K-,, dengan -, pin
konektor, yang didifinisikan sebagai berikut3
PIN Nama 7ungs
1 '## Ground ;oltage
2 '%% >2J
3 'EE &ontrast ;oltage
! R#
#egister Selet
. L )nstrution #egister
- L Data #egister
" R9:
#eadB Crite, to hoose 8rite or read mode
. L 8rite mode
- L read mode
0 E
'nable
. L start to laht data to L&D harater
-L disable
; DB1 LSB
4 DB1 6
5 DB2 6
11 DB3 6
11 DB! 6
12 DB" 6
13 DB0 6
1! DB; /SB
1" BPL Bak Plane Light
10 &ND Ground ;oltage
Tabel 4.- fungsi pinL&D harater +K-,
Gambar 4.5 L&D harater +K-,
/odul L&D terdiri dari sejumlah memory yang digunakan untuk display. Semua teks
yang kita tuliskan ke modul L&D akan disimpan didalam memory ini, dan modul L&D seara
berturutan membaa memory ini untuk menampilkan teks ke modul L&D itu sendiri.
Gambar 4.2 Peta memory L&D harater +K-,
Pada peta memori diatas, daerah yang ber8arna biru 7 .. sBd .: dan 5. sBd 5: 9 adalah
display yang tampak. jumlahnya sebanyak -, karakter per baris dengan dua baris. $ngka pada
setiap kotak adalah alamat memori yang bersesuaian dengan posisi dari layar. Dengan
demikian dapat dilihat karakter pertama yang berada pada posisi baris pertama menempati
alamat ..h. dan karakter kedua yang berada pada posisi baris kedua menempati alamat 5.h
$gar dapat menampilkan karakter pada display maka posisi kursor harus terlebih
dahulu diset. )nstruksi Set Posisi (ursor adalah 0.h. dengan demikian untuk menampilkan
karakter, nilai yang terdapat pada memory harus ditambahkan dengan 0.h.
Sebagai ontoh, jika kita ingin menampilkan huruf "BI pada baris kedua pada posisi
kolom kesepuluh.maka sesuai dengan peta memory, posisi karakter pada kolom -. dari baris
kedua mempunyai alamat 5$h, sehingga sebelum kita menampilkan huruf "BI pada L&D,
kita harus mengirim instruksi set posisi kursor, dan perintah untuk instruksi ini adalah 0.h
ditambah dengan alamat 0.h > 5$h L.&ah. Sehingga dengan mengirim perintah .&ah ke
L&D, akan menempatkan kursor pada baris kedua dan kolom ke --.
2." #*7t<are
Perangkat lunak (soft&are) adalah seperangkat intruksi yang disusun menjadi sebuah
program untuk memerintahkan microcomputer melakukan suatu pekerjaan. Sebuah instruksi
selalu berisi kode operasi 7op-code9, kode pengoperasian inilah yang disebut dengan bahasa
mesin yang dapat dimengerti oleh mikrokontroller. )nstruksi6instruksi yang digunakan dalam
memprogram suatu program yang diisikan pada $T01S2- adalah instruksi bahasa
pemograman assembler atau sama dengan intruksi pemograman pada )& mikrokontrller 0.4-
dan /&S2-.
2.".1 Instruks Trans7er Data
)nstruksi transfer data terbagi menjadi dua kelas operasi sebagai berikut 3
Transfer data umum 7 General Prpose !rans"er 9, yaitu 3 /*J, P!S< dan P*P.
Transfer spedifik akumulator 7 Accmlator Speci"ic !rans"er 9, yaitu 3 ?&<,
?&<D, dan /*J&.
)nstruksi transfer data adalah intruksi pemindahan Bpertukaran data antara operand
sumber dengan operand tujuan. Operand$nya dapat berupa register, memori atau lokasi suatu
memori. Penjelasan instruksi transfer data tersebut dapat dijelaskan sebagai berikut.
/*J 3 Transfer data dari #egister satu ke Register yang lainnya, antara Register dengan
emory+
P!S< 3 %ransfer byte atau dari operand sumber ke suatu lokasi dalam stack yang
alamatnya ditunjuk oleh register penunjuk.
P*P 3 %ransfer byte atau dari dalam stack ke operand tujuan.
?&< 3 Pertukaran data antara operand akumulator dengan operand sumber.
?&<D 3 Pertukaran nibble orde rendah antara #$/ internal 7 lokasinya ditunjukkan oleh
#. dan #- 9
2.".2. Instruks L*gka
/ikrokontroller $T01S2- dapat melakukan operasi logika bit maupun operasi logika
byte. *perasi logika tersebut dibagi atas dua bagian yaitu 3
*perasi logika operand tunggal, yang terdiri dari &L#, S'TB, &PL, #L, ##, dan
SC$P.
*perasi logika dua operand seperti 3 $%L, *#L, dan ?#L.
*perasi yang dilkukan oleh $T01S2- dengan pembaaan instruksi logika tersebut dijelaskan
diba8ah ini 3
&L# 3 /enghapus byte atau bit menjadi nol.
S'TB 3 /enggeser bit atau byte menjadi satu.
&PL 3 /engkomplemenkan akumulator.
#L 3 #otasi akumulator - bit ke kiri.
## 3 #otasi akumulator ke kanan.
SC$P 3 Pertukaran nibble orde tinggi.
2.".3 Instruks Trans7er (en/al
)nstruksi transfer kendali 7control trans"er9 terdiri dari 749 tiga kelas operasi yaitu 3
Lompatan tidak bersyarat 7 #nconditional $mp 9 seperti 3 $&$LL, $=/P,
L=/P,S=/P
Lompatan bersyarat 7 Conditional $mp 9 seperti 3 =M, =%M, =B, &=%', dan D=%M.
)nsterupsi seperti 3 #'T dan #'T-.
Penjelasan dari instruksi diatas sebagai berikut 3
$&$LL 3 )nstruksi pemanggilan subroutine bila alamat subroutine tidak lebih dari
+ (byte.
L&$LL 3 Pemanggilan subroutine yang mempunyai alamat antara + (byte ,5
(byte.
$=/P 3 Lompatan untuk perabangan maksimum + (byte.
L=/P 3 Lompatan untuk perabangan maksimum ,5 (byte.
=%B 3 Perabangan bila bit tidak diset.
=M 3 Perabangan akan dilakukan jika akumulator adalah nol.
=%M 3 Perabangan akan dilakukan jika akumulator adalah tidak nol.
=& 3 Perabangan terjadi jika &E diset "-I.
&=%' 3 *perasi perbandingan operand pertama dengan operand kedua, jika
tidak sama akan dilakukan perabangan.
D=%M 3 /engurangi nilai operand sumber dan perabangan akan dilakukan
apabila isi operand tersebut tidak nol.
#'T 3 (embali ke subroutine+
#'T- 3 (embali ke program interupsi utama
BAB III
PERAN%AN&AN ALAT DAN %ARA (ER)A RAN&(AIAN
3.1 Peran+angan Bl*k Dagram
Blok (ipas /enetralisir kadar gas pada ruangan dengan
menghembuskan udara ke dalam ruangan
Blok BuHHer )ndikator atau peringatan untuk menandakan
adanya kebooran gas pada ruangan
Blok Dri;er /engatur hidup atau matinya buHHer, kipas
Blok /ikrokontroller /embaa data dari $D&, mengolah data,
memproses, dan mengaktifkan buHHer, kipas, L&D
Blok $D& /engubah data analog menjadi data digital
sehingga data dari sensor dapat dibaa oleh mikrokontroller
Blok Sensor Gas TGS+,-. /endeteksi kebooran gas dalam
uC AT89S51
SENSOR
TGS2610
ADC
( Analog to Digital
Converter )
DR!ER
"#AS
DR!ER
A$AR%
"#AS
A$AR%
Di&'la(
ruangan sehingga data akan dikirimkan ke $D& dan diproses oleh mikrokontroller.
Display /enampilkan pesan ada tidaknya gas
3.1 Rangkaan P*<er #u,,la- A/a,t*r 2 P#A 3
#angkaian ini berfungsi untuk memberikan supply tegangan ke seluruh rangkaian
yang ada. #angkaian PS$ yang dibuat terdiri dari dua keluaran, yaitu 2 ;olt dan -+ ;olt,
keluaran 2 ;olt digunakan untuk mensupplay tegangan ke seluruh rangkaian, sedangkan
keluaran -+ ;olt digunakan untuk mensuplay tegangan ke relay. #angkaian po8er supplay
ditunjukkan pada gambar 4.+ berikut ini 3
&am.ar 3.1 Rangkaan P*<er #u,,la- A/a,t*r 2P#A3
Trafo &T merupakan trafo stepdo8n yang berfungsi untuk menurunkan tegangan
dari ++. ;olt $& menjadi -+ ;olt $&. (emudian -+ ;olt $& akan disearahkan dengan
menggunakan dua buah dioda, selanjutnya -+ ;olt D& akan diratakan oleh kapasitor ++.. N:.
#egulator tegangan 2 ;olt 7L/D0.2&T9 digunakan agar keluaran yang dihasilkan tetap 2 ;olt
8alaupun terjadi perubahan pada tegangan masukannya. L'D hanya sebagai indikator apabila
PS$ dinyalakan. Transistor P%P T)P 4+ disini berfungsi untuk mensupplay arus apabila
terjadi kekurangan arus pada rangkaian, sehingga regulator tegangan 7L/D0.2&T9 tidak
akan panas ketika rangkaian butuh arus yang ukup besar. Tegangan -+ ;olt D& langsung
diambil dari keluaran + buah dioda penyearah.
3.2 Rangkaan mkr*k*ntr*ller AT45#"1
#angkaian mikrokontroller $T01S2- ini merupakan sistem kontrol yang mengatur
fungsi kerja sistem pengukuran. Dalam penelitian ini, mikrokontroler digunakan sebagai
sistem kontrol input dan output saja. !nput 7masukan9 pada rangkaian sistem kontrol ini
dihubungkan dengan sensor medan magnetik. Sedangkan output 7keluaran9 dihubungkan
dengan piranti tampilan, dalam hal ini dot matrix (C,. #angkaian mikrokontroler
ditunjukkan pada gambar berikut ini3
Gambar 4.4 rangkaian minimum mikrokontroller $T01S2-
Pada rangkaian, Pin 4- 'Kternal $ess 'nable 7'$9 diset high 7<9. )ni dilakukan
karena mikrokontroller $T01S2- tidak menggunakan memori eskternal. Pin -0 dan -1
dihubungkan ke ?T$L -+ /<H dan apasitor 44 p:. ?T$L ini akan mempengaruhi
keepatan mikrokontroller $T01S2- dalam mengeksekusi setiap perintah dalam program.
Pin 1 merupakan masukan reset 7aktif tinggi9. Pulsa transisi dari rendah ke tinggi akan me6
reset mikrokontroller ini. Pin 4+ sampai 41 adalah Port . yang merupakan saluranBbus )B* 0
bit open olletor dapat juga digunakan sebagai multipleks bus alamat rendah dan bus data
selama adanya akses ke memori program eksternal. Pada Port . ini masing masing pin
dihubungkan dengan resistor 5kD ohm. #esistor 5kD ohm yan dihubungkan ke port . befungsi
sebagai pull up7 penaik tegangan 9 agar output dari mikrokontroller dapat mntrigger transistor.
Pin - sampai 0 adalah Port -. Pin +- sampai +0 adalah Port +. Dan Pin -. sampai -D adalah
Port 4. Pin +. merupakan ground dihubungkan dengan ground pada po8er supplay. Pin 5.
merupakan sumber tegangan positif dihubungkan dengan > 2 ;olt dari po8er supplay.
3.3 Rangkaan AD% 2 Anal*g t* Dgtal %*n=erter 3
#angkaian $D& ini berfungsi untuk merubah data analog yang dihasilkan oleh sensor
gas LPG TGS+,-. menjadi bilangan digital. *utput dari $D& dihubungkan ke
mikrokontroler, sehingga mikrokontroler dapat mengetahui dan mendeteksi keberadaan gas
LPG yang terdapat di dalam ruangan. Dengan demikian proses pendeteksian gas LPG dapat
dilakukan. Gambar rangkaian $D& ditunjukkan pada gambar di ba8ah ini3
Tegangan pada output sensor akan dideteksi oleh $D&. $gar output yang dihasilkan
oleh $D& bagus, maka tegangan refrensi $D& harus benar6benar stabil, karena perubahan
tegangan refrensi pada $D& akan merubah output $D& tersebut. *leh sebab itu pada
rangkaian $D& di atas tegangan masukan -+ ;olt dimasukkan ke dalam )& regulator
tegangan 1 ;olt 7 D0.19 agar keluarannya menjadi 1 ;olt, kemudian keluaran 1 ;olt ini
dimasukkan kedalam regulator tegangan 2 ;olt 7D0.29, sehingga keluarannya menjadi 2 ;olt.
Tegangan 2 ;olt inilah yang menjadi tegangan refrensi $D&.
Dengan demikian 8alaupun tegangan masukan turun setengahnya, yaitu dari -+ ;olt
menjadi , ;olt, tegangan refrensi $D& tetap 2 ;olt.
*utput dari $D& dihubungkan ke mikrokontroler, sehingga setiap perubahan output $D&
yang disebabkan oleh perubahan inputnya akan diketahui oleh mikrokontoler
3.! Rangkaan Pengen/al (,as
#angkaian pengendali kipas pada alat ini berfungsi untuk memutuskan atau
menghubungkan sumber tegangan -+ ;olt dengan kipas. Gambar rangkaian pengendali kipas
ini ditunjukkan pada gambar berikut ini3
gam.ar 3.! Rangkaan Pengen/al (,as
*utput dari relay yang satu dihubungkan ke sumber tegangan -+ ;olt dan yang
lainnya dihubungkan ke kipas. <ubungan yang digunakan adalah normally lose. Prinsip
kerja rangkaian ini pada dasarnya memanfaatkan fungsi transistor sebagai saklar elektronik.
Tegangan atau sinyal pemiu dari transistor berasal dari mikrokontroler Port 4.2 7P4.29. Pada
saat logika pada port 4.2 adalah tinggi 7high9, maka transistor mendapat tegangan bias dari
kaki basis. Dengan adanya tegangan bias ini maka transistor akan aktip 7saturation9, sehingga
adanya arus yang mengalir ke kumparan relay. <al ini akan menyebabkan saklar pada relay
menjadi tertutup, sehingga hubungan sumber tegangan -+ ;olt ke kipas akan terhubung dan
kipas akan menyala. Begitu juga sebaliknya pada saat logika pada P4.2 adalah rendah 7lo89
maka relay tidak dialiri arus. <al ini akan menyebabkan saklar pada relay terputus, sehingga
sumber tegangan -+ ;olt dengan kipas akan terputus dan kipas tidak menyala
3." Rangkaan Alarm
#angkaian alarm pada alat ini berfungsi untuk memutuskan atau menghubungkan
sumber tegangan -+ ;olt dengan buHHer. Gambar rangkaian alarm ini ditunjukkan pada
gambar 4.2 berikut ini3
Gbr 4.2 #angkaian alarm
*utput dari relay yang satu dihubungkan ke sumber tegangan -+ ;olt dan yang
lainnya dihubungkan ke buHHer. <ubungan yang digunakan adalah normally open. Prinsip
kerja rangkaian ini pada dasarnya memanfaatkan fungsi transistor sebagai saklar elektronik.
Tegangan atau sinyal pemiu dari transistor berasal dari mikrokontroler Port ..- 7P..-9. Pada
saat logika pada port ..- adalah tinggi 7high9, maka transistor mendapat tegangan bias dari
kaki basis. Dengan adanya tegangan bias ini maka transistor akan aktip 7saturation9, sehingga
adanya arus yang mengalir ke kumparan relay. <al ini akan menyebabkan sakar pada relay
menjadi tertutup, sehingga hubungan sumber tegangan -+ ;olt ke buHHer akan terhubung dan
buHHer akan berbunyi. Begitu juga sebaliknya pada saat logika pada P..- adalah rendah 7lo89
maka relay tidak dialiri arus. <al ini akan menyebabkan saklar pada relay terputus, sehingga
sumber tegangan -+ ;olt dengan buHHer akan terputus dan buHHer tidak berbunyi
BAB I'
HA#IL DAN PEMBAHA#AN
!.1 Pengujan Rangkaan Mkr*k*ntr*ller AT45#"1
Pengujian pada rangkaian mikrokontroler $T01S2- ini dapat dilakukan dengan
menghubungkan rangkaian minimum mikrokontroler $T01S2- dengan po&er suplay sebagai
sumber tegangan. (aki 5. dihubungkan dengan sumber tegangan 2 Jolt, sedangkan kaki +.
dihubungkan dengan ground.

Gambar 5.- pengujian rangkaian mikrokontroller $T01S2-
(emudian tegangan pada kaki 5. diukur dengan menggunakan Joltmeter. Dari hasil
pengujian didapatkan tegangan pada kaki 5. sebesar 5,1 Jolt. Langkah selanjutnya adalah
dengan ara menghubungkan pin-D 7P4.D9 dengan sebuah transistor &152 yang dihubungkan
dengan sebuah L'D indikator.
Transistor disini berfungsi sebagai saklar untuk mengendalikan hidupBmati L'D.
Dengan demikian L'D akan menyala jika transistor aktip dan sebaliknya L'D akan mati jika
transistor tidak aktip. Tipe transistor yang digunakan adalah %P% &152, dimana transistor ini
akan aktif 7saturasi9 jika pada basis diberi tegangan 2 ;olt 7logika high9 dan transistor ini akan
tidak aktif jika pada basis diberi tegangan . ;olt 7logika lo89. Basis transistor ini
dihubungkan ke sebuah resistor 5kD ohm. , resistor ini berfungsi agar arus yang dikeluarkan
oleh pin-D 7P4.D9 ukup besar untuk men6trigger transistor &152. selanjutnya program
sederhana diisikan pada mikrokontroler $T01S2-. Program yang diisikan adalah sebagai
berikut 3
Loop:
Setb p3.7
Call delay
Clr p3.7
Call delay
Jmp loop
Delay:
Mov r7,#255
Dly:
Mov r6,#255
Djnz r6,
Djnz r7,dly
!et
end
Program di atas bertujuan untuk menghidupkan L'D yang terhubung ke P4.D
beberapa saat dan kemudian mematikannya. Perintah Setb P4.D akan menjadikan P4.D
berlogika high yang menyebabkan transistor &152 aktif dan L'D akan menyala. Call delay
akan menyebabkan L'D ini hidup selama beberapa saat. Perintah Clr P4.D akan menjadikan
P4.D berlogika lo8 yang menyebabkan transistor tidak aktif dan L'D akan mati. Perintah call
delay akan menyebabkan L'D ini mati selama beberapa saat. Perintah -mp (oop akan
menjadikan program tersebut berulang, sehingga akan tampak L'D tersebut berkedip.
=ika program tersebut diisikan ke mikrokontroller $T01S2-, kemudian
mikrokontroller dapat berjalan sesuai dengan program yang diisikan, maka rangkaian
minimum mikrokontroller $T01S2- telah bekerja dengan baik.
!.2 Inter7a+ng L%D 2810
Bagian ini hanya terdiri dari sebuah L&D dot matriks + K -, karakter yang berfungsi
sebagai tampilan hasil pengukuran dan tampilan dari beberapa keterangan. L&D dihubungkan
langsung ke #ort . dari mikrokontroler yang berfungsi mengirimkan data hasil pengolahan
untuk ditampilkan dalam bentuk alfabet dan numerik pada L&D.
Gambar 5.+ )nterfaing L&D +K-, dengan mikrokontroller $T01S2-
Display karakter pada L&D diatur oleh pin '%, #S dan #C3
=alur '% dinamakan 'nable. =alur ini digunakan untuk memberitahu L&D bah8a anda sedang
mengirimkan sebuah data. !ntuk mengirimkan data ke L&D, maka melalui program '% harus
dibuat logika lo8 ".I dan set 7 high 9 pada dua jalur kontrol yang lain #S dan #C. =alur #C
adalah jalur kontrol #eadB Crite. (etika #C berlogika lo8 7.9, maka informasi pada bus data
akan dituliskan pada layar L&D. (etika #C berlogika high I-I, maka program akan
melakukan pembaaan memori dari L&D. Sedangkan pada aplikasi umum pin #C selalu
diberi logika lo8 7 . 9
berdasarkan keterangan di atas maka kita sudah dapat membuat progam untuk
menampilkan karaker pada display L&D. $dapun program yang diisikan ke mikrokontroller
untuk menampilkan karakter pada display L&D adalah sebagai berikut3
r" b#t p2.$
r% b#t p2.&
en b#t p2.2
'#r#m('ara'ter:
)all data(penamp#l
mov a,#*+*
)all '#r#m(data
mov a,#*e*
)all '#r#m(data
mov a,#*l*
)all '#r#m(data
mov a,#*l*
)all '#r#m(data
mov a,#*o*
)all '#r#m(data
jmp '#r#m('ara'ter
data(penamp#l:
mov a,#,$- ;posisi awal karakter
)all data(")an
ret
'#r#m(data:
mov p$,a
"etb r"
)lr r%
)lr en
)all delay
ret
end
Program di atas akan menampilkan kata "<elloI di baris pertama pada display L&D +K-,.
!.3 Pengujan Rangkaan AD% 2 Anal*g t* Dgtal %*n=erter 3
!ntuk mengetahui tingkat ketelitian $D& dalam mengkon;ersi input analog yang
diberikan maka terlebih dahulu $D& tersebut harus di uji ketelitiannya. Langkah yang
digunakan untuk menguji tigkat ketelitian $D& adalah dengan ara memberikan tegangan
analog yang presisi. !ntuk mendapatkan Tegangan analog yang presisi ini dapat digunakan
po8er lab type L'$D'# D& Traking Po8er Supply LPS-2+.
Setiap perubahan tegangan yang diberikan merupakan input bagi $D& yang akan
diubah menjadi data digital. Proses perubahan tegangan input menjadi data digital dilakukan
dengan ara3
faktor
A,C
.
.in
Output =

sedangkan J
faktor
adalah 3
.olt .olt .cc .
faktor
.-1, , . 2
+22
-
+22
-
= = =
dengan data output dapat dihitung, misalnya jika Jin $D& L .,4 Jolt, maka3
4. , -2
.-1, , .
4 , .
= =
.olt
.olt
Output
, data yang diubah ke bilangan biner hanya bilangan bulatnya
saja. Berarti bilang biner yang dihasilkan oleh tegangan input $D& sebesar .,4 Jolt adalah
7.... ----9.pada rangkaian pengujian, *utput $D& melalui kaki DB.6DBD dihubungkan
dengan delapan buah led untuk mempermudah dalam pembaaan data.
Gambar 5.4 rangkaian pengujian $D& .0.5
!.! Pengujan #ens*r > AD%
(ea/aan $ut #ens*r 2'3 $ut AD% Bner
T/ak a/a &as +.2 -+D.22 .-------
A
/
a

&
a
s
+.D -4D.D2 -...-..-
4.. -24.., -..--..-
4.4 -,0.4, -.-.-...
4., -04., -.--.---
4.1 -10.1D --...--.
5.+ +-5.+0 --.-.--.
5.2 ++1.21 ---..-.-
5.0 +55.0 ----.-..
2.. +22 --------
Ta.el ?
PENGUJIAN SENSOR DAN ADC
100
110
120
130
140
150
160
170
180
190
200
210
220
230
240
250
260
2.5 2.7 3.0 3.3 3.6 3.9 4.2 4.5 4.8 5.0
Data Out Sens!
D
a
t
a

O
u
t

A
D
C
&ra7k ?
!.! Pengujan Rangkaan Alarm
Pengujian rangkaian alarm dapat dilakukan dengan memberikan tegangan 2 ;olt dan
. ;olt pada basis transistor &152. Transistor &152 merupakan transistor jenis %P%, transistor
jenis ini akan aktip jika pada basis diberi tegangan O .,D ;olt dan tidak aktip jika pada basis
diberi tegangan P .,D ;olt. $ktipnya transistor akan mengaktipkan relay. Pada rangkaian ini
relay digunakan untuk memutuskan hubungan alarm dengan sumber tegangan -+ ;olt, dimana
hubungan yang digunakan adalah normally lose7%&9, dengan demikian jika relay aktip maka
hubungan alarm ke sumber tegangan akan terhubung, sebaliknya jika relay tidak aktip, maka
hubungan alarm ke sumber tegangan akan terputus.
Pengujian dilakukan dengan memberikan tegangan 2 ;olt pada basis transistor, jika
relay aktip dan buHHer berbunyi, maka rangkaian ini telah berfungsi dengan baik.
Pengujian selanjutnya dilakukan dengan menghubungkan input rangkaian ini ke
mikrokontroler pada P..-
kemudian memberikan program sederhana pada mikrokontroler $T01S2-. Program yang
diberikan adalah sebagai berikut3
Setb P0.1
. . . . . . . .
Perintah di atas akan memberikan logika high pada P..-, sehingga P..- akan mendapatkan
tegangan 2 ;olt. Tegangan 2 ;olt ini akan mengaktipkan transistor &152, sehingga relay juga
menjadi aktip dan alarm berbunyi. Berikutnya memberikan program sederhana untuk
menonaktipkan relay. Programnya sebagai berikut3
Clr P0.1
. . . . . . . .
Perintah di atas akan memberikan logika lo8 pada P..-, sehingga P..- akan mendapatkan
tegangan . ;olt. Tegangan . ;olt ini akan menonaktipkan transistor &152, sehingga relay
juga menjadi tidak aktip dan alarm tidak berbunyi.
!." Rangkaan ,engen/al k,as
pengujian rangkaian pengendali kipas dapat dilakukan dengan memberikan tegangan 2
;olt dan . ;olt pada basis transistor &152. Transistor &152 merupakan transistor jenis %P%,
transistor jenis ini akan aktip jika pada basis diberi tegangan O .,D ;olt dan tidak aktip jika
pada basis diberi tegangan P .,D ;olt. $ktipnya transistor akan mengaktipkan relay. Pada
rangkaian ini relay digunakan untuk memutuskan hubungan kipas dengan sumber tegangan -+
;olt, dimana hubungan yang digunakan adalah normally lose7%*9, dengan demikian jika
relay aktip maka hubungan kipas ke sumber tegangan akan terhubung, sebaliknya jika relay
tidak aktip, maka hubungan kipas ke sumber tegangan akan terputus.
Pengujian dilakukan dengan memberikan tegangan 2 ;olt pada basis transistor, jika
relay aktip dan kipas menyala, maka rangkaian ini telah berfungsi dengan baik.
Pengujian selanjutnya dilakukan dengan menghubungkan input rangkaian ini ke
mikrokontroler pada P..D
kemudian memberikan program sederhana pada mikrokontroler $T01S2-. Program yang
diberikan adalah sebagai berikut3
Setb P0.7
. . . . . . . .
Perintah di atas akan memberikan logika high pada P..., sehingga P... akan mendapatkan
tegangan 2 ;olt. Tegangan 2 ;olt ini akan mengaktipkan transistor &152, sehingga relay juga
menjadi aktip dan kipas menyala. Berikutnya memberikan program sederhana untuk
menonaktipkan relay. Programnya sebagai berikut3
Clr P0.7
. . . . . . . .
Perintah di atas akan memberikan logika lo8 pada P..D, sehingga P..D akan mendapatkan
tegangan . ;olt. Tegangan . ;olt ini akan menonaktipkan transistor &152, sehingga relay
juga menjadi tidak aktip dan kipas tidak menyala.
. / / / / / / / / / / / / /
/ / / .
. l#"t.pro0ram L12 dete)tor
.
. / / / / / / / / / / / / /
/ / / .
. / / #n#t#al#"a"# port /
/ .
r" b#t p2.2
r% b#t p2.&
en b#t p2.$
'#pa"& b#t p$.$
'#pa"2 b#t p$.&
alarm b#t p$.2
#ntr3pt b#t p2.7
. / / / ")an d3l3 / / / .
"tart:
)lr alarm
"etb '#pa"&
"etb '#pa"2
a)all t3nda(5det#'
)lr '#pa"&
)lr '#pa"2
)lr alarm
./tamp#l pe"an pemb3'a/.
mov a,#3,-
a)all data(")an
a)all data(penamp#l
a)all polmed
a)all 'r#"t#na
a)all j3l#
m3la#:
)lr 4ntr3pt
a)all tad)
"etb 4ntr3pt

3tama:
jb 4ntr3pt,
a)all tad)
mov a,p&
mov 62-,a
mov a,62-
)jne
a,#255,3dara()lean
a)all )lear(")reen
a)all pe"an&
"etb '#pa"2
"etb alarm
jmp 3tama

3dara()lean:
a)all pe"an2
)lr '#pa"&
)lr '#pa"2
)lr alarm
jmp 3tama
polmed:
mov a,#*1*
a)all '#r#m(data
a)all delay
mov a,#*5*
a)all '#r#m(data
a)all delay
mov a,#*L*
a)all '#r#m(data
a)all delay
mov a,#*4*
a)all '#r#m(data
a)all delay
mov a,#*6*
a)all '#r#m(data
a)all delay
mov a,#*7*
a)all '#r#m(data
a)all delay
mov a,#*8*
a)all '#r#m(data
a)all delay
mov a,#*9*
a)all '#r#m(data
a)all delay
mov a,#*4*
a)all '#r#m(data
a)all delay
mov a,#*8*
a)all '#r#m(data
a)all delay
./ / / t3l#" bar#" ba%a- / /
/.
mov a,#$)2-
a)all data(")an
. / / / / / / / / / / / / /
/ . mov a,#*9*
a)all '#r#m(data
a)all delay
mov a,#*7*
a)all '#r#m(data
a)all delay
mov a,#*2*
a)all '#r#m(data
a)all delay
mov a,#*7*
a)all '#r#m(data
a)all delay
mov a,#*!*
a)all '#r#m(data
a)all delay
mov a,#*4*
a)all '#r#m(data
a)all delay
mov a,#* *
a)all '#r#m(data
a)all delay
mov a,#*M*
a)all '#r#m(data
a)all delay
mov a,#*7*
a)all '#r#m(data
a)all delay
mov a,#*D*
a)all '#r#m(data
a)all delay
mov a,#*:*
a)all '#r#m(data
a)all delay
mov a,#*9*
a)all '#r#m(data
a)all delay
a)all t3nda(5det#'
a)all )lear(")reen
ret
'r#"t#na:
a)all data(penamp#l2
a)all delay
mov a,#*8*
a)all '#r#m(data
a)all delay
mov a,#*!*
a)all '#r#m(data
a)all delay
mov a,#*4*
a)all '#r#m(data
a)all delay
mov a,#*S*
a)all '#r#m(data
a)all delay
mov a,#*6*
a)all '#r#m(data
a)all delay
mov a,#*4*
a)all '#r#m(data
a)all delay
mov a,#*9*
a)all '#r#m(data
a)all delay
mov a,#*:*
a)all '#r#m(data
a)all delay
mov a,#* *
a)all '#r#m(data
a)all delay
mov a,#*S*
a)all '#r#m(data
a)all delay
mov a,#*4*
a)all '#r#m(data
a)all delay
mov a,#*!*
a)all '#r#m(data
a)all delay
mov a,#*7*
a)all '#r#m(data
a)all delay
mov a,#*2*
a)all '#r#m(data
a)all delay
mov a,#*:*
a)all '#r#m(data
a)all delay
mov a,#*!*
a)all '#r#m(data
a)all delay
./ / / t3l#" bar#" ba%a- / /
/.
mov a,#$)$-
a)all data(")an
. / / / / / / / / / / / / /
/ .
mov a,#*9*
a)all '#r#m(data
a)all delay
mov a,#*4*
a)all '#r#m(data
a)all delay
mov a,#*M*
a)all '#r#m(data
a)all delay
mov a,#* *
a)all '#r#m(data
a)all delay
mov a,#*:*
a)all '#r#m(data
a)all delay
mov a,#* *
a)all '#r#m(data
a)all delay
mov a,#*$*
a)all '#r#m(data
a)all delay
mov a,#*6*
a)all '#r#m(data
a)all delay
mov a,#*2*
a)all '#r#m(data
a)all delay
mov a,#*3*
a)all '#r#m(data
a)all delay
mov a,#*$*
a)all '#r#m(data
a)all delay
mov a,#*;*
a)all '#r#m(data
a)all delay
mov a,#*&*
a)all '#r#m(data
a)all delay
mov a,#*7*
a)all '#r#m(data
a)all delay
mov a,#*<*
a)all '#r#m(data
a)all delay
a)all t3nda(5det#'
a)all )lear(")reen
ret
j3l#:
a)all data(penamp#l2
a)all delay
mov a,#*J*
a)all '#r#m(data
a)all delay
mov a,#*=*
a)all '#r#m(data
a)all delay
mov a,#*L*
a)all '#r#m(data
a)all delay
mov a,#*4*
a)all '#r#m(data
a)all delay
mov a,#*:*
a)all '#r#m(data
a)all delay
mov a,#*9*
a)all '#r#m(data
a)all delay
mov a,#*4*
a)all '#r#m(data
a)all delay
mov a,#* *
a)all '#r#m(data
a)all delay
mov a,#*6*
a)all '#r#m(data
a)all delay
mov a,#*:*
a)all '#r#m(data
a)all delay
mov a,#*M*
a)all '#r#m(data
a)all delay
mov a,#*>*
a)all '#r#m(data
a)all delay
mov a,#*=*
a)all '#r#m(data
a)all delay
mov a,#*9*
a)all '#r#m(data
a)all delay
mov a,#*:*
a)all '#r#m(data
a)all delay
mov a,#*9*
a)all '#r#m(data
a)all delay
./ / / t3l#" bar#" ba%a- / /
/.
mov a,#$)$-
a)all data(")an
. / / / / / / / / / / / / /
/ .
mov a,#*9*
a)all '#r#m(data
a)all delay
mov a,#*4*
a)all '#r#m(data
a)all delay
mov a,#*M*
a)all '#r#m(data
a)all delay
mov a,#* *
a)all '#r#m(data
a)all delay
mov a,#*:*
a)all '#r#m(data
a)all delay
mov a,#* *
a)all '#r#m(data
a)all delay
mov a,#*$*
a)all '#r#m(data
a)all delay
mov a,#*6*
a)all '#r#m(data
a)all delay
mov a,#*2*
a)all '#r#m(data
a)all delay
mov a,#*3*
a)all '#r#m(data
a)all delay
mov a,#*$*
a)all '#r#m(data
a)all delay
mov a,#*;*
a)all '#r#m(data
a)all delay
mov a,#*&*
a)all '#r#m(data
a)all delay
mov a,#*7*
a)all '#r#m(data
a)all delay
mov a,#*,*
a)all '#r#m(data
a)all delay
a)all t3nda(5det#'
a)all )lear(")reen
ret
pe"an&:
. / / / '#r#m 'ara'ter / / /
.
a)all data(penamp#l2
mov b,#*1*
a)all '#r#m(data
a)all delay
mov b,#*7*
a)all '#r#m(data
a)all delay
mov b,#*!*
a)all '#r#m(data
a)all delay
mov b,#*4*
a)all '#r#m(data
a)all delay
mov b,#*9*
a)all '#r#m(data
a)all delay
mov b,#*2*
a)all '#r#m(data
a)all delay
mov b,#*:*
a)all '#r#m(data
a)all delay
mov b,#*6*
a)all '#r#m(data
a)all delay
mov b,#*:*
a)all '#r#m(data
a)all delay
mov b,#*9*
a)all '#r#m(data
a)all delay
a)all t3nda(5det#'
a)all )lear(")reen
mov b,#3,-
a)all data(")an
a)all data(penamp#l
mov b,#*6*
a)all '#r#m(data
a)all delay
mov b,#*e*
a)all '#r#m(data
a)all delay
mov b,#*l*
a)all '#r#m(data
a)all delay
mov b,#*a*
a)all '#r#m(data
a)all delay
mov b,#*-*
a)all '#r#m(data
a)all delay
mov b,#* *
a)all '#r#m(data
a)all delay
mov b,#*t*
a)all '#r#m(data
a)all delay
mov b,#*e*
a)all '#r#m(data
a)all delay
mov b,#*r*
a)all '#r#m(data
a)all delay
mov b,#*j*
a)all '#r#m(data
a)all delay
mov b,#*a*
a)all '#r#m(data
a)all delay
mov b,#*d*
a)all '#r#m(data
a)all delay
mov b,#*#*
a)all '#r#m(data
a)all delay
./ / / t3l#" bar#" ba%a- / /
/.
mov b,#$)$-
a)all data(")an
. / / / / / / / / / / / / /
/ . mov b,#*8*
a)all '#r#m(data
a)all delay
mov b,#*e*
a)all '#r#m(data
a)all delay
mov b,#*b*
a)all '#r#m(data
a)all delay
mov b,#*o*
a)all '#r#m(data
a)all delay
mov b,#*)*
a)all '#r#m(data
a)all delay
mov b,#*o*
a)all '#r#m(data
a)all delay
mov b,#*r*
a)all '#r#m(data
a)all delay
mov b,#*a*
a)all '#r#m(data
a)all delay
mov b,#*n*
a)all '#r#m(data
a)all delay
mov b,#* *
a)all '#r#m(data
a)all delay
mov b,#*2*
a)all '#r#m(data
a)all delay
mov b,#*a*
a)all '#r#m(data
a)all delay
mov b,#*"*
a)all '#r#m(data
a)all delay
a)all )lear(")reen
ret
pe"an2:
a)all data(penamp#l3
a)all delay
mov a,#*t*
a)all '#r#m(data
a)all delay
mov a,#*#*
a)all '#r#m(data
a)all delay
mov a,#*d*
a)all '#r#m(data
a)all delay
mov a,#*a*
a)all '#r#m(data
a)all delay
mov a,#*'*
a)all '#r#m(data
a)all delay
mov a,#* *
a)all '#r#m(data
a)all delay
mov a,#*a*
a)all '#r#m(data
a)all delay
mov a,#*d*
a)all '#r#m(data
a)all delay
mov a,#*a*
a)all '#r#m(data
a)all delay
mov a,#* *
a)all '#r#m(data
a)all delay
./ / / t3l#" bar#" ba%a- / /
/.
mov a,#$)&-
a)all data(")an
. / / / / / / / / / / / / /
/ .
mov a,#*'*
a)all '#r#m(data
a)all delay
mov a,#*e*
a)all '#r#m(data
a)all delay
mov a,#*b*
a)all '#r#m(data
a)all delay
mov a,#*o*
a)all '#r#m(data
a)all delay
mov a,#*)*
a)all '#r#m(data
a)all delay
mov a,#*o*
a)all '#r#m(data
a)all delay
mov a,#*r*
a)all '#r#m(data
a)all delay
mov a,#*a*
a)all '#r#m(data
a)all delay
mov a,#*n*
a)all '#r#m(data
a)all delay
mov a,#* *
a)all '#r#m(data
a)all delay
mov a,#*0*
a)all '#r#m(data
a)all delay
mov a,#*a*
a)all '#r#m(data
a)all delay
mov a,#*"*
a)all '#r#m(data
a)all delay
ret
data(penamp#l:
mov a,#$)-
a)all data(")an
mov a,#$6-
a)all data(")an
mov a,#,3-
a)all data(")an
ret
data(penamp#l2:
mov a,#$)-
a)all data(")an
mov a,#$6-
a)all data(")an
mov a,#,$-
a)all data(")an
ret
data(penamp#l3:
mov a,#$)-
a)all data(")an
mov a,#$6-
a)all data(")an
mov a,#,3-
a)all data(")an
ret
data(")an:
mov p3,:
)lr r"
)lr r%
"etb en
a)all delay
)lr en
a)all delay
ret
'#r#m(data:
mov p3,:
"etb r"
)lr r%
"etb en
a)all delay
)lr en
a)all delay
ret
)lear(")reen:
mov a,#$&-
a)all data(")an
ret
t3nda(5det#':
mov r7,#&;$
td5dt':
mov r6,#&$$
td5:
mov r5,#&$$
djnz r5,
djnz r6,td5
djnz r7,td5dt'
ret
delay:
mov r7,#&$$
dly:
mov r6,#2$$
djnz r6,
djnz r7,dly
ret
tad):
mov r7,#,$-
ad): mov r6,#5$-
djnz r6,
djnz r7,ad)
ret
end


T)D$(
E$
*:: $larm
*% (ipas
Tunda 2 detik
*:: $larm Q
(ipas
Tampil pesan
RP*L/'DR
Pesan
R=!L)R
Pesan
R(#)ST)%$R
$mbil data $D&
Tampil pesan
R$/$%R
*:: (ipas
/atikan $larm
Tampil pesan
RPeringatanR
*% $larm
*% (ipas
$da G$S SSS
#TART
BAB '
(E#IMPULAN DAN #ARAN
".1 (esm,ulan
".2 #aran
Rangkaan Alat Pen/eteks (e.*+*ran &as LP&

Anda mungkin juga menyukai