0% menganggap dokumen ini bermanfaat (0 suara)
4 tayangan19 halaman

Timer dan Counter pada AT89S51

Mikrokontroler AT89S51 dilengkapi dengan dua timer/counter 16-bit, Timer0 dan Timer1, yang memiliki perbedaan dalam sumber detak. Terdapat beberapa mode operasi untuk timer, termasuk mode 0 hingga mode 3, yang mempengaruhi penggunaan register TH dan TL. Interupsi juga merupakan fitur penting dalam mikrokontroler ini, memungkinkan penanganan kejadian tertentu secara efisien melalui program layanan interupsi (ISR).

Diunggah oleh

nitamanteng
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOC, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
4 tayangan19 halaman

Timer dan Counter pada AT89S51

Mikrokontroler AT89S51 dilengkapi dengan dua timer/counter 16-bit, Timer0 dan Timer1, yang memiliki perbedaan dalam sumber detak. Terdapat beberapa mode operasi untuk timer, termasuk mode 0 hingga mode 3, yang mempengaruhi penggunaan register TH dan TL. Interupsi juga merupakan fitur penting dalam mikrokontroler ini, memungkinkan penanganan kejadian tertentu secara efisien melalui program layanan interupsi (ISR).

Diunggah oleh

nitamanteng
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOC, PDF, TXT atau baca online di Scribd

Mikrokontroler AT89S51 memiliki dua buah timer / counter yang disebut Timer0 dan Timer1 dengan kapasitas 16 bit.

Istilah
timer dan counter keduanya memiliki kesamaan yaitu, adanya sumber detak yang akan mengaktifkannya. Keduanya juga
merupakan pencacah atau penghitung. Berikut hal yang membedakan antara keduanya yaitu:
Timer memiliki sumber detak yang tetap, yaitu oscillator.
Counter memiliki sumber detak yang tidak tetap, yaitu berasal dari mikrokontroler eksternal.
Berikut beberapa register untuk timer / counter yaitu :
1. THx, TLx (register timer / counter high dan low)
Subscript x dapat berarti 0 atau 1. X diisi 0 jika dimaksudkan timer0 dan x bernilai 1 jika dimaksudkan timer1.
2. TMOD (register timer mode)
Register ini digunakan untuk mengatur mode timer. Register ini juga digunakan untuk mengatur penggunaan timer saja atau
counter saja.
3. TCON (register timer control)
Register ini digunakan untuk menyimpan hasil limpahan suatu cacahan / penghitungan. Dalam register ini, terdapat juga register
bit untuk mengaktifkan atau menonaktifkan suatu timer.
Register THx dan TLx digunakan untuk menampung hasil hitungan timer / counter kapasitas maksimum TH dan TL seluruhnya
adalah 16 bit. Namun, ada dua mode timer yang tidak menggunakannya secara maksimum melainkan hanya 13 bit dan 8 bit saja.

Pembagian bit register THx dan TLx


Register TMOD berfungsi untuk mengatur penggunaan mode suatu timer, pemakaian counter atau timer, dan pengaturan Gate.

Register TMOD
Bit register TMOD
Mode timer menentukan kapasitas maksimal penggunaan register TH dan TL. Berikut pembahasan mode 0, mode 1, mode 2, dan
mode 3.
1 Mode 0
Mode ini dikenal dengan nama mode timer / counter 13 bit.

Bit THx dan TLx pada mode 0


1 Mode 1
Mode 1 menggunakan kapasitas register TLx dan THx secara maksimal sehingga dinamakan mode 16 bit.
2 Mode 2
Mode 2 sering disebut sebagai pencacah biner 8 bit dengan isi ulang (auto reload). Register yang digunakan untuk mencacah
adalah TLx sedangkan THx digunakan sebagai tempat menyimpan data yang akan dituliskan ke TLx saat terjadi limpahan pada
TLx. Isi THx diisikan pertama kali oleh pemrogram sedangkan isi TLx akan terus bertambah sesuai adanya detak. Setiap kali
nilai TLx berubah dari FF heksa menjadi 00 heksa akan terjadi overflow sehingga TFx (pada register TCON) akan bernilai 1.
Nilai TFx perlu di-nol-kan secara manual untuk kembali menggunakan timer.
3 Mode 3
Timer mode 3 sering disebut sebagai two 8 bit timer / counter karena memang menggunakan dua buah timer 8 bit yang kerjanya
[Link] yang digunakan adalah TL0 dan TH0 dengan masing-masing pengaturan adalah sebagai berikut:
TL0 dapat berfungsi sebagai counter maupun timer 8 bit dengan sumber detak yang dapat dipilih yaitu sumber detak yang berasal
dari P3.4 (T0) atau dari osilator/12.
TH0 hanya dapat difungsikan sebagai timer 8 bit karena sumber detak hanya berasal dari osilator/12.
Register TCON digunakan untuk menampung bit overflow dan digunakan untuk mengaktifkan timer / counter. Hanya bit ke-7
sampai dengan bit ke-4 yang digunakan untuk operasi timer / counter sedangkan bit ke-3 sampai dengan bit ke-0 digunakan
untuk interrupt.

Register TCON
Bit TFx bernilai 1 jika ada limpahan timer dan perlu di-nol-kan kembali secara manual.
Bit TRx digunakan untuk mengaktifkan timer / counter
Pengertian Counter Secara bahasa counter berarti pencacah, artinya rangkaian ataupun aplikasi counter bias digunakan untuk
mencacah / menghitung baik hitungan secara keatas (counter up) ataupun menghitung mundur (counter down). Untuk aplikasi
dilapangan biasanya digunakan pada conveyor untuk level industry ataupun aplikasi lainnya, secara hardware pun counter bisa
digunakan untuk sensor apapun tetapi lebih ke sensor yang keluarannya berupa lebel tegangan digital semisal, push button, saklar
proximity tetapi bukan berarti tidak bisa digunakan pada tegangan analog seperti suhu, tekanan dan lainnya, hanya saja sedikit
kurang maksimal.
Seperti namanya, interupsi adalah suatu kejadian yang akan menghentikan sementara jalan program saat itu.
Dengan interupsi, suatu alur program dapat dihentikan sementara untuk menjalankan suatu subrutin, dan kemudian
melanjutkan aliran program secara normal seperti tidak pernah ada interupsi. Subrutin ini yang disebut dengan
interrupt handler, dan hanya dijalankan jika terjadi suatu kejadian khusus (event). Kejadian ini bisa berupa timer yang
mengalami overflow, penerimaan karakter melalui port serial, mengirimkan karakter melalui port serial, atau salah
satu dari dua kejadian eksternal. Mikrokontroler 89C51 bisa dikonfigurasi untuk menangani interupsi yang
disebabkan oleh salah satu dari kejadian.

Dengan interupsi ini, dapat dengan mudah dimonitor kejadian-kejadian yang diinginkan. Tanpa interupsi maka proses
monitor ini dilakukan manual dengan pengecekan berulang. Proses pengecekan manual ini akan membuat program
menjadi panjang dan lebih rumit.

1.4. Interupsi

8051 mempunyai 5 buah sumber interupsi. Dua buah interupsi eksternal, dua buah interupsi timer dan sebuah interupsi port
serial.
Meskipun memerlukan pengertian yang lebih mendalam, pengetahuan mengenai interupsi sangat membantu mengatasi masalah
pemrograman mikroprosesor/mikrokontroler dalam hal menangani banyak peralatan input/output. Pengetahuan mengenai
interupsi tidak cukup hanya dibahas secara teori saja, diperlukan contoh program yang konkrit untuk memahami.
Saat kaki RESET pada IC mikroprosesor/mikrokontroler menerima sinyal reset (pada MCS51 sinyal tersebut berupa sinyal ‘1’
sesaat, pada prosesor lain umumnya merupakan sinyal ‘0’ sesaat), Program Counter diisi dengan sebuah nilai. Nilai tersebut
dinamakan sebagai vektor reset (reset vector), merupakan nomor awal memori-program yang menampung program yang harus
dijalankan.
Pembahasan di atas memberi gambaran bahwa proses reset merupakan peristiwa perangkat keras (sinyal reset diumpankan ke
kaki Reset) yang dipakai untuk mengatur kerja dari perangkat lunak, yakni menentukan aliran program prosesor (mengisi
Program Counter dengan vektor reset).
Program yang dijalankan dengan cara reset, merupakan program utama bagi prosesor.

Peristiwa perangkat keras yang dipakai untuk mengatur kerja dari perangkat lunak, tidak hanya terjadi pada proses reset, tapi
terjadi pula dalam proses interupsi.
Dalam proses interupsi, terjadinya sesuatu pada perangkat keras tertentu dicatat dalam flip-flop khusus, flip-flop tersebut sering
disebut sebagai ‘petanda’ (flag), catatan dalam petanda tersebut diatur sedemikian rupa sehingga bisa merupakan sinyal
permintaan interupsi pada prosesor. Jika permintaan interupsi ini dilayani prosesor, Program Counter akan diisi dengan sebuah
nilai. Nilai tersebut dinamakan sebagai vektor interupsi (interrupt vector), yang merupakan nomor awal memori-program yang
menampung program yang dipakai untuk melayani permintaan interupsi tersebut.
Program yang dijalankan dengan cara interupsi, dinamakan sebagai program layanan interupsi (ISR - Interrupt Service Routine).
Saat prosesor menjalankan ISR, pekerjaan yang sedang dikerjakan pada program utama sementara ditinggalkan, selesai
menjalankan ISR prosesor kembali menjalankan program utama, seperti yang digambarkan dalam Gambar 1.
Gambar 1.8 Bagan kerja prosesor melayani interupsi

Sebuah prosesor bisa mempunyai beberapa perangkat keras yang merupakan sumber sinyal permintaan interupsi, masing-masing
sumber interupsi dilayani dengan ISR berlainan, dengan demikian prosesor mempunyai beberapa vektor interupsi untuk memilih
ISR mana yang dipakai melayani permintaan interupsi dari berbagai sumber. Kadang kala sebuah vektor interupsi dipakai oleh
lebih dari satu sumber interupsi yang sejenis, dalam hal semacam ini ISR bersangkutan harus menentukan sendiri sumber
interupsi mana yang harus dilayani saat itu.
Jika pada saat yang sama terjadi lebih dari satu permintaan interupsi, prosesor akan melayani permintaan interupsi tersebut
menurut perioritas yang sudah ditentukan, selesai melayani permintaan interupsi perioritas yang lebih tinggi, prosesor melayani
permintaan interupsi berikutnya, baru setelah itu kembali mengerjakan program utama.
Saat prosesor sedang mengerjakan ISR, bisa jadi terjadi permintaan interupsi lain, jika permintaan interupsi yang datang
belakangan ini mempunyai perioritas lebih tinggi, ISR yang sedang dikerjakan ditinggal dulu, prosesor melayani permintaan
yang perioritas lebih tinggi, selesai melayani interupsi perioritas tinggi prosesor meneruskan ISR semula, baru setelah itu kembali
mengerjakan program utama. Hal ini dikatakan sebagai interupsi bertingkat (nested interrupt), tapi tidak semua prosesor
mempunyai kemampuan melayani interupsi secara ini.

1.4.1. Sumber interupsi MCS51 Seperti terlihat dalam Gambar 2, AT89C51 mempunyai 6 sumber interupsi, yakni Interupsi
External (External Interrupt) yang berasal dari kaki INT0 dan INT1, Interupsi Timer (Timer Interrupt) yang berasal dari Timer 0
maupun Timer 1, Interupsi Port Seri (Serial Port Interrupt) yang berasal dari bagian penerima dan bagian pengirim Port Seri.
Di samping itu AT89C52 mempunyai 2 sumber interupsi lain, yakni Interupsi Timer 2 bersumber dari Timer 2 yang memang
tidak ada pada AT89C51.

Bit IE0 (atau bit IE1) dalam TCON merupakan petanda (flag) yang menandakan adanya permintaan Interupsi Eksternal. Ada 2
keadaan yang bisa meng-aktip-kan petanda ini, yang pertama karena level tegangan ‘0’ pada kaki INT0 (atau INT1), yang kedua
karena terjadi transisi sinyal ‘1’ menjadi ‘0’ pada kaki INT0 (atau INT1). Pilihan bentuk sinyal ini ditentukan lewat bit IT0 (atau
bit IT1) yang terdapat dalam register TCON.
1. Kalau bit IT0 (atau IT1) =’0’ maka bit IE0 (atau IE1) dalam TCON menjadi ‘1’ saat kaki INT0=’0’.
2. Kalau bit IT0 (atau IT1) =’1’ maka bit IE0 (atau IE1) dalam TCON menjadi ‘1’ saat terjadi transisi sinyal ‘1’ menjadi ‘0’ pada
kaki INT0.
Menjelang prosesor menjalankan ISR dari Interupsi Eksternal, bit IE0 (atau bit IE1) dikembalikan menjadi ‘0’, menandakan
permintaan Interupsi Eksternal sudah dilayani. Namun jika permintaan Interupsi Ekternal terjadi karena level tegangan ‘0’ pada
kaki IT0 (atau IT1), dan level tegangan pada kaki tersebut saat itu masih =’0’ maka bit IE0 (atau bit IE1) akan segera menjadi ‘1’
lagi!
Bit TF0 (atau bit TF1) dalam TCON merupakan petanda (flag) yang menandakan adanya permintaan Interupsi Timer, bit TF0
(atau bit TF1) menjadi ‘1’ pada saat terjadi limpahan pada pencacah biner Timer 0 (atau Timer 1).
Menjelang prosesor menjalankan ISR dari Interupsi Timer, bit TF0 (atau bit TF1) dikembalikan menjadi ‘0’, menandakan
permintaan Interupsi Timer sudah dilayani.
Interupsi port seri terjadi karena dua hal, yang pertama terjadi setelah port seri selesai mengirim data 1 byte, permintaan interupsi
semacam ini ditandai dengan petanda (flag) TI=’1’. Yang kedua terjadi saat port seri telah menerima data 1 byte secara lengkap,
permintaan interupsi semacam ini ditandai dengan petanda (flag) RI=’1’.
Petanda di atas tidak dikembalikan menjadi ‘0’ menjelang prosesor menjalankan ISR dari Interupsi port seri, karena petanda
tersebut masih diperlukan ISR untuk menentukan sumber interupsi berasal dari TI atau RI. Agar port seri bisa dipakai kembali
setelah mengirim atau menerima data, petanda-petanda tadi harus di-nol-kan lewat program.
Petanda permintaan interupsi (IE0, TF0, IE1, TF1, RI dan TI) semuanya bisa di-nol-kan atau di-satu-kan lewat instruksi,
pengaruhnya sama persis kalau perubahan itu dilakukan oleh perangkat keras. Artinya permintaan interupsi bisa diajukan lewat
pemrograman, misalnya permintaan interupsi eksternal IT0 bisa diajukan dengan instruksi SETB IE0.
1.4.2 Mengaktifkan Interupsi
Semua sumber permintaan interupsi yang di bahas di atas, masing-masing bisa di-aktip-kan atau di-nonaktip-kan secara tersendiri
lewat bit-bit yang ada dalam register IE (Interrupt Enable Register).
Bit EX0 dan EX1 untuk mengatur interupsi eksternal INT0 dan INT1, bit ET0 dan ET1 untuk mengatur interupsi timer 0 dan
timer 1, bit ES untuk mengatur interupsi port seri, seperti yang digambarkan dalam Gambar 2. Di samping itu ada pula bit EA
yang bisa dipakai untuk mengatur semua sumber interupsi sekali gus.
Setelah reset, semua bit dalam register IE bernilai ‘0’, artinya sistem interupsi dalam keadaan non-aktip. Untuk mengaktipkan
salah satu sistem interupsi, bit pengatur interupsi bersangkutan diaktipkan dan juga EA yang mengatur semua sumber interupsi.
Misalnya instruksi yang dipakai untuk mengaktipkan interupsi ekternal INT0 adalah SETB EX0 disusul dengan SETB EA.
MSB LSB
EA X X ES ET1 EX1 ET0 EX0

BIT SYMBOL FUNCTION


Disables all interrupts. If EA=0, no interrupt will be acknowledged. If EA=1, each
IE.7 EA
interrupt source is individually enabled or disabled by setting or clearing its enable bit.
IE.6 - -
IE.5 - -
IE.4 ES Enables or disables the Serial Port interrupt. If ES=0, the Serial Port interrupt is disabled.
Enables or disables the Timer 1 Overflow interrupt. If ET1=0, the Timer 1 interrupt is
IE.3 ET1
disabled.
IE.2 EX1 Enables or disables External Interrupt 1. If EX1=0, External interrupt 1 is disabled.
Enables or disables the Timer 0 Overflow interrupt. If ET0=0, the Timer 0 interrupt is
IE.1 ET0
disabled.
IE.0 EX0 Enables or disables External interrupt 0. If EX0=0, External interrupt 0 is disabled.
1.4.3 Vektor Interupsi
Saat MCS51 menanggapi permintaan interupsi, Program Counter diisi dengan sebuah nilai yang
dinamakan sebagai vektor interupsi, yang merupakan nomor awal dari memori-program yang
menampung ISR untuk melayani permintaan interupsi tersebut. Vektor interupsi itu dipakai untuk
melaksanakan inststuksi LCALL yang diaktipkan secara perangkat keras.
Vektor interupsi untuk interupsi eksternal INT0 adalah $0003, untuk interupsi timer 0 adalah $000B,
untuk interupsi ekternal INT1 adalah $0013, untuk interupsi timer 1 adalah $001B dan untuk interupsi
port seri adalah $0023.
Jarak vektor interupsi satu dengan lainnya sebesar 8, atau hanya tersedia 8 byte untuk setiap ISR. Jika
sebuah ISR memang hanya pendek saja, tidak lebih dari 8 byte, maka ISR tersebut bisa langsung ditulis
pada memori-program yang disediakan untuknya. ISR yang lebih panjang dari 8 byte ditulis ditempat
lain, tapi pada memori-program yang ditunjuk oleh vektor interupsi diisikan instruksi JUMP ke arah ISR
bersangkutan
Source Vector Address
IE0 0003H
TF0 000BH
IE1 0013H
TF1 001BH
RI + TI 0023H
1.4.4 Tingkatan Perioritas
Masing-masing sumber interupsi bisa ditempatkan pada dua tingkatan perioritas yang berbeda. Pengaturan tingkatan perioritas isi
dilakukan dengan bit-bit yang ada dalam register IP (Interrupt Priority).
Bit PX0 dan PX1 untuk mengatur tingkatan perioritas interupsi eksternal INT0 dan INT1, bit PT0 dan PT1 untuk mengatur
interupsi timer 0 dan timer 1, bit PS untuk mengatur interupsi port seri, seperti yang digambarkan dalam Gambar 2.
Setelah reset, semua bit dalam register IP bernilai ‘0’, artinya semua sumber interupsi ditempatkan pada tingkatan tanpa
perioritas. Masing-masing sumber interupsi bisa ditempatkan pada tingkatan perioritas utama dengan cara men-‘satu’-kan bit
pengaturnya. Misalnya interupsi timer 0 bisa ditempatkan pada tingkatan perioritas utama dengan instruksi SETB PT1.
Sebuah ISR untuk interupsi tanpa perioritas bisa diinterupsi oleh sumber interupsi yang berada dalam tingkatan perioritas utama.
Tapi interupsi yang berada pada tingkatan perioritas yang sama, tidak dapat saling meng-interupsi.
Jika 2 permintaan interupsi terjadi pada saat yang bersamaan, sedangkan kedua interupsi tersebut terletak pada tingkatan
perioritas yang berlainan, maka interupsi yang berada pada tingkatan perioritas utama akan dilayani terlebih dulu, setelah itu baru
melayani interupsi pada tingkatan tanpa perioritas.
Jika kedua permintaan tersebut bertempat pada tingkatan perioritas yang sama, perioritas akan ditentukan dengan urutan sebagai
berikut : interupsi eksternal INT0, interupsi timer 0, interupsi ekternal INT1, interupsi timer 1 dan terakhir adalah interupsi port
seri.
Bagan Lengkap Sistem Interupsi MCS51
Meskipun sistem interupsi MCS51 termasuk sederhana dibandingkan dengan sistem interupsi MC68HC11 buatan Motorola, tapi
karena menyangkut 5 sumber interupsi yang masing-masing harus diatur secara tersendiri, tidak mudah untuk mengingat semua
masalah tersebut, terutama pada saat membuat program sering dirasakan sangat merepotkan membolak-balik buku untuk
mengatur masing-masing sumber interupsi tersebut.
Gambar 2 menggambarkan sistem interupsi MCS51 selangkapnya, berikut dengan masing-masing bit dalam register-register SFR
(Special Function Register) yang dipakai untuk mengatur masing-masing sumber interupsi.
Saklar yang digambarkan dalam Gambar 2 mewakili bit dalam register yang harus diatur untuk mengendalikan sumber interupsi,
kotak bergambar bendera kecil merupakan flag (petanda) dalam register yang mencatat adanya permintaan interupsi dari masing-
masing sumber interupsi. Kedudukan saklar dalam gambar tersebut menggambarkan kedudukan awal setelah MCS51 di-reset.
Gambar ini sangat membantu saat penulisan program menyangkut interupsi MCS51.
Interrupt Priority Register ( IP )
MSB LSB
X X X PS PT1 PX1 PT0 PX0

Note:
BIT SYMBOL FUNCTION
IP.7 - -
IP.6 - -
IP.5 - -
Defines the Serial Port interrupt priority level. PS=1 programs it to the higher priority
IP.4 PS
level.
IP.3 PT1 Defines the Timer 1 interrupt priority level. PT1=1 programs it to the higher priority level.
Defines the External Interrupt 1 priority level. PX1=1 programs it to the higher priority
IP.2 PX1
level.
Enables or disables the Timer 0 interrupt priority level. PT0=1 programs it to the higher
IP.1 PT0
priority level.
Defines the External Interrupt 0 priority level. PX0=1 programs it to the higher priority
IP.0 PX0
level.

1.5 Timer Counter

Timer dan Counter merupakan sarana input yang kurang dapat perhatian pemakai mikrokontroler, dengan sarana input ini
mikrokontroler dengan mudah bisa dipakai untuk mengukur lebar pulsa, membangkitkan pulsa dengan lebar yang pasti, dipakai
dalam pengendalian tegangan secara PWM (Pulse Width Modulation) dan sangat diperlukan untuk aplikasi remote control
dengan infra merah.
Pada dasarnya sarana input yang satu ini merupakan seperangkat pencacah biner (binary counter) yang terhubung langsung ke
saluran-data mikrokontroler, sehingga mikrokontroler bisa membaca kedudukan pancacah, bila diperlukan mikrokontroler dapat
pula merubah kedudukan pencacah tersebut.
Seperti layaknya pencacah biner, bilamana sinyal denyut (clock) yang diumpankan sudah melebihi kapasitas pencacah, maka
pada bagian akhir untaian pencacah akan timbul sinyal limpahan, sinyal ini merupakan suatu hal yang penting sekali dalam
pemakaian pencacah. Terjadinya limpahan pencacah ini dicatat dalam sebuah flip-flop tersendiri.
Di samping itu, sinyal denyut yang diumpankan ke pencacah harus pula bisa dikendalikan dengan mudah. Hal-hal yang
dibicarakan di atas diringkas dalam Gambar 1.
MCS-51 mempunyai dua buah register timer/ counter 16 bit, yaitu Timer 0 dan Timer 1. Keduanya dapat dikonfigurasikan untuk
beroperasi sebagai timer atau counter, seperti yang terlihat pada gambar di bawah.
Gambar 1.9. Konsep dasar Timer/Counter sebagai sarana input

Sinyal denyut yang diumpankan ke pencacah bisa dibedakan menjadi 2 macam, yang pertama yalah sinyal denyut dengan
frekuensi tetap yang sudah diketahui besarnya dan yang kedua adalah sinyal denyut dengan frekuensi tidak tetap.
Jika sebuah pencacah bekerja dengan frekuensi tetap yang sudah diketahui besarnya, dikatakan pencacah tersebut bekerja sebagai
timer, karena kedudukan pencacah tersebut setara dengan waktu yang bisa ditentukan dengan pasti.
Jika sebuah pencacah bekerja dengan frekuensi yang tidak tetap, dikatakan pencacah tersebut bekerja sebagai counter, kedudukan
pencacah tersebut hanyalah menyatakan banyaknya pulsa yang sudah diterima pencacah.
Untaian pencacah biner yang dipakai, bisa merupakan pencacah biner menaik (count up binary counter) atau pencacah biner
menurun (count down binary counter).

1.5.1 Fasilitas Timer/Counter


Keluarga mikrokontroler MCS51, misalnya AT89C51 dan AT89Cx051, dilengkapi dengan dua perangkat Timer/Counter,
masing-masing dinamakan sebagai Timer 0 dan Timer 1. Sedangkan untuk jenis yang lebih besar, misalnya AT89C52,
mempunyai tambahan satu perangkat Timer/Counter lagi yang dinamakan sebagai Timer 2.
Perangkat Timer/Counter tersebut merupakan perangkat keras yang menjadi satu dalam chip mikrokontroler MCS51, bagi
pemakai mikrokontroler MCS51 perangkat tersebut dikenal sebagai SFR (Special Function Register) yang berkedudukan sebagai
memori-data internal.
Pencacah biner untuk Timer 0 dibentuk dengan register TL0 (Timer 0 Low Byte, memori-data internal nomor $6A) dan register
TH0 (Timer 0 High Byte, memori-data internal nomor $6C).
Pencacah biner untuk Timer 1 dibentuk dengan register TL1 (Timer 1 Low Byte, memori-data internal nomor $6B) dan register
TH1 (Timer 1 High Byte, memori-data internal nomor $6D).
Pencacah biner pembentuk Timer/Counter MCS51 merupakan pencacah biner menaik (count up binary counter) yang mencacah
dari $0000 sampai $FFFF, saat kedudukan pencacah berubah dari $FFFF kembali ke $0000 akan timbul sinyal limpahan.
Untuk mengatur kerja Timer/Counter dipakai 2 register tambahan yang dipakai bersama oleh Timer 0 dan Timer 1. Register
tambahan tersebut adalah register TCON (Timer Control Register, memori-data internal nomor $88, bisa dialamat secara bit) dan
register TMOD (Timer Mode Register, memori-data internal nomor $89).
Pencacah biner Timer 0 dan 1
TL0, TH0, TL1 dan TH1 merupakan SFR (Special Function Register) yang dipakai untuk membentuk pencacah biner perangkat
Timer 0 dan Timer 1. Kapasitas keempat register tersebut masing-masing 8 bit, bisa disusun menjadi 4 macam Mode pencacah
biner seperti terlihat dalam Gambar 2a sampai Gambar 2d.
Pada Mode 0, Mode 1 dan Mode 2 Timer 0 dan Timer 1 masing-masing bekerja sendiri, artinya bisa dibuat Timer 0 bekerja pada
Mode 1 dan Timer 1 bekerja pada Mode 2, atau kombinasi mode lainnya sesuai dengan keperluan.
Pada Mode 3 TL0, TH0, TL1 dan TH1 dipakai bersama-sama untuk menyusun sistem timer yang tidak bisa di-kombinasi lain.
Susunan TL0, TH0, TL1 dan TH1 pada masing-masing mode adalah sebagai berikut:
Mode 0 – Pencacah Biner 13 bit

Gambar 1.10 Mode 0 - Pencacah Biner 13 Bit


Pencacah biner dibentuk dengan TLx (maksudnya bisa TL0 atau TL1) sebagai pencacah biner 5 bit (meskipun kapasitas
sesungguhnya 8 bit), limpahan dari pencacah biner 5 bit ini dihubungkan ke THx (maksudnya bisa TH0 atau TH1) membentuk
sebuah untaian pencacah biner 13 bit, limpahan dari pencacah 13 bit ini ditampung di flip-flop TFx (maksudnya bisa TF0 atau
TF1) yang berada di dalam register TCON.
Mode ini meneruskan sarana Timer yang ada pada mikrokontroler MCS48 (mikrokontroler pendahulu MCS51), dengan maksud
rancangan alat yang dibuat dengan MCS48 bisa dengan mudah diadaptasikan ke MCS51. Mode ini tidak banyak dipakai lagi.
Mode 1 – Pencacah Biner 16 bit

Gambar 1.11 Mode 1 - Pencacah Biner 16 Bit


Mode ini sama dengan Mode 0, hanya saja register TLx dipakai sepenuhnya sebagai pencacah biner 8 bit, sehingga kapasitas
pencacah biner yang tersbentuk adalah 16 bit. Seiring dengan sinyal denyut, kedudukan pencacah biner 16 bit ini akan bergerak
dari $0000 (biner 0000 0000 0000 0000), $0001, $0002 … sampai $FFFF (biner 1111 1111 1111 1111), kemudian melimpah
kembali menjadi $0000.
Mode 2 – Pencacah Biner 8 bit dengan Isi Ulang

Gambar 1.12 Mode 2 - Pencacah Biner 8 Bit dengan Isi Ulang


TLx dipakai sebagai pencacah biner 8 bit, sedangkan THx dipakai untuk menyimpan nilai yang diisikan ulang ke TLx, setiap kali
kedudukan TLx melimpah (berubah dari $FF menjadi $00). Dengan cara ini bisa didapatkan sinyal limpahan yang frekuensinya
ditentukan oleh nilai yang disimpan dalam TH0.
Mode 3 – Gabungan Pencacah Biner 16 bit dan 8 Bit

Gambar 1.13 Mode 3 – Gabungan Pencacah Biner 16 Bit dan 8 Bit


Pada Mode 3 TL0, TH0, TL1 dan TH1 dipakai untuk membentuk 3 untaian pencacah, yang pertama adalah untaian pencacah
biner 16 bit tanpa fasiltas pemantau sinyal limpahan yang dibentuk dengan TL1 dan TH1. Yang kedua adalah TL0 yang dipakai
sebagai pencacah biner 8 bit dengan TF0 sebagai sarana pemantau limpahan. Pencacah biner ketiga adalah TH0 yang dipakai
sebagai pencacah biner 8 bit dengan TF1 sebagai sarana pemantau limpahan.
Register Pengatur Timer
Register TMOD dan register TCON merupakan register pembantu untuk mengatur kerja Timer 0 dan Timer 1, kedua register ini
dipakai bersama oleh Timer 0 dan Timer 1.

Gambar 1.14 Denah susunan bit dalam register TMOD


Register TMOD dibagi menjadi 2 bagian secara simitris, bit 0 sampai 3 register TMOD (TMOD bit 0 .. TMOD bit 3) dipakai
untuk mengatur Timer 0, bit 4 sampai 7 register TMODE (TMOD bit 4 .. TMOD bit 7) dipakai untuk mengatur Timer 1,
pemakaiannya sebagai berikut :
1. Bit M0/M1 dipakai untuk menentukan Mode Timer seperti yang terlihat dalam Tabel di Gambar 3a.
2. Bit C/T* dipakai untuk mengatur sumber sinyal denyut yang diumpankan ke pencacah biner. Jika C/T*=0 sinyal denyut
diperoleh dari osilator kristal yang frekuensinya sudah dibagi 12, sedangkan jika C/T*=1 maka sinyal denyut diperoleh dari kaki
T0 (untuk Timer 0) atau kaki T1 (untuk Timer 1).
3. Bit GATE merupakan bit pengatur saluran sinyal denyut. Bila bit GATE=0 saluran sinyal denyut hanya diatur oleh bit TRx
(maksudnya adalah TR0 atau TR1 pada register TCON). Bila bit GATE=1 kaki INT0 (untuk Timer 0) atau kaki INT1 (untuk
Timer 1) dipakai juga untuk mengatur saluran sinyal denyut (lihat Gambar 4).
Gambar 1.15 Denah susunan bit dalam register TCON
Register TCON dibagi menjadi 2 bagian, 4 bit pertama (bit 0 .. bit 3, bagian yang diarsir dalam Gambar 3b) dipakai untuk
keperluan mengatur kaki INT0 dan INT1, ke-empat bit ini dibahas dibagian lain.
MSB LSB
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
BIT SYMBOL FUNCTION
Timer 1 overflow flag. Set by hardware on Timer/Counter overflow. Cleared by
TCON.7 TF1
hardware when processor vector to interrupt routine, or clearing the bit in software.
TCON.6 TR1 Timer 1 Run control bit . Set/ cleared by software to turn Timer/ Counter on/off
Timer 0 overflow flag. Set by hardware on Timer/Counter overflow. Cleared by
TCON.5 TF0
hardware when processor vector to interrupt routine, or clearing the bit in software.
TCON.4 TR0 Timer 1 Run control bit . Set/ cleared by software to turn Timer/ Counter on/off
Interrupt 1 Edge flag. Set by hardware when external interrupt edge detected. Cleared
TCON.3 IE1
when interrupt processed.
Interrupt 1 type control bit. Set/ cleared by software to specefy falling edge/ low level
TCON.2 IT1
trigerred external interupts
Interrupt 0 Edge flag. Set by hardware when external interrupt edge detected. Cleared
TCON.1 IE0
when interrupt processed.
Interrupt 0 type control bit. Set/ cleared by software to specefy falling edge/ low level
TCON.0 IT0
trigerred external interupts
Sisa 4 bit dari register TCON (bit 4..bit 7) dibagi menjadi 2 bagian secara simitris yang dipakai untuk mengatur Timer0/Timer 1,
sebagai berikut:
1. Bit TFx (maksudnya adalah TF0 atau TF1) merupakan bit penampung limpahan (lihat Gambar 2), TFx akan menjadi ‘1’ setiap
kali pencacah biner yang terhubung padanya melimpah (kedudukan pencacah berubah dari $FFFF kembali menjadi $0000). Bit
TFx di-nol-kan dengan istruksi CLR TF0 atau CLR TF1. Jika sarana interupsi dari Timer 0/Timer 1 dipakai, TRx di-nol-kan saat
MCS51 menjalankan rutin layanan interupsi (ISR – Interupt Service Routine).
2. Bit TRx (maksudnya adalah TR0 atau TR1) merupakan bit pengatur saluran sinyal denyut, bila bit ini =0 sinyal denyut tidak
disalurkan ke pencacah biner sehingga pencacah berhenti mencacah. Bila bit GATE pada register TMOD =1, maka saluran sinyal
denyut ini diatur bersama oleh TRx dan sinyal pada kaki INT0/INT1 (lihat Gambar 4).

1.5.2 Mengatur Timer

Gambar 4 merupakan bagan susunan rangkaian yang bisa terjadi pada Timer 1 secara lengkap, digambarkan pula hubungan-
hubungan semua register pembentuk dan pengatur Timer 1. Gambar ini berlaku pula untuk Timer 0.
Dalam pemakaian sesungguhnya, rangkaian yang dipakai hanya sebagian dari rangkaian lengkap tersebut, sesuai dengan
keperluan sistem yang dibangun. Rangkaian yang dikehendaki dibentuk dengan mengatur register TMODE, sedangkan kerja dari
Timer dikendalikan lewat register TCON.
Gambar 1.16. Diagram blok timer/ counter

Setelah MCS51 di-reset register TMOD bernilai $00, hal ini berarti :

1. bit C/T* =’0’, menurut Gambar 4 keadaan ini membuat saklar S1 ke posisi atas, sumber sinyal denyut berasal dari osilator
kristal yang frekuensinya sudah dibagi 12, pencacah biner yang dibentuk dengan TL1 dan TH1 berfungsi sebagai timer. Jika
sistem yang dirancang memang menghendaki Timer 1 bekerja sebagai timer maka bit C/T* tidak perlu diatur lagi.
Tapi jika sistem yang dirancang menghendaki agar Timer 1 bekerja sebagai counter untuk menghitung pulsa yang masuk lewat
kakai T1 (P3.5), maka posisi saklar S1 harus dikebawahkan dengan membuat bit C/T* menjadi ‘1’.
2. bit GATE=’0’, hal ini membuat output gerbang OR selalu ‘1’ tidak dipengaruhi keadaan ‘0’ atau ‘1’ pada kaki INT1 (P3.3).
Dalam keadaan semacam ini, saklar S2 hanya dikendalikan lewat bit TR1 dalam register TCON. Jika TR1=’1’ saklar S2 tertutup
sehingga sinyal denyut dari S1 disalurkan ke sistem pencacah biner, aliran sinyal denyut akan dihentikan jika TR=’0’.
Sebaliknya jika bit GATE=’1’, output gerbang OR akan mengikuti keadaan kaki INT1, saat INT1=’0’ apa pun keadaan bit TR1
output gerbang AND selalu =’0’ dan saklar S1 selalu terbuka, agar saklar S1 bisa tertutup kaki INT1 dan bit TR1 harus =’1’
secara [Link] sistem yang dirancang menghendaki kerja dari timer/counter dikendalikan dari sinyal yang berasal dari
luar chip, maka bit GATE harus dibuat menjadi ‘1’
3. bit M1 dan M0=’0’, berarti TL1 dan TH1 disusun menjadi pencacah biner 13 bit (Mode 0), jika dikehendaki Timer 1 bekerja
pada mode 1 seperti terlihat dalam Gambar 4, maka bit M1 harus dibuat menjadi ‘0’ dan bit M0 menjadi ‘1’.
Pengetahuan di atas dipakai sebagai dasar untuk mengatur dan mengendalikan Timer seperti terlihat dalam contoh-contoh berikut
:
Setelah reset TMOD bernilai $00, berarti Timer 1 bekerja sebagai pencacah biner 13 bit, sumber sinyal denyut dari osilator
kristal atau Timer 1 bekerja sebagai ‘timer’, bit GATE =’0’ berarti kaki INT1 tidak berpengaruh pada rangkaian sehingga Timer
1 hanya dikendalikan dari bit TR1.
Dalam pemakaian biasanya dipakai pencacah biner 16 bit, untuk keperluan itu instruksi yang diperlukan untuk mengatur TMOD
adalah :

MOV TMOD,#%00010000

Catatan dalam instruksi di atas tanda ‘#’ menyatakan bagian di belakangnya adalah bilangan konstan yang akan diisikan ke
TMOD, ‘%’ merupakan awalan yang menandakan bahwa bilangan di belakangnya adalah bilangan biner. Penulisan dengan
bilangan biner semacam ini, memudahkan untuk mengenali dengan cepat bit-bit apa saja yang diisikan ke TMOD.
Bilangan biner %00010000 diisikan ke TMOD, berakibat bit 7 TMOD (bit GATE) bernilai ‘0’, bit 6 (bit C/T*) bernilai ‘0’, bit 5
dan 4 (bit M1 dan M0) bernilai ‘01’, ke-empat bit ini dipakai untuk mengatur Timer 1, sehingga Timer 1 bekerja sebagai timer
dengan pencacah biner 16 bit yang dikendalikan hanya dengan TR1.
Jika dikehendaki pencacah biner dipakai sebagai counter untuk mencacah jumlah pulsa yang masuk lewat kaki T1 (P3.5),
instruksinya menjadi :
MOV TMOD,#%01010000

Perbedaannya dengan instruksi di atas adalah dalam instruksi ini bit 6 (bit C/T*) bernilai ‘1’. Selanjutnya jika diinginkan sinyal
dari perangkat keras di luar chip MCS51 bisa ikut mengendalikan Timer 1, instruksi pengatur Timer 1 akan menjadi :

MOV TMOD,#%11010000

Dalam hal ini bit 7 (bit GATE) bernilai ‘1’.


Setelah mengatur konfigurasi Timer 0 seperti di atas, pencacah biner belum mulai mencacah sebelum diperintah dengan
instruksi :
SETB TR1
Perlu diingatkan jika bit GATE = ‘1’, selama kaki INT1 bernilai ‘0’ pencacah biner belum akan mencacah. Untuk menghentikan
proses pencacahan, dipakai instruksi
CLR TR1
Di atas hanya dibahas Timer 1 saja, tata canya untuk Timer 0 persis sama. Yang perlu diperhatikan adalah register TMOD
dipakai untuk mengatur Timer 0 dan juga Timer 1, sedangkan TMOD tidak bisa dialamati secara bit (non bit addressable)
sehingga jika jika kedua Timer dipakai, pengisian bit-bit dalam register TMOD harus dipikirkan sekali gus untuk Timer 0 dan
Timer 1.
Bit TR1 dan TR0 yang dipakai untuk mengendalikan proses pencacahan, terletak di dalam register TCON (memori-data internal
nomor $88) yang bisa dialamati secara bit (bit addressable). Sehingga TR0 dan TR1 bisa diatur secara terpisah (dengan perintah
SETB atau CLR), tidak seperti mengatur TMOD yang harus dilakukan secara bersamaan.
Demikian pula bit penampung limpahan pencacah biner TF0 dan TF1, juga terletak dalam register TCON yang masing-masing
bisa di-monitor sendiri.

Sebagimana ditunjukkan pada gambar 1.11 mikrokontroller dapat beraksi sebagai timer atau counter, sesuai dengan kebutuhan.
Perhatikan pada saklar sebelah kiri dan kanan pada diagram blok tersebut. Mikrokontroller akan berfungsi sebagai timer ketika
saklar diposisikan ke atas dan sebaliknya akan berfungsi sebagai counter bila saklar diposisikan ke bawah, dengan mengontrol bit
C/T pada register TMOD. Posisi saklar sebelah kanan, bergantung pada bit GATE (register TMOD), TR1 ( register TCON0 dan
INT1.

Cara Membaca Barcode

Apabila kita amati barang-barang belanjaan kita dari supermarket/ swalayan, kita akan
menemukan adanya kode-kode tertentu dalam bentuk batangan (bar) atau lebih populernya "barcode" pada setiap item yang kita
ambil di supermarket/ swalayan itu. Barcode ini biasaya diikuti dengan angka-angka tertentu di bawahnya.

Barcode diciptakan untuk mempermudah dan mempercepat pengecekan barang dan melakukan tracking terhadap inventory.

Jenis-jenis barcode yang digunakan sangat banyak dari first generation sampai third generation, dari 1 dimensional matrix sampai
2 dimensional matrix. Bentuknya pun bermacam-macam, ada kotak, dot, hexagon dan bentuk geometris lainnya.

Barcode yang umum digunakan adalah barcode dengan 12 digit seperti pada gambar di atas. Enam digit pertama adalah
identifikasi pabrik (manufacturer identification), sementara 5 digit berikutnya adalah item number dan digit terakhir merupakan
check digit. Check digit ini berfungsi untuk memberitahukan kepada sistem apakah scanner melakukan pengecekan dengan benar
atau tidak.

Check digit dihitung sbb:


Tambahkan digit ganjil dari kode gambar di atas (digits 1, 3, 5, 7, 9 and 11): 0 + 6 + 0 + 2 + 1 + 5 = 14
Kalikan hasil step 1 diatas dengan 3: 14 * 3 = 42
Tambahkan digit genap dari kode gambar di atas (digits 2, 4, 6, 8 and 10): 3 + 0 + 0 + 9 + 4 = 16
Jumlahkan hasil dari step 3 dengan step 2: 42 + 16 = 58
Gunakan hasil dari step 4 untuk menghitung check digit, tentukan angka yang apabila ditambahkan dengan hasil pada step 4 akan
menghasilkan angka kelipatan 10: 58 + 2 = 60
Jadi check digit adalah 2.
Tiap kali scanner memindai barcode maka sistem akan melakukan perhitungan di atas untuk mengecek kebenaran barcode. Jika
hasil perhitungan sistem tidak sama dengan check digit yang terbaca, maka scanner akan mengetahui telah terjadi kesalahan dan
item harus discan ulang.

Cara membaca barcode

Secara umum, yang bertugas membaca barcode ini adalah sistem scanner yang terhubung ke komputer. Namun secara manual
kita bisa membacanya dengan cara sebagai berikut:
Pertama-tama lihatlah konfigurasi dari barcode tersebut. Ini terdiri dari garis batangan hitam dan spasi berwarna putih. Tiap-tiap
garis dan spasi mempunyai ketebalan yang berbeda-beda. Anggaplah satu garis paling tipis warna hitam (seperti garis pertama
pada barcode di atas) adalah garis dengan lebar 1 unit dan spasi paling tipis warna putih (seperti pada spasi pertama setelah garis
pertama pada barcode di atas) adalah spasi dengan lebar 1 unit. Kemudian secara keseluruhan kita dapat menentukan bahwa garis
hitam dan spasi putih tersebut mempunyai ketebalan masing-masing 1, 2, 3 dan 4 unit.

Awal dari setiap barcode biasanya adalah "1-1-1" atau kalau dibaca dari kiri terdiri dari garis hitam 1 unit, diikuti dengan spasi
putih 1 unit, diikuti lagi dengan garis hitam 1 unit.

Kode-kode yang terbaca adalah sbb:


0 = 3-2-1-1
1 = 2-2-2-1
2 = 2-1-2-2
3 = 1-4-1-1
4 = 1-1-3-2
5 = 1-2-3-1
6 = 1-1-1-4
7 = 1-3-1-2
8 = 1-2-1-3
9 = 3-1-1-2
Mari kita coba baca barcode berikut sebagai contoh:

Barcode yang tercetak pada gambar adalah 043000181706:


Dimulai dengan standar awal yaitu 1-1-1 (bar-space-bar).
Angka nol adalah 3-2-1-1 (space-bar-space-bar).
Angka empat adalah 1-1-3-2 (space-bar-space-bar).
Angka tiga adalah 1-4-1-1 (space-bar-space-bar).
Tiga angka nol berikutnya adalah 3-2-1-1 (space-bar-space-bar).
Di tengah biasanya standar 1-1-1-1-1 (space-bar-space-bar-space).
Angka satu adalah 2-2-2-1 (bar-space-bar-space).
Angka delapan adalah 1-2-1-3 (bar-space-bar-space).
Angka satu adalah 2-2-2-1 (bar-space-bar-space).
Angka tujuh adalah 1-3-1-2 (bar-space-bar-space).
Angka nol adalah 3-2-1-1 (bar-space-bar-space).
Angka enam adalah 1-1-1-4 (bar-space-bar-space).
Karakter stop biasanya 1-1-1 (bar-space-bar).
arcode merupakan instrumen yang bekerja berdasarkan asas kerja digital. Pada konsep digital, hanya ada 2 sinyal data yang
dikenal dan bersifat boolean, yaitu 0 atau 1. Ada arus listrik atau tidak ada (dengan besaran tegangan tertentu, misalnya 5 volt
dan 0 volt). Barcode menerapkannya pada batang-batang baris yang terdiri dari warna hitam dan putih. Warna hitam mewakili
bilangan 0 dan warna putih mewakili bilangan 1. Mengapa demikian? Karena warna hitam akan menyerap cahaya yang
dipancarkan oleh alat pembaca barcode, sedangkan warna putih akan memantulkan balik cahaya tersebut.
Selanjtnya, masing-masing batang pada barcode memiliki ketebalan yang berbeda. Ketebalan inilah yang akan diterjemahkan
pada suatu nilai. Demikian, karena ketebalan batang barcode menentukan waktu lintasan bagi titik sinar pembaca yang
dipancarkan oleh alat pembaca.
Dan sebab itu, batang-batang barcode harus dibuat demikian sehingga memiliki kontras yang tinggi terhadap bagian celah
antara (yang menentukan cahaya). Sisi-sisi batang barcode harus tegas dan lurus, serta tidak ada lubang atau noda titik
ditengah permukaannya. Sementara itu, ukuran titik sinar pembaca juga tidak boleh melebihi celah antara batang barcode. Saat
ini, ukuran titik sinar yang umum digunakan adalah 4 kali titik yang dihasilkan printer pada resolusi 300dpi
Saat ini terdapat beberapa jenis instrumen pembaca barcode, yaitu: pena, laser, serta kamera. Pembaca berbentuk pena
memiliki pemancar cahaya dan dioda foto yang diletakkan bersebelahan pada ujung pena. Pena disentuhkan dan digerakkan
melintasi deretan batang barcode. Dioda foto akan menerima intensitas cahaya yang dipantulkan dan mengubahnya menjadi
sinyal listrik, lalu diterjemahkan dengan sistem yang mirip dengan morse.
Pembaca dengan pemancar sinar laser tidak perlu digesekkan pada permukaan barcode, tapi dapat dilakukan dari jarak yang
relatif lebih jauh. Selain itu, pembaca jenis ini memiliki cermin-cermin pemantul sehingga sudut pembacaan lebih fleksible.
Pembaca barcode dengan sistem kamera menggunaka sensor CCD (charge coupled device) untuk merekam foto barcode, baru
kemudian membaca dan menterjemahkannya kedalam sinyal elektronik digital.
Bagaimana koneksi alat pembaca barcode dengan komputer? Ada 2 macam koneksi, yaitu sistem keyboard wedge dan sistem
outpu RS232. Sistem ini menterjemahkan hasil pembacaan barcode sebagai masukan (input) dari keyboard. Biasanya
menggunakan port serial pada komputer. Kita memerlukan software pengantara, umumnya disebut software wedge yang akan
mengalamatkan bacaan dari barcode ke software pengolah data barcode tersebut.

Cara Computer-Scanner Membaca Barcode (Watkins, 1999)


Suatu bilangan barcode tunggal sebenarnya terdiri dari tujuh unit. Satu unit terdiri dari salah satu warna hitam atau putih.
Sebuah unit yang berwarna hitam ditunjukkan dengan sebuah bar, sedangkan yang berwarna putih ditunjukkan dengan sebuah
space (spasi). Cara lain penulisan barcode adalah dengan bilang “1” untuk menyatakan black bar dan bilangan “0” untuk
menyatakan white space. Misalnya, tujuh unit berikut ini adalah 0011001 dapat dinyatakan sebagai berikut space-space-bar-
bar-space-space-bar.
Sebuah barcode UPC bilangan di sisi bagian kiri barcode (kode perusahan/manufaktur) dikodekan berbeda dengan bilangan di
sisi bagian kanan (kode produk). Bilangan yang berada sebelah kiri merupakan kebalikan dari bilangan yang ada di sebelah
kanan, misalkan jika bar disebelah kanan berarti sebuah space di sebelah kiri. Pengkodean di sebelah kanan dinamakan kode
even parity sebab unit black bar-nya berjumlah genap. Sedangkan pengkodean di sebelah kiri dinamakan kode odd parity sebab
unit black bar-nya berjumlah ganjil. Bilangan-bilangan yang dikodekan mempunyai perbedaan untuk tiap-tiap sisi barcode,
sehingga barcode dapat dibaca (scanned) dari sebelah kiri maupun dari sebelah kanan.
Gambar 8 memperlihatkan pengkodean sisi kiri dan sisi kanan yang dipisahkan ke dalam tujuh unit.
Gambar 8. Pengkodean Sisi Kiri dan Kanan (Watkins, 1999)
Penjelasan tabel pengkodean di atas adalah sebagai berikut :
1. Seperti yang sebelumnya disebutkan bahwa bilangan-bilangan sebelah kiri merupakan kebalikan dari bilangan-bilangan
disebelah kanan.
2. Setiap barcode memiliki empat buah “mark” (marka) yang berbeda. Sebuah marka dapat terdiri dari salah satu black (bar)
atau white (space). Marka-marka tersebut lebarnya bermacam-macam, tetapi jumlahnya selalu empat. Contohnya, bilangan
pengkodean yang berada di sebelah kiri pada bagian angka “0” yaitu 0001101 berarti terdiri dari 3 space (marka 1), 2 bar
(marka 2), 1 space (marka 3), dan 1 bar (marka 4).
3. Pengkodean di sisi kiri selalu dimulai dengan sebuah space atau “0” dan berakhir dengan sebuah bar atau “1” sedangkan
untuk sisi sebelah kanan selalu dimulai dengan sebuah bar atau “1” dan berakhir dengan sebuah space atau “0”.
Untuk lebih jelasnya lihat tabel 1.
Tabel 1. Set karakter barcode jenis UPC

Sumber : (Planet Church, tanpa tahun)


Gambar 9. Anatomi Barcode (Planet Church, tanpa tahun)
Keterangan gambar barcode : Komputer tidak membaca bilangan yang berada di bagian bawah barcode, tetapi bilangan
tersebut dicetak agar orang dapat membaca barcode dengan mudah bila diperlukan.
• Number System Character : angka ini merupakan sebuah sistem bilangan barcode UPC yang mengkarakterisasikan jenis-jenis
khusus pada barcode. Di dalam barcode UPC, Number System Character ini biasanya terletak di sebelah kiri barcode.
Kode-kode pada Number System Character adalah sebagai berikut :
• 0 - Standard UPC number.
• 1 - Reserved.
• 2 - Random weight items like fruits, vegetables, and meats, etc.
• 3 – Pharmaceuticals
• 4 - In-store code for retailers.
• 5 - Coupons
• 6 - Standard UPC number.
• 7 - Standard UPC number.
• 8 - Reserved.
• 9 - Reserved.

• 3 Guard Bars : ada tiga guard bars yang ditempatkan di awal, tengah dan akhir pada barcode. Guard bars bagian awal dan
akhir di-encode-kan sebagai “bar-space-bar” atau “101”. Guard bar bagian tengah di-encode-kan sebagai “space-bar-space-bar-
space” atau “01010”.
• Manufacturer Code : kode perusahaan ini ada lima dijit bilangan yang secara khusus menentukan manufaktur suatu produk.
Kode perusahaan/manufaktur ini dilindungi dan ditetapkan oleh Uniform Code Council(UCC).
• Product Code : kode produk ini ada lima dijit bilangan yang ditetapkan oleh perusahaan/manufaktur untuk setiap produk yang
dihasilkannya. Untuk setiap produk yang berbeda dan setiap ukuran yang berbeda, akan memiliki kode produk yang unik.
• Check digit : disebut sebagai dijit “self-check”. Check digit ini terletak di bagian luar sebelah kanan barcode. Check digit ini
merupakan suatu “ old-programmer’s trick” untuk mengvalidasikan dijit-dijit lainnya (number system character, manufacturer
code, product code) yang dibaca secara teliti.
Cara komputer mengkalkulasikan check digit adalah sebagai berikut :
1. Jumlahkan semua dijit-dijit yang ganjil. Dalam "Anatomy of a Barcode" kita akan menjumlahkan 0 (merupakan dijit NSC) + 2 +
4 + 6 + 8 + 0 = 20.
2. Kalikan hasil penjumlahan pada langkah 1 dengan bilangan 3. Pada contoh ini, yaitu, 20 x 3 = 60.
3. Jumlahkan semua bilangan-bilangan genap. Dalam “Anatomy of a Barcode" kita akan menjumlahkan 1 + 3 + 5 + 7 + 9 = 25. Di
sini kita tidak memasukkan bilangan 5 atau check digit sebab bilangan tersebut yang akan kita kalkulasikan.
4. Sekarang jumlahkan hasil dari langkah 2 dan langkah 3, yaitu, 60 + 25 = 85.
5. Check digit tersebut adalah bilangan yang perlu dijumlahkan dengan bilangan pada langkah 4. Hasilnya pada langkah 4
tersebut sama dengan mengalikan dengan bilangan 10. Pada contoh ini, check digit nya adalah 5 sehingga 85 + 5 = 90. Cara lain
untuk mengkalkulasikan check digit yang lebih simpel adalah membagi bilangan dari langkah 4 dengan 10. Contohnya 85/10 =
8,5 sehingga sisa nya dari hasil pembagian tersebut adalah 5. Bilangan 5 tersebut adalah check digit.
Gambar 10 dan 11 menunjukkan bahwa Barcode Master Data dapat disimpan pada media diskette dan dapat digunakan untuk
ISDN. Integrated Services Digital Network (ISDN) adalah sebuah jaringan yang pada umumnya perkembangan dari telephony
Integrated Digital Network (IDN), yang menyediakan jaringan penghubung digital end to end, yang terdiri dari layanan suara
dan non-suara.
Gambar 10. Barcode yang disimpan pada media disket (Applied Barcode, 2000)

Gambar 11. Barcode pada ISDN (Applied Barcode, 2000)


Jenis-jenis Pembaca Barcode
Ada 4 jenis pembaca barcode yang ditunjukkan pada tabel berikut ini. Tiap-tiap pembaca barcode mempunyai harga khusus dan
karakteristik pengoperasian.
Tabel 2. Jenis-jenis Pembaca Barcode
Jenis Deskripsi Harga Unit
LED Red light emitting diode Paling rendah
IR Infrared Sedang
Narrow Band Laser Paling tinggi
Fiberoptic Environment Tinggi

Gambar 12 memperlihatkan alat-alat pendukung barcode, yang terdiri dari barcode printers yang berfungsi untuk mencetak
label barcode, barcode scanners yang berfungsi untuk membaca label barcode, dan barcode verifiers berfungsi untuk
memeriksa simbol-simbol dengan kecepatan baca yang tinggi.
Gambar 12. Alat-alat Pendukung Barcode (Applied Barcode, 2000)
KONSEP SISTEM PENGGUNAAN BARCODE UNTUK PENDETEKSIAN UANG
Untuk mempercepat proses pendeteksian dan pencatatan uang, maka dibuatlah suatu kode pada setiap uang kertas dalam
bentuk barcode (kode baris). Nomor kode pada setiap uang kertas tersebut berbeda dengan nomor seri pada setiap uang
kertas, untuk nomor kode pada setiap uang kertas disusun dengan metoda penyandian tertentu. Barcode tersebut mencakup
nilai nominal uang, nomor seri, Bank Indonesia, dan untuk menjamin keaslian dan keabsahan uang kertas, digunakan suatu
metoda water marking, hal ini dapat menghindari adanya uang palsu.
BANK INDONESIA
ABC12345
50000

LIMA PULUH RIBU RUPIAH

ABC12345

Gambar 13. uang kertas yang diberi barcode


Perangkat Pendeteksi Uang
Tulisan ini menginstruksikan penggunaan teknik komputer pada uang-uang kertas untuk memudahkan interaksi antara manusia
dengan mesin. Di bawah ini terdapat blok diagram pendeteksian uang kertas yang sudah dilengkapi dengan nomor kode dalam
bentuk barcode dan water marking yang akan digunakan untuk mesin ATM :

Gambar 14. Blok Diagram Pendeteksi Uang Kertas


• Input yang berupa sejumlah uang kertas akan diproses oleh mesin pembaca barcode Mesin pembaca barcode ini berfungsi
untuk mendeteksi uang kertas apakah uang tersebut asli atau palsu yang dibantu oleh komputer. Setiap uang kertas yang
dilengkapi dengan nomor seri dan nomor kode sudah disimpan datanya di dalam komputer, sehingga memerlukan database
untuk uang kertas tersebut.
• Komputer akan mendeteksi atau mengecek uang kertas, bila nomor seri dan nomor kode tersebut datanya terdapat dalam
database komputer berarti uang tersebut asli. Tetapi bila data uang kertas tersebut tidak terdapat pada database komputer
berarti uang tersebut palsu.
• Komputer sebaiknya menggunakan fasilitas internet yang Onnbghg ;
• ]’Qsd
• ‘]Sad
•S
• ‘Zx
• ]zx
• ]SX
• ]S
• ]fvlgtfl;fl;yuliuiuhuu Line ke bank pusat. Bank tersebut yang akan menginputkan setiap uang yang baru dibuat atau dicetak ke
dalam database komputer dan komputer yang akan mengolah data tersebut.
• Alat pendeteksi uang tersebut dapat diletakkan pada mesin ATM yang berfungsi sebagai penarikan uang dan penyetoran uang
secara otomatis serta fasilitas lainnya yang terdapat pada mesin ATM.
KONSEP SISTEM PENGGUNAAN BARCODE UNTUK KEAMANAN UANG
Barcode adalah sebuah array bar dan spasi dalam bentuk persegi panjang yang disusun parallel yang menunjukkan elemen-
elemen data atau karakter dalam sebuah particular symbology.
Barcode yang digunakan pada uang kertas adalah barcode dengan jenis Universal Product Code (UPC). Set karakter barcode
UPC terdiri dari numerik dan tiga karakter khusus yaitu, start, stop, dan center. Ada dua format data string dasar yang
ditunjukkan dalam gambar 15. Set karakter UPC ditunjukkan dalam tabel 1. Contoh data string untuk karakter 5 menggunakan
jenis 2 format dan kode regular UPC dari tabel 1 ditunjukkan dalam gambar 16.

Gambar 15. Format data string Universal Product Code (UPC)

Start--------NSC-----/---Left---/-----Center-----/---Right---/----Check---------Stop
101 0 5 01010 5 Check 101
= 0110001 = 1001110
dari tabel 1 dari tabel 1
(a)
(b)
Gambar 16. Layout data string barcode UPC (a), left and right field data character (b)
Barcode yang akan digunakan pada uang harus menjamin keamanan dan keaslian pada uang. Oleh karena itu, barcode yang
digunakan pada uang kertas merupakan barcode yang telah diacak (enkripsi), sehingga harus dibuat sebuah tabel sebagai key
code. Tabel key code tersebut khusus dimiliki oleh Bank Indonesia sebagai otoritas moneter. Salah satu contoh pada konsep
sistem penggunaan barcode ini adalah dengan mengacak karakter pada barcode, yaitu dengan menggeser karakter sebanyak
tiga langkah. Misalkan, pada gambar kedua barcode di bawah ini, menunjukkan barcode asli (plain) dan barcode yang telah
diacak (chiper) dan lihatlah tabel 3 set karakter barcode UPC yang telah diacak dengan cara menggeser karakter sebanyak tiga
langkah.
Tabel 3. set karakter UPC yang telah diacak, karakter digeser 3 langkah
Cara menghitung check digit pada barcode yang telah diacak adalah sebagai berikut :
1. Jumlahkan semua dijit-dijit yang ganjil. Dalam "Anatomy of a Barcode" kita akan menjumlahkan 0 (merupakan dijit NSC) + 5 +
7 + 9+ 1+ 3 = 25.
2. Kalikan hasil penjumlahan pada langkah 1 dengan bilangan 3. Pada contoh ini, yaitu, 25 x 3 = 75.
3. Jumlahkan semua bilangan-bilangan genap. Dalam “Anatomy of a Barcode" kita akan menjumlahkan 4 + 6 + 8 + 0 + 2 = 20. Di
sini kita tidak memasukkan bilangan 5 atau check digit sebab bilangan tersebut yang akan kita kalkulasikan.
4. Sekarang jumlahkan hasil dari langkah 2 dan langkah 3, yaitu, 75 + 20 = 95.
5. Untuk mengkalkulasikan check digit yang lebih simpel adalah membagi bilangan dari langkah 4 dengan 10. Contohnya 95/10
= 9,5 sehingga sisa nya dari hasil pembagian tersebut adalah 5. Bilangan 5 tersebut adalah check digit.
Jadi, barcode yang akan ditunjukkan pada uang adalah barcode yang telah diacak (enkripsi), sehingga pada alat pembaca
barcode harus dilengkapi dengan pengubah kode (dekripsi). Sebagai catatan, untuk jumlah karakter pada barcode dapat
menggunakan lebih dari 10 karakter. Hal ini dibuat agar lebih terjamin keamanannya, karena uang yang dicetak dan diedarkan
berjumlah sangat besar.

KESIMPULAN DAN SARAN


Kesimpulan
• Penggunaan barcode pada uang dan penggunaan alat pendeteksi uang yang dilengkapi dengan pembacaan barcode memiliki
kelebihan dan kekurangan. Kelebihannya adalah lebih sederhana karena yang dideteksi hanya barcode; proses pendeteksian
uang yang dilengkapi barcode akan lebih cepat dibandingkan pendeteksian secara manual dengan menggunakan alat sinar ultra
violet; dengan penggunaan metoda barcode dan water marking maka, akan terjamin keaslian dan keabsahan uang. Kerugiannya
adalah uang kertas yang menggunakan barcode belum populer pada saat ini dan perlu dirancang dari awal.

Manfaat Barcode pada alat pendeteksi uang :


• Mempermudah pendeteksian uang secara elektronis (nilai nominal, keaslian, nomor seri, dan lain-lain), membantu test phisik
uang.
• Menambah keamanan uang dari pencurian, perampokan, dan lain-lain.
• Mempermudah dan mempercepat pencatatan uang (terutama dengan komputer).
• Meningkatkan cara-cara menjaga keaslian uang dengan menambah tanda-tanda tertentu yang unik sesuai kode pada barcode
untuk mempersulit pemalsuan.
• Mempermudah proses penerimaan uang melalui ATM otomatis.
• Mempermudah dan lebih mengamankan proses transaksi.

Saran
• Konsep sistem penggunaan barcode untuk pengamanan dan pendeteksian uang memerlukan penelitian lebih lanjut, misalkan
pada pembuatan barcode, jumlah digit pada barcode, penempatan barcode pada uang kertas, dan kecepatan mesin pembaca
barcode.
• Penggunaan barcode pada uang dan mesin pendeteksi yang dilengkapi mesin pembacaan barcode memerlukan pengamanan
lebih lanjut sehingga perlu adanya enkripsi. Salah satu hal yang penting dalam komunikasi menggunakan computer untuk
menjamin kerahasian data adalah enkripsi. Enkripsi adalah sebuah proses yang melakukan perubahan sebuah kode dari yang
bisa dimengerti menjadi sebuah kode yang tidak bisa dimengerti.
• Uang yang menggunakan barcode harus memiliki kualitas yang tinggi, meliputi bahan kertasnya, tinta, dan cetakan uang
tersebut, agar uang tidak mudah rusak.

Ultrasonic

Sensor ultrasonik menggunakan prinsip-prinsip ultrasonografi medis dalam rangka untuk membuat gambar visual dari sidik jari.
Tidak seperti pencitraan optik, sensor ultrasonik menggunakan gelombang suara frekuensi sangat tinggi untuk menembus lapisan
epidermis kulit. Gelombang suara yang dihasilkan dengan menggunakan transduser piezoelektrik dan energi tercermin juga
diukur dengan menggunakan bahan piezoelektrik. Karena lapisan kulit dermal pameran karakteristik pola sidik jari yang sama,
pengukuran gelombang yang dipantulkan dapat digunakan untuk membentuk gambar sidik jari. Hal ini menghilangkan
kebutuhan untuk bersih, kulit epidermis rusak dan permukaan penginderaan bersih.

Absensi Sidik Jari akan menidentifikasi biometric dengan metoda diantaranya dengan Pengenalan Sidik Jari, Retina, Iris,
Wajah, maupun Suara.

Setiap metoda memiliki kelebihan dan kekurangan. Pengenalan Sidik Jari digunakan secara luas saat ini dikarenakan sistem ini
cukup akurat mengidentifikasi seseorang, proses cepat dan sederhana, serta dapat diproduksi dengan harga relatif murah
dibandingkan dengan metoda lainnya. Sistem identifikasi sidik jari yang baik umumnya dapat mengidentifikasi hingga 98% sidik
jari manusia.

Dalam memilih sistem identifikasi sidik jari , salah satu komponen terpenting yang harus diperhatikan adalah Scanning Sensor
yang digunakan untuk membaca profil sidik jari. Terdapat 2 jenis sensor yaitu Optical Sensor dan Silicon Sensor. Optical sensor
secara umum memiliki kemampuan identifikasi lebih baik dan lebih tahan lama dibandingkan dengan silicon sensor. Akan tetapi
Optical Sensor akan memiliki ukuran relatif lebih besar dibandingkan dengan Silicon Sensor

Disamping sensor, terdapat beberapa fitur yang perlu diperhatikan dalam memilih Mesin Absensi Sidik Jari seperti Capacity,
Performance, Supported Protocol, Integration, Reporting Software dan Database System. Yang masing – masing akan dijelaskan
berikut ini.
1. Hardware Capacity (Kapasitas) meliputi jumlah maximum user, jumlah maximum fingerprint template dan jumlah log
buffer yang dapat disimpan. Maximum user adalah jumlah maksimum pengguna sistem ini, setiap user dapat
mendaftarkan satu atau lebih sidik jarinya. Jumlah maximum sidik jari yang dapat disimpan ditentukan oleh maximum
fingerprint template. Sedangkan jumlah log buffer akan menentukan jumlah maksimum transaksi yang dapat disimpan
dalam mesin ini sebelum di-download ke dalam database.
2. Hardware Performance meliputi response time dalam melakukan identifikasi. Fingerprint Sistem yang baik dapat
melakukan identifikasi kurang dari 1 detik.
3. Supported Protocol untuk mesin finger print akan menentukan kemampuan pengiriman data dari dan ke mesin. Pada
umumnya mesin absensi sidik jari men-support satu atau lebih protocol berikut: RS232, RS485, TCP/IP, Wiegand.
4. Integration adalah kemampuan mesin absensi sidik jari untuk dapat diintegrasikan dengan sistem lain seperti dengan
access control system. Secara umum terdapat 2 jenis mesin absensi sidik jari berdasarkan kemampuan integrasinya:
o Mesin absensi Sidik Jari Stand Alone yang fungsinya hanya untuk absensi (time attendance recording) saja.
o Mesin Absensi Sidik Jari + Access Control System yang memiliki fungsi absensi dan juga fungsi kontrol ke
ruang / area tertentu.
5. Reporting Software juga merupakan unsur yang sangat penting untuk diperhatikan. Beberapa Mesin Fingerprint telah
dilengkapi dengan software reporting yang cukup lengkap seperti laporan rekap harian dan bulanan. Software reporting
ini dapat berupa aplikasi desktop yang dapat dijalankan pada local computer. Beberapa Mesin Absensi Sidik Jari ada
pula yang dilengkapi Aplikasi Reporting Berbasis Web yang memungkinkan pengguna mengakses software lewat
network local maupun internet.
6. Database System adalah backend system yang menyimpan seluruh data pengguna dan juga log transaksi. Database
system yang baik dapat memberikan performa yang prima seiring dengan bertambahnya data pengguna. Mesin
Absensi Sidik Jari yang ada di pasaran umumnya menggunakan database: MS Access atau MS SQL Server.

Scanning sidik jari dilakukan dengan alat elektronik (dalam hal ini mesin absensi sidik jari ). Hasil scanning lalu disimpan dalam
format digital pada saat registrasi atau enrollment atau pendaftaran sidik jari . Setelah itu, rekaman sidik jari tersebut diproses
dan dibuatkan daftar pola fitur sidik jari yang unik. Pola fitur sidik jari yang unik tersebut kemudian disimpan dalam memory
atau database. Pola sidik jari yang unik ini disebut dengan istilah minutiae. Pada saat identifikasi, pola minutiae tersebut
kemudian dicocokkan dengan hasil scan sidik jari .

Alat absensi sidik jari maupun sensor sidik jari yang digunakan untuk keperluan lain seperti akses kontrol mempunyai beberapa
tehnik pembacaan sidik jari . Tehnik pembacaan sidik jari oleh mesin absensi sidik jari tersebut antara lain :

1. Optis.

Dengan tehnik ini, pola sidik jari direkam atau discan dengan menggunakan cahaya. Alat perekam (fingerprint scanner ) yang
digunakan adalah berupa kamera digital. Tempat untuk meletakkan ujung jari disebut permukaan sentuh (scan area ). Di bawah
scan area, terdapat lampu atau pemancar cahaya yang menerangi permukaan ujung jari. Hasil pantulan cahaya dari ujung jari
ditangkap oleh alat penerima yang selanjutnya menyimpan gambar sidik jari tersebut ke dalam memori.
Kelemahan metode ini adalah hasil scanning sangat tergantung dari kualitas sidik jari. Jika kualitas sidik jari miskin (poor) atau
luka, maka kualitas hasil pembacaan akan tidak bagus. Kelemahan lain adalah tehnik ini bisa diakali dengan jari palsu. Tapi
tehnik ini mempunyai keuntungan mudah dilakukan dan tidak membutuhkan biaya yang mahal.

2. Ultrasonik

Tehnik ini hamper sama dengan tehnik yang digunakan dalam dunia kedokteran. Dalam tehnik ini, digunakan suara berfrekuensi
sangat tinggi untuk menembus lapisan epidermal kulit. Suara frekuensi tinggi tersebut dibuat dengan menggunakan transducer
piezoelectric. Setelah itu, pantulan energi tersebut ditangkap menggunakan alat yang sejenis. Pola pantulan ini dipergunakan
untuk menyusun citra sidik jari yang dibaca. Dengan cara ini, tangan yang kotor tidak menjadi masalah. Demikian juga dengan
permukaan scanner yang kotor tidak akan menghambat proses pembacaan .

3. Kapasitans

Tehnik ini menggunakan cara pengukuran kapasitant untuk membentuk citra sidik jari. Scan area berfungsi sebagai lempeng
kapasitor, dan kulit ujung jari berfungsi sebagai lempeng kapasitor lainnya. Karena adanya ridge (gundukan) dan valley (lembah)
pada sidik jari, maka kapasitas dari kapasitor masing-masing orang akan berbeda. Kelemahan ini adalah adanya listrik statis pada
tangan. Untuk menghilangkan listrik statis ini, tangan harus digrounding.

4. Thermal

Tehnik ini menggunakan perbedaan suhu antara ridge (gundukan) dengan valley (lembah) sidik jari untuk mengetahui pola sidik
jari . Cara yang dilakukan adalah dengan menggosokkan ujung jari (swap) ke scan area. Bila ujung jari hanya diletakkan saja,
dalam waktu singkat, suhunya akan sama karena adanya proses keseimbangan.

Sebuah sidik jari sensor adalah sebuah perangkat elektronik yang digunakan untuk menangkap gambar digital dari pola sidik jari.
Gambar tersebut disebut scan hidup. Ini scan hidup adalah digital diproses untuk membuat sebuah template biometrik (koleksi
fitur diekstrak ) yang disimpan dan digunakan untuk pencocokan. Ini merupakan ikhtisar dari beberapa sidik jari lebih umum
digunakan sensor teknologi .

[ sunting ] Optik

Pencitraan sidik jari optik melibatkan menangkap gambar digital dari cetak menggunakan cahaya tampak . Jenis sensor, pada
dasarnya, khusus kamera digital . Lapisan atas sensor, di mana jari ditempatkan, dikenal sebagai permukaan sentuh. Di bawah
lapisan ini adalah lapisan pemancar cahaya fosfor yang menerangi permukaan jari. Cahaya yang dipantulkan dari jari melewati
lapisan fosfor untuk array solid state pixel (sebuah perangkat charge-coupled ) yang menangkap gambar visual dari sidik jari.
Sebuah permukaan sentuhan tergores atau kotor dapat menyebabkan citra buruk sidik jari. Kelemahan dari jenis sensor adalah
kenyataan bahwa kemampuan pencitraan dipengaruhi oleh kualitas kulit di jari. Misalnya, jari kotor atau ditandai sulit untuk
gambar dengan benar. Juga, adalah mungkin bagi seorang individu untuk mengikis lapisan luar kulit pada ujung jari ke titik di
mana sidik jari tidak lagi terlihat. Hal ini juga dapat dengan mudah tertipu oleh gambar sidik jari jika tidak digabungkan dengan
detektor "hidup jari". Namun, tidak seperti sensor kapasitif, ini teknologi sensor tidak rentan terhadap kerusakan discharge
elektrostatik. [4]

[ sunting ] Ultrasonic

Sensor ultrasonik menggunakan prinsip-prinsip ultrasonografi medis dalam rangka untuk membuat gambar visual dari sidik jari.
Tidak seperti pencitraan optik, sensor ultrasonik menggunakan gelombang suara frekuensi sangat tinggi untuk menembus lapisan
epidermis kulit. Gelombang suara yang dihasilkan dengan menggunakan transduser piezoelektrik dan energi tercermin juga
diukur dengan menggunakan bahan piezoelektrik. Karena lapisan kulit dermal pameran karakteristik pola sidik jari yang sama,
pengukuran gelombang yang dipantulkan dapat digunakan untuk membentuk gambar sidik jari. Hal ini menghilangkan
kebutuhan untuk bersih, kulit epidermis rusak dan permukaan penginderaan bersih. [5]

[ sunting ] Kapasitansi
Kapasitansi sensor menggunakan prinsip-prinsip yang terkait dengan kapasitansi dalam rangka untuk membentuk gambar sidik
jari. Dalam metode ini pencitraan, pixel array sensor setiap tindakan sebagai salah satu piring dari pelat sejajar kapasitor , lapisan
dermal (yang elektrik konduktif ) bertindak sebagai pelat lainnya, dan non-konduktif lapisan epidermis bertindak sebagai
dielektrik .

[ sunting ] kapasitansi Pasif

Sebuah sensor kapasitansi pasif menggunakan prinsip yang digariskan di atas untuk membentuk sebuah gambar dari pola sidik
jari pada lapisan dermal kulit. Setiap pixel sensor digunakan untuk mengukur kapasitansi pada titik dari array. Kapasitansi
bervariasi antara pegunungan dan lembah sidik jari karena fakta bahwa volume antara lapisan dermal dan elemen penginderaan di
lembah berisi celah udara. Konstanta dielektrik epidermis dan daerah dari elemen penginderaan diketahui nilai-nilai. Nilai
kapasitansi diukur kemudian digunakan untuk membedakan antara pegunungan sidik jari dan lembah. [6]

[ sunting ] kapasitansi Aktif

Kapasitansi sensor aktif menggunakan siklus pengisian untuk menerapkan tegangan ke kulit sebelum pengukuran berlangsung.
Penerapan tegangan kapasitor biaya efektif. Medan listrik antara jari dan sensor mengikuti pola dari pegunungan di lapisan kulit
dermis. Pada siklus debit, tegangan lapisan dermal dan elemen penginderaan dibandingkan terhadap tegangan referensi untuk
menghitung kapasitansi. Nilai jaraknya kemudian dihitung matematis, dan digunakan untuk membentuk sebuah gambar sidik jari.
[7]
sensor kapasitansi Aktif mengukur pola punggungan dari lapisan dermal seperti metode ultrasonik. Sekali lagi, ini
menghilangkan kebutuhan untuk bersih, kulit epidermis rusak dan permukaan penginderaan bersih.

Anda mungkin juga menyukai