BAB II TINJAUAN TEORITIS 2.1. Mikrokontroler AT89S52

advertisement
BAB II
TINJAUAN TEORITIS
2.1. Mikrokontroler AT89S52
Mikrokontroler,
sebagai
suatu
terobosan
teknologi
mikrokontroler
dan
microkomputer, hadir memenuhi kebutuhan pasar (market need) dan teknologi baru.
Sebagai teknologi baru, yaitu teknologi semi konduktor dengan kandungan transistor
yang lebih banyak namun hanya membutuhkan ruang kecil serta dapat diproduksi
secara massal (dalam jumlah banyak) sehingga harga menjadi lebih murah
(dibandingkan microprocessor). Sebagai kebutuhan pasar, mikrokontroler hadir untuk
memenuhi selera industri dan para konsumen akan kebutuhan dan keinginan alat-alat
bantu dan mainan yang lebih canggi serta dalam bidang pendidikan.
Tidak seperti sistem komputer, yang mampu menangani berbagai macam
program aplikasi (misalnya pengolah kata, pengolah angka, dan lain sebagainya),
Universitas Sumatera Utara
Microkontroler hanya bisa digunakan untuk satu aplikasi tertentu saja. Perbedaan
lainnya terletak pada perbandingan RAM dan ROM-nya.
Pada sistem komputer
perbandingan RAM dan ROM-nya besar, artinya program-program pengguna
disimpan dalam ruang RAM yang relatif besar, sedangkan rutin-rutin antar muka
perangkat keras disimpan dalam ruang ROM yang kecil. Sedangkan pada
mikrokontroler, perbandingan ROM dan RAM-nya yang besar artinya program
control disimpan dalam ROM yang ukurannya relatif lebih besar, sedangkan RAM
digunakan sebagai tempat penyimpanan sederhana sementara, termasuk registerregister yang digunakan pada microkontroler yang bersangkutan. Mikrokontroler
AT89S52 ialah mikrokomputer CMOS 8 bit dengan 8KB Flash Programmable dan
Erasable Read Only Memory (PEROM). Mikrokontroler berteknologi memori non
volatile kerapatan tingi dari Atmel ini kompatibel dengan mikrokontroler standar
industri MCS-51 baik pin kaki IC maupun set instruksinya serta harganya yang cukup
murah. Oleh karena itu, sangatlah tepat jika kita mempelajari mikrokontroler jenis ini.
Anda juga diharapkan mempelajari versi lainnya yang berdasarkan pengalaman
penulis lebih cepat di dalam pengisian program yaitu AT89S8252.
Spesifikasi penting AT89S52 :
a.
Kompatibel dengan keluarga mikrokontroler MCS51 sebelumnya
Universitas Sumatera Utara
b.
8 K Bytes In system Programmable (ISP) flash memori dengan
kemampuan 1000 kali baca/tulis
c.
tegangan kerja 4-5.0V
d.
Bekerja dengan rentang 0 – 33MHz
e.
256x8 bit RAM internal
f.
32 jalur I/0 dapat diprogram
g.
3 buah 16 bit Timer/Counter
h.
8 sumber interrupt
i.
saluran full dupleks serial UART
j.
watchdog timer
k.
dual data pointer
l.
Mode pemrograman ISP yang fleksibel (Byte dan Page Mode)
2.1.1 Kontruksi AT89S52
Mikrokontroler AT89S52 hanya memerlukan tambahan 3 kapasitor, 1 resistor dan 1
kristal serta catu daya 5 volt. Kapasitor 10 micro-fard dan resistor 10 kilo Ohm
dipakai untuk membentuk rangkaian riset. Dengan adanya rangkaian riset ini
AT89C4051 otomatis diriset begitu rangkaian menerima catu daya. Kristal dengan
frekuensi maksimum 24 MHz dan kapasitor 30 mikro-farad dipakai untuk melengkapi
Universitas Sumatera Utara
rangkaian
oscilator
pembentuk
clock
yang
menentukan
kecepatan
kerja
Mikrokontroler.
Memori merupakan bagian yang sangat penting pada Mikrokontroler.
Mikrokontroler memiliki dua macam memori yang sifatnya berbeda. Read Only
Memory (ROM) yang isinya tidak berubah meskipun IC kehilangan catu daya. Sesuai
dengan keperluannya, dalam susunan MCS-51 memori penyimpanan program ini
dinamakan sebagai memori program. Random Access Memory (RAM) isinya akan
sirna begitu IC kehilangan catu daya, dipakai untuk menyimpan data pada saat
program bekerja. RAM yang dipakai untuk menyimpan data ini disebut sebagai
memori data.
Ada berbagai jenis ROM. Untuk Mikrokontroler dengan program yang sudah
baku dan diproduksi secara masal, program diisikan kedalam ROM pada saat IC
Mikrokontroler dicetak dipabrik IC. Untuk keperluan tertentu Mikrokontroler
menggunakan ROM yang dapat diisi ulang atau Programble-Eraseable ROM yang
disingkat menjadi PROM (PEROM). Dulu banyak UV-EPROM (Ultra Violet
Eraseable Programble ROM) yang kemudian dinilai mahal dan ditinggalkan setelah
ada flash PEROM yang harganya jauh lebih murah.
Universitas Sumatera Utara
Jenis memori yang dipakai untuk memori program AT89S52 adalah flash
PEROM, program untuk mengendalikan Mikrokontroler diisikan ke memori itu lewat
bantuan alat yang dinamakan sebagai AT89C4051 flash PEROM Programmer.
Memori data yang disediakan dalam chip AT89s52 sebesar 128 kilo byte meskipun
hanya kecil saja tapi untuk banyak keperluan memori kapasitas itu sudah cukup.
AT89S52 dilengkapi UART (Universal Asyncronous Receiver/Transmiter) yang
biasa dipakai untuk komunikasi data secara seri. Jalur untuk komunikasi data seri
(RXD dan TXD) diletakkan berhimpitan dengan P1.0 dan P1.1. pada kaki nomor 2
dan 3, sehingga kalau sarana input/output bekerja menurut fungsi waktu. Clock
penggerak untaian pencacah ini bisa berasal dari oscillator kristal atau clock yang
diumpan dari luar lewat T0 dan T1/T0 dan T1 berhimpitan dengan P3.4 dan P3.5,
sehingga P3.4 dan P3.5 tidak bisa dipakai untuk jalur input/output paralel kalau T0
dan T1 dipakai.
AT89S52 mempunyai enam sumber pembangkit interupsi, dua diantaranya
adalah sinyal interupsi yang diumpankan ke kaki INT0 dan INT1. Kedua kaki ini
berhimpitan dangan P3.2 dan P3.3 sehingga tidak bisa dipakai sebagai jalur
input/output paralel kalau INT0 dan INT1 dipakai untuk menerima sinyal interupsi.
Universitas Sumatera Utara
Port1 dan 2, UART, Timer 0, Timer 1 dan sarana lainnya merupakan yang
secara fisik merupakan RAM khusus, yang ditempatkan di Special Function Register
(SFR).
2.1.2. Pin-Pin pada Microcontroller AT89S52
Mikrokontroler tersebut mempunyai 40 kaki, 32 kaki di antaranya adalah kaki untuk
keperluan port paralel. Tiap port paralel terdiri dari 8 kaki, dengan demikian 32 kaki
tersebut membentuk 4 buah port paralel, yang masing–masing dikenal sebagai Port 0,
Port 1, Port 2 dan Port 3. Nomor dari masing–masing jalur (kaki) dari port paralel
mulai dari dari 0 sampai 7, jalur (kaki) pertama Port 0 disebut sebagai P0.0 dan jalur
terakhir untuk Port 3 adalah P3.7.
Universitas Sumatera Utara
Gambar 2.1 Pinout AT89S52
Fungsi-fungsi pin AT89S52 adalah:
a. VCC : Sumber tegangan
b. GND : Ground atau pentanahan
c. RST : Masukan reset. Kondisi '1' selama 2 siklus mesin selama osilator bekerja
akan mereset mikrokontroler yang bersangkutan
Universitas Sumatera Utara
d. ALE / PROG : Keluaran ALE atau Adreess Latch Enable menghasilkan pulsa–
pulsa untuk mengancing byte rendah (low byte) alamat selama mengakses memori
eksternal. Kaki ini juga berfungsi sebagai masukan pulsa program (the program pulse
input) atau PROG selama pemrograman flash . Pada operasi normal, ALE akan
berpulsa dengan laju 1/6 dari frekuensi kristal dan dapat digunakan sebagai pewaktuan
(timing) atau pendetakan (clocking) rangkaian eksternal. Catatan, ada satu pulsa yang
dilompati selama selama pengaksesan memori data eksternal. Jika dikehendaki,
operasi ALE bisa dimatikan dengan cara mengatur bit 0 dari SFR lokasi 8Eh. Jika
isinya '1', ALE hanya akan aktif selama dijumpai instruksi MOVX atau MOVC.
Selain itu, kaki ini akan secara lemah di-pulled high . Mematikan bit ALE tidak akan
ada efeknya jika mikrokontroler mengeksekusi program secara eksternal.
e. PSEN : Program Store Enable merupakan sinyal baca untuk memori program
eksternal. Saat mikrokontroler menjalankan program dari memori eksternal, PSEN
akan diaktifkan dua kali per siklus mesin, kecuali dua aktivasi PSEN dilompati
(diabaikan) saat mengakses memori data eksternal.
f. EA/VPP : External Access Enable . EA harus selalu dihubungkan ke- ground , jika
mikrokontroler akan mengeksekusi program dari memori eksternal lokasi 0000h
hingga FFFFh. Selain dari itu, EA harus dihubungkan ke VCC agar mikrokontroler
mengakses program secara internal, yaitu pada lokasi 0000h sampai 1FFFh sedangkan
Universitas Sumatera Utara
lokasi 2000h sampai FFFFh pada memori eksternal. Kaki ini juga berfungsi menerima
tegangan 12 Volt (VPP) selama pemrograman flash, khususnya untuk tipe
mikrokontroler 12 Volt VPP.
Spesifikasi Masing-masing Port
Keempat port pada mikrokontroler bersifat dwi-arah dan masing-masing memiliki
sebuah pengancing (latch), yang diacu dalam program sebagai Register Fungsi
Khusus (RFK atau SFR) sebagai P0, P1, P2 dan P3. Selain itu juga memiliki sebuah
penggerak keluaran (output driver) dan sebuah penyangga masukan (input buffer)
pada masing-masing kaki port.
Penggerak–penggerak keluaran Port 0 dan 2 serta penyangga masukan dari Port 0
digunakan dalam pengaksesan memori eksternal. Pada aplikasi semacam ini, Port 0
mengeluarkan byte rendah alamat memori eksternal, dimultipleks secara waktu
dengan byte yang akan dituliskan atau dibaca (ke/dari memori eksternal). Port 2
mengeluarkan byte tinggi dari alamat memori eksternal jika lebar alamatnya 16-bit,
selain itu kaki–kaki Port 2 tetap meneruskan menghasilkan isi SFR dari P2. Berikut ini
akan dijelaskan masing–masing port pada mikrokontroler.
Port 0
Universitas Sumatera Utara
Port 0 merupakan keluaran/masukan (I/O) bertipe open drain bidirectional . Sebagai
port keluaran, masing–masing kaki dapat menyerap arus (sink) delapan masukan TTL
(sekitar 3,8 mA). Pada saat '1' dituliskan ke kaki– kaki Port 0 ini, maka kaki–kaki Port
0 dapat digunakan sebagai masukan– masukan berimpedansi tinggi.
Jika Port 0 dapat dikonfigurasikan sebagai bus alamat/data bagian rendah (low byte)
selama proses pengaksesan memori data dan program eksternal. Jika digunakan dalam
mode ini Port 0 memiliki pullup internal.
Port 0 juga menerima kode–kode yang dikirim kepadanya selama proses
pemrograman dan mengeluarkan kode–kode selama proses varifikasi program yang
telah tersimpan dalam flash. Dalam hal ini dibutuhkan pullup eksternal selama proses
verifikasi program.
Port 1
Port 1 merupakan I/O dwi–arah yang dilengkapi dengan pullup internal. Penyangga
keluaran Port 1 mampu memberikan/menyerap arus empat masukan TTL (sekitar 1,6
mA).
Universitas Sumatera Utara
Jika '1'dituliskan ke kaki–kaki Port 1, maka masing–masing kaki akan di-pulled high
dengan pullup internal sehingga dapat digunakan sebagai masukan. Sebagai masukan,
jika kaki–kaki Port 1 dihubungkan ke ground (di-low pulled), maka masing–masing
kaki akan memberikan arus (source) karena di-pulled high secara internal. Port 1 juga
menerima alamat bagian rendah (low byte) selama pemrograman dan verifikasi flash.
Port 2
Port 2 merupakan I/O dwi–arah yang dilengkapi dengan pullup internal. Penyangga
keluaran port 1 mampu memberikan/menyerap arus empat masukan TTL (sekitar 1,6
mA).
Jika '1' dituliskan ke kaki–kaki Port 2, maka masing–masing kaki akan di-pulled high
dengan pullup internal sehingga dapat digunakan sebagai masukan. Sebagai masukan,
jika kaki–kaki Port 2 dihubungkan ke ground (di-pulled low), maka masing–masing
kaki akan memberikan arus (source) karena di-pulled high secara internal.
Port 2 akan memberikan byte alamat bagian tinggi (high byte) selama pengambilan
instruksi dari memori program eksternal dan selama pengaksesan memori data
eksternal yang menggunakan perintah dengan alamat 16-bit. Dalam aplikasi ini, jika
Universitas Sumatera Utara
ingin mengirimkan '1', maka digunakan pullup internal yang sudah disediakan. Selama
pengaksesan memori data eksternal yang menggunakan perintah dengan alamat 8-bit,
Port 2 akan mengirimkan isi dari SFR P2. Port 2 juga menerima alamat bagian tinggi
selama pemrograman dan verifikasi flash.
Port 3
Port 3 merupakan port I/O dwi–arah dengan dilengkapi pullup internal. Penyangga
keluaran Port 3 mampu memberikan/menyerap arus empat masukan TTL (sekitar 1,6
mA).
Jika '1' dituliskan ke kaki–kaki port 3, maka masing–masing kaki akan di-pulled high
dengan pullup internal sehingga dapat digunakan sebagai masukan. Sebagai masukan,
jika kaki–kaki port 3 dihubungkan ke ground (di-pulled low), maka masing–masing
kaki akan memberikan arus (source) karena di-pulled high secara internal.
Port 3, sebagaimana Port 1, memiliki fungsi–fungsi alternatif antara lain menerima
sinyal–sinyal kontrol (P3.6 dan P3.7), bersama–sama dengan port 2 (P2.6 dan P2.7)
selama pemrograman dan verifikasi flash.
Timer/Counter
Universitas Sumatera Utara
Keluarga mikrokontroler MCS51 dilengkapi dengan tiga perangkat Timer/Counter,
masing-masing dinamakan sebagai Timer/Counter 0, Timer/Counter 1, dan Timer 2.
Untuk mengakses Timer/Counter tersebut digunakan register khusus yang tersimpan
dalam Special Function Register (SFR). Pencacah biner Timer 0 diakses melalui
register TL0 (Timer 0 Low Byte , memori internal alamat 6Ah) dan register TH0
(Timer 0 High Byte , memori internal alamat 6Ch). Pencacah biner Timer 1 diakses
melalui register TL1 (Timer 1 Low Byte , memori internal alamat 6Bh) dan register
TH1 (Timer 1 High Byte , memori internal alamat 6Dh).
Pencacah biner Timer/Counter pada MCS51 merupakan pencacah biner 16 bit naik
(count up binary counter) yang mencacah 0000h sampai FFFFh, saat kondisi
pencacah berubah dari FFFFh kembali ke 0000h akan timbul sinyal berlebihan
(overflow ).
Untuk mengatur kerja Timer/Counter tersebut digunakan 2 register tambahan, yaitu
register TCON (Timer Control Register), memori data internal alamat 88h, bisa diberi
alamat per bit). Dan register TMOD (Timer Mode Register , memori data internal
alamat 89h, tidak bisa diberi alamat per bit).
Universitas Sumatera Utara
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
TF1
TR1
TF0
TR0
1E1
1T1
1E0
1T0
Tabel 2.1. Susunan bit dalam register TCON
a.
TF1 : overflow flag Timer 1/Counter 1 (1 = overflow)
b.
TR1 : Enable Timer 1/Counter 1
c.
TF0 : overflow flag Timer 0/Counter 0 (1 = overflow)
d.
TR0 : Enable Timer 0/Counter 0
e.
IE1 : External Interrupt 1 edge flag
f.
IT1 : Interrupt 1 type control bit . Set/clear oleh program untuk menspesifikasi
sisi turun/level rendah trigger dari interupsi eksternal.
g.
IE0 : External Interrupt 0 edge flag
h.
IT0 : Interrupt 0 type control bit . Set/clear oleh program untuk menspesifikasi
sisi turun/level rendah trigger dari interupsi eksternal.
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
GATE
CT
M1
M0
GATE
CT
M1
M0
Tabel 2.2 Susunan bit dalam register TMOD
Universitas Sumatera Utara
a.
GATE : merupakan bit pengatur sinyal detak. Jika GATE = 0, Timer/Counter
akan berjalan saat TR0 atau TR1 pada register TCON (TRx) = 1. Jika GATE =
1, Timer/Counter akan berjalan saat TRx = 1 atau INT1 untuk Timer 1 dan INT0
untuk Timer 0 (INTx) = 1.
b.
C/T : dipakai untuk mengatur sumber sinyal detak yang diberikan kepada
pencacah biner. Jika C/T = 0, maka Timer akan aktif dengan sinyal detak
diperoleh dari osilator kristal yang frekuensinya sudah dibagi 12. Jika C/T = 1,
maka Counter akan aktif dengan sinyal detak diperoleh dari kaki T0 (untuk
Timer 0) dan kaki T1 (untuk Timer 1).
c.
M0 dan M1 : dipakai untuk menentukan Mode Timer/Counter.
MI
M0
Mode
Operasi
0
0
0
Timer Counter 13 bit
0
1
1
Timer Counter 16 bit
1
0
2
Timer auto reload 8 bit
1
1
3
TL0 adalah timer Counter 8 bit
yang dikontrol oleh control bit
Timer 0 (TF0)
TH0 adalah timer counter 8 bit
yang dikontrol oleh control bit
Universitas Sumatera Utara
timer 1 (TF1)
Tabel 2.3 Mode Operasi Timer/Counter
Untuk menghitung clock frequency adalah menggunakan perhitungan berikut :
Sehingga, dengan menggunakan Mode 1 dapat dihitung waktu tunda yang diperlukan
dengan perhitungan berikut :
Delay = ( 65536 - n ) x T
2.2 Bahasa Assembly MCS-51
Universitas Sumatera Utara
Bahasa yang digunakan untuk memprogram IC mikrokontroler AT89C4051 adalah
bahasa assembly untuk MCS-51. angka 51 merupakan jumlah instruksi pada bahasa
ini hanya ada 51 instruksi, antara lain yaitu :
1. Instruksi MOV
Perintah ini merupakan perintah untuk mengisikan nilai ke alamat atau register
tertentu. Pengisian nilai dapat secara langsung atau tidak langsung.
Contoh pengisian nilai secara langsung
MOV
R0,#20h
Perintah di atas berarti : isikan nilai 20 Heksadesimal ke register 0 (R0).
Tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah nilai.
Contoh pengisian nilai secara tidak langsung
MOV
20h,#80h
...........
............
MOV
R0,20h
Perintah di atas
berarti : isikan nilai yang terdapat pada alamat 20
Heksadesimal ke register 0 (R0).
Tanpa tanda # sebelum bilangan menunjukkan bahwa bilangan tersebut adalah
alamat.
2. Instruksi DJNZ
Universitas Sumatera Utara
Decreament Jump If Not Zero (DJNZ) ini merupakan perintah untuk
mengurangi nilai register tertentu dengan 1 dan lompat jika hasil
pengurangannya belum nol. Contoh ,
MOV
R0,#80h
Loop:
...........
............
DJNZ R0,Loop
............
R0 -1, jika belum 0 lompat ke loop, jika R0 = 0 maka program akan
meneruskan ke perintah pada baris berikutnya.
3. Instruksi ACALL
Instruksi ini berfungsi untuk memanggil suatu rutin tertentu. Contoh :
.............
ACALL
TUNDA
.............
TUNDA:
.................
4. Instruksi RET
Instruksi RETURN (RET) ini merupakan perintah untuk kembali ke rutin
pemanggil setelah instruksi ACALL dilaksanakan. Contoh,
ACALL
TUNDA
Universitas Sumatera Utara
.............
TUNDA:
.................
RET
5. Instruksi JMP (Jump)
Instruksi ini merupakan perintah untuk lompat ke alamat tertentu. Contoh,
Loop:
.................
..............
JMP Loop
6. Instruksi JB (Jump if bit)
Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang
dimaksud berlogika high (1). Contoh,
Loop:
JB
P1.0,Loop
.................
7. Instruksi JNB (Jump if Not bit)
Instruksi ini merupakan perintah untuk lompat ke alamat tertentu, jika pin yang
dimaksud berlogika Low (0). Contoh,
Universitas Sumatera Utara
Loop:
JNB
P1.0,Loop
.................
8. Instruksi CJNZ (Compare Jump If Not Equal)
Instruksi ini berfungsi untuk membandingkan nilai dalam suatu register
dengan suatu nilai tertentu. Contoh,
Loop:
................
CJNE R0,#20h,Loop
................
Jika nilai R0 tidak sama dengan 20h, maka program akan lompat ke rutin
Loop. Jika nilai R0 sama dengan 20h,maka program akan melanjutkan
instruksi selanjutnya..
9. Instruksi DEC (Decreament)
Instruksi ini merupakan perintah untuk mengurangi nilai register yang
dimaksud dengan 1. Contoh,
MOV R0,#20h
R0 = 20h
................
DEC R0
R0 = R0 – 1
.............
Universitas Sumatera Utara
10. Instruksi INC (Increament)
Instruksi ini merupakan perintah untuk menambahkan nilai register yang
dimaksud dengan 1. Contoh,
MOV R0,#20h
R0 = 20h
................
INC R0
R0 = R0 + 1
.............
11. Dan lain sebagainya
2.3 Software 8051 Editor, Assembler, Simulator
Instruksi-instruksi yang merupakan bahasa assembly tersebut dituliskan pada sebuah
editor, yaitu 8051 Editor, Assembler, Simulator. Tampilannya seperti di bawah ini.
Universitas Sumatera Utara
Gambar 2.2 8051 Editor, Assembler, Simulator
Setelah program selesai ditulis, kemudian di-save dan kemudian di-Assemble (dicompile). Pada saat di-assemble akan tampil pesan peringatan dan kesalahan. Jika
masih ada kesalahan atau peringatan, itu berarti ada kesalahan
dalam penulisan
perintah atau ada nama subrutin yang sama, sehingga harus diperbaiki terlebih dahulu
sampai tidak ada pesan kesalahan lagi.
Software 8051IDE ini berfungsi untuk merubah program yang kita tuliskan ke
dalam bilangan heksadesimal, proses perubahan ini terjadi pada saat peng-compile-an.
Bilangan heksadesimal inilah yang akan dikirimkan ke mikrokontroller.
2.4 Software Downloader
Untuk mengirimkan bilangan-bilangan heksadesimal ini ke mikrokontroller digunakan
software ISP- Flash Programmer 3.0a yang dapat didownload dari internet.
Tampilannya seperti gambar di bawah ini
Universitas Sumatera Utara
Gambar 2.3 ISP- Flash Programmer 3.0a
Cara menggunakannya adalah dengan meng-klik Open File untuk mengambil
file heksadesimal dari hasil kompilasi 8051IDE, kemudian klik Write untuk
mengisikan hasil kompilasi tersebut ke mikrokontroler.
2.5 Sensor Infra Red
Sinar infra merah yang dipancarkan oleh pemancar infra merah tentunya mempunyai
aturan tertentu agar data yang dipancarkan dapat diterima dengan baik di receiver.
Oleh karena itu baik di transmitter infra merah maupun receiver infra merah harus
mempunyai aturan yang sama dalam mentransmisikan (bagian transmitter) dan
Universitas Sumatera Utara
menerima sinyal tersebut kemudian mendekodekannya kembali menjadi data biner
(bagian receiver).
Komponen yang dapat menerima infra merah ini merupakan komponen yang peka
cahaya yang dapat berupa dioda (photodioda) atau transistor (phototransistor).
Komponen ini akan merubah energi cahaya, dalam hal ini energi cahaya infra merah,
menjadi pulsa-pulsa sinyal listrik. Komponen ini harus mampu mengumpulkan sinyal
infra merah sebanyak mungkin sehingga pulsa-pulsa sinyal listrik yang dihasilkan
kualitasnya cukup baik. Semakin besar intensitas infra merah yang diterima maka
sinyal pulsa listrik yang dihasilkan akan baik jika sinyal infra merah yang diterima
intensitasnya lemah maka infra merah tersebut harus mempunyai pengumpul cahaya
(light collector) yang cukup baik dan sinyal pulsa yang dihasilkan oleh sensor infra
merah ini harus dikuatkan. Pada prakteknya sinyal infra merah yang diterima
intensitasnya sangat kecil sehingga perlu dikuatkan.
Selain itu agar tidak terganggu oleh sinyal cahaya lain maka sinyal listrik yang
dihasilkan oleh sensor infra merah harus difilter pada frekuensi sinyal carrier yaitu
pada 30 KHz sampai 40 KHz. Selanjutnya baik photodioda maupun phototransistor
disebut sebagai photodetector. Dalam penerimaan infra merah, sinyal ini merupakan
sinyal infra merah yang termodulasi. Pemodulasian sinyal data dengan sinyal carrier
dengan frekuensi tertentu akan dapat memperjauh trasnmisi data sinyal infra.
Universitas Sumatera Utara
Sebuah photodioda, biasanya mempunyai karakteristik yang lebih baik daripada
phototransistor dalam responnya terhadap cahaya infra merah. Biasanya photo dioda
mempunyai respon 100 kali lebih cepat daripada phototransistor. Oleh sebab itulah
para
designer
cenderung
menggunakan
photodioda
daripada
menggunakan
phototransistor. Tetapi sebuah phototransistor tetap mempunyai keunggulan yaitu
mempunyai kemampuan untuk menguatkan arus bocor menjadi ratusan kali jika
dibandingkan dengan photodiode. Faktor lain yang juga berpengaruh pada
kemampuan penerima infra merah adalah ‘active area’ dan ‘respond time’. Semakin
besar area penerimaan suatu dioda infra merah maka semakin besar pula intensitas
cahaya yang dikumpulkannya sehingga arus bocor yang diharapkan pada teknik
‘reserved bias’ semakin besar. Selain itu semakin besar area penerimaan maka sudut
penerimaannya juga semakin besar. Kelemahan area penerimaan yang semakin besar
ini adalah noise yang dihasilkan juga semakin besar pula. Begitu juga dengan respon
terhadap frekuensi, semakin besar area penerimaannya maka respon frekuansinya
turun dan sebaliknya jika area penerimaannya kecil maka respon terhadap sinyal
frekuensi tinggi cukup baik.
2.5.1
Dioda Pemancar Infra Merah ( LED Infra merah)
Universitas Sumatera Utara
Untuk memperoleh jarak yang cukup jauh, Diode Infrared memerlukan sinyal dengan
frekwensi 30 hingga 50 KHz. Berbeda dengan Diode LED yang hanya memerlukan
level tegangan DC saja untuk mengaktifkan LED, Diode Infrared memerlukan sinyal
AC dengan frekwensi 30 hingga 50 KHz untuk mengaktifkannya. Cahaya infrared
tersebut tidak dapat ditangkap oleh mata manusia, sehingga diperlukan phototransistor
untuk mendeteksinya
LED adalah dioda yang menghasilkan cahaya saat diberi energi listrik. Dalam
bias maju sambungan p-n terdapat rekombinasi antara elektron bebas dan lubang
(hole). Energi ini tidak seluruhnya dirubah kedalam bentuk energi cahaya atau photon
melainkan dalam bentuk panas sebagian.
Proses pemancaran cahaya akibat adanya energi listrik yang diberikan
terhadap sustu bahan disebut dengan sifat elektroluminesensi. Material lain adalah
misalnya Galium Arsenida Pospat (GaAsP) atau Galium pospat (GaP) : Photon energi
cahaya dipancarkan untuk menghasilkan cahaya tampak. Jenis lain dari LED
digunakan untuk menghasilkan energi tidak tampak seperti yang dipancarkan oleh
pamancar laser atau infra merah.
Universitas Sumatera Utara
Pemancar infra merah adalah dioda solid state yang terbuat dari bahan Galium
Arsenida (GaAs) yang mampu memancarkan fluks cahaya ketika dioda ini dibias
maju. Bila diberi bias maju elektron dari daerah-n akan menutup lubang elektron yang
ada di daerah-p. Selama proses rekombinasi ini, energi dipancar keluar dari
permukaan p dan n dalam bentuk photon. Photon-photon yang dihasilkan ini ada yang
diserap lagi dan ada yang meninggalkan permukaan dalam bentuk radiasi energi.
VCC
5V
330Ω
Gambar 2.4 Simbol dan rangkaian sebuah LED
Dengan menggunakan unsur-unsur diatas, pabrik dapat membuat LED yang
memancarkanwarna merah, kuning dan infra merah. LED yang menghasilkan
pancaran yang kelihatan dapat beguna pada display peralatan, mesin hitung, jam
Universitas Sumatera Utara
digital, dan lain-lain. LED infra merah dapat digunakan dalam sistem tanda bahaya
pencuri dan ruang ligkup lain yang membutuhkan pancaran yang tak kelihatan.
Keuntungan dari LED dibandingkan dengan lampu pijar yaitu umurnya yang lebih
panjang, teganganya rendah dan saklar nyala matinya cepat.
Gelombang infra merah yang dihasilkan oleh elektron-elektron dalam molekul
yang bergetar karena benda dipanaskan. Selain tidak dapat dilihat secara langsung
sinar infra merah juga dapat menembus kabut dan awan tebal. Dengan ciri-ciri yang
spesifiktersebut, pesawat udara yang terbang tinggi atau pun satelit-satelit dapat
membuat photo permukaan bumi yang tidak diperoleh dengan menggunakan cahaya
infra merah.
Radiasi sinar infra merah dapat getaran-getaran atom pada suatu molekul.
Getaran atom pada suatu molekul dapat memancarkan gelombang elektromagnetik.
Pada frekuensi-frekuensi yang khas dalam infra merah sehingga spektroskopi. Infra
merah merupakan salah satu alat penting untuk mempelajari spektrum molekul.
Energi yang terkandung dalam radiasi sinar ini tampak seperti energi panas termasuk
cahaya yang diterima dari matahari sejumlah besar mengandung radiasi ini.
2.6 Pencacah
Universitas Sumatera Utara
Penghitung atau pencacah (counter) adalah rangkaian sirkuit digital atau
kadang-kadang berbentuk chip yang bisa dipakai untuk menghitung pulsa
atau sinyal digital yang umumnya dihasilkan dari osilator. Penghitung ini bisa
menghitung pulsa secara biner murni (binary counter) ataupun secara
desimal-terkodekan-secara-biner (decimal counter).
Dalam penghitung biner murni, angka 9 dinyatakan dalam bentuk bilangan
biner 1001, dan berikutnya angka 10 dinyatakan dalam bentuk biner 1010. Sedangkan
dalam penghitung desimal-terkodekan-secara-biner, angka 9 adalah biner 1001, tetapi
angka 10 dinyatakan dalam bentuk: 0001 0000. Angka desimal 100 dalam biner
murni adalah 1100100, sedangkan dalam BCD adalah 0001 0000 0000 (3 buah digit
desimal masing-masing dari kelompok 4 bit).
Untuk jelasnya, angka desimal 0 sampai 17 (yang kita kenal sehari-hari), jika
dinyatakan dalam bilangan biner murni dan biner BCD ( dengan 5 bit), akan nampak
seperti di bawah ini. Angka 0 sampai 9 mempunyai bentuk biner murni dan biner
BCD yang sama, tetapi mulai dari angka 10 keduanya belainan.
Biner murni Biner BCD
Universitas Sumatera Utara
0 0000
0 0000
0 0001
0 0001
0 0010
0 0010
0 0011
0 0011
0 0100
0 0100
0 0101
0 0101
0 0110
0 0110
0 0111
0 0111
0 1000
0 1000
0 1001
0 1001
0 1010
1 0000
0 1011
1 0001
0 1100
1 0010
0 1101
1 0011
0 1110
1 0100
0 1111
1 0101
1 0000
1 0110
1 0001
1 0111
Universitas Sumatera Utara
dst...
Tabel 2.4 Konversi Biner Murni dan Biner BCD
Rangkaian penghitung ini kebanyakan dipakai dalam alat penghitung pulsa
putaran mesin, atau putaran roda kendaraan. Berdasarkan jumlah pulsa yang terhitung
per detik atau per menit, kita dapat menentukan kecepatan putaran mesin, kecepatan
jalannya kendaraan, jarak yang ditempuh, dll. Misalnya, kalau jumlah putaran per
detik dari roda kendaraan adalah 10, dan panjang busur lingkaran (keliling) roda ban
itu = 1 meter, maka kendaraan itu berjalan sepanjang 10 meter per detik. Dengan kata
lain jika dinyatakan dalam km/jam, kecepatan kendaraan itu menjadi 10*60*60 =
36.000 meter per jam, atau 36 km/jam.
Alat penghitung ini (baik yang biner maupun desimal BCD) merupakan bagian
penting dalam sistem peralatan digital dan penggunaannya dalam bidang industri.
Selain untuk menghitung pulsa putaran, penghitung/pencacah juga dipakai untuk
menghitung pulsa waktu, alat yang penting dalam bidang telekomunikasi yaitu untuk
mencatat lama pembicaraan. Penghitung bisa dipakai juga untuk mengontrol robot
kapan harus aktif (pada jam berapa, atau setelah berapa menit lagi). Banyak contoh
lain yang bisa disebutkan mengenai penggunaan penghitung ini dalam bidang kontrol
dan elektronika digital.
Universitas Sumatera Utara
Gambar 2.5 Pencacah dengan menggunakan flip-flop JK
Bagi masyarakat awam, penghitung bisa diartikan sebagai kalkulator yang
dipakai untuk menghitung untuk keperluan sehari-hari. Ada dua macam kalkulator:
penghitung sederhana, dan penghitung ilmiah (scientific calculator). Dalam
penghitung sederhana, kita hanya bisa menghitung: + - * / % kwadrat, 1/x, dan operasi
memori saja (cukup untuk keperluan penghitung rumah tangga sehari-hari).
Sedangkan pada scientific calculator, kita bisa menghitung rumus matematika yang
lebih rumit, seperti: pangkat, exp, ln, sin, cosin, tg, dll. Kebanyakan dari kita sekarang
tidak perlu membeli kalkulator ini, karena dalam komputer PC kita (MS Windows dan
MS Office) di dalamnya sudah disediakan kalculator.
Universitas Sumatera Utara
Download