BAB II LANDASAN TEORI 2.1 Sensor Ultra Sonik Sensor ultrasonik adalah gelombang ultrasonik dengan besar frekuensi diatas frekuensi gelombang suara yaitu lebih dari 20 KHz. Seperti telah disebutkan bahwa sensor ultrasonik terdiri dari rangkaian pemancar ultrasonik yang disebut transmitter dan rangkaian penerima ultrasonik yang disebut receiver. Sinyal ultrasonik yang dibangkitkan akan dipancarkan dari transmitter ultrasonik. Ketika sinyal mengenai benda penghalang, maka sinyal ini dipantulkan, dan diterima oleh receiver ultrasonik.Sinyal yang diterima oleh rangkaian receiver dikirimkan ke rangkaian mikrokontroler untuk selanjutnya diolah untuk menghitung jarak terhadap benda di depannya (bidang pantul). Prinsip kerja dari sensor ultrasonik adalah sebagai berikut :
1. Sinyal dipancarkan oleh pemancar ultrasonik. Sinyal tersebut berfrekuensi diatas 20kHz, biasanya yang digunakan untuk mengukur jarak benda adalah 40kHz. Sinyal tersebut di bangkitkan oleh rangkaian pemancar ultrasonik. 2. Sinyal yang dipancarkan tersebut kemudian akan merambat sebagai sinyal / gelombang bunyi dengan kecepatan bunyi yang berkisar 340 m/s. Sinyal tersebut kemudian akan dipantulkan dan akan diterima kembali oleh bagian penerima Ultrasonik. 3. Setelah sinyal tersebut sampai di penerima ultrasonik, kemudian sinyal tersebut akan diproses untuk menghitung jaraknya. Dengan kata lain kecepatan adalah perpindahan selama selang waktu tertentu. Apabila
6
kecepatan, kelajuan dinyatakan dengan v, perpindahan, jarak dinyatakan s dan waktu tempuh t secara matematis dirumuskan : π π
v = β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦(2.1) π‘π‘
dengan : v = kelajuan (m/s) s = jarak (m) t = waktu tempuh (s) Kecepatan dan kelajuan hanya dibedakan oleh arahnya saja, sehingga keduanya mempunyai satuan yang sama yaitu m/s. Kecepatan rata-rata adalah hasil bagi perpindahan dan selang waktu.
Gambar 2.1Kedudukan awal benda A berpindah ke B Misal dari gambar di atas perpindahaan Ξx (delta x) ditempuh dalam selang waktu Ξt (delta t), maka kecepatan rata-rata v dirumuskan : Ξπ₯π₯
v = Ξπ‘π‘ β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦β¦.(2.2) dengan : v = Kecepatan rata-rata (m/s) Ξx= jarak (m) Ξx = x2 β x1 Ξt = Selisih waktu tempuh (s) 7
Ξt = t2 β t1 Ξ = delta 2.1.1 Pemancar Ultrasonik (Transmitter) Pemancar Ultrasonik ini berupa rangkaian yang memancarkan sinyal sinusoidal berfrekuensi diatas 20 KHz menggunakan sebuah transducer transmitter ultrasonik Prinsip kerja dari rangkaian pemancar gelombang ultrasonik tersebut adlah sebagai berikut :
1. Sinyal 40 kHz dibangkitkan melalui mikrokontroler. 2. Sinyal tersebut dilewatkan pada sebuah resistor sebesar 3kOhm untuk pengaman ketika sinyal tersebut membias maju rangkaian dioda dan transistor. 3. Kemudian sinyal tersebut dimasukkan ke rangkaian penguat arus yang merupakan kombinasi dari 2 buah dioda dan 2 buah transistor. 4. Ketika sinyal dari masukan berlogika tinggi (+5V) maka arus akan melewati dioda D1 (D1 on), kemudian arus tersebut akan membias transistor T1, sehingga arus yang akan mengalir pada kolektotr T1 akan besar sesuai dari penguatan dari transistor. 5. Ketika sinyal dari masukan berlogika tinggi (0V) maka arus akan melewati dioda D2 (D2 on), kemudian arus tersebut akan membias transistor T2, sehingga arus yang akan mengalir pada kolektotr T2 akan besar sesuai dari penguatan dari transistor. 6. Resistor R4 dan R6 berfungsi untuk membagi tengangan menjadi 2,5 V. Sehingga pemancar ultrasonik akan menerima tegangan bolak β balik dengan Vpeak-peak adalah 5V (+2,5 V s.d -2,5 V)
8
2.1.2 Penerima Ultrasonik (Receiver) Penerima Ultrasonik ini akan menerima sinyal ultrasonik
yang
dipancarkan oleh pemancar ultrasonik dengan karakteristik frekuensi yang sesuai. Sinyal yang diterima tersebut akan melalui proses filterisasi frekuensi dengan menggunakan rangkaian band pass filter (penyaring pelewat pita), dengan nilai frekuensi yang dilewatkan telah ditentukan. Kemudian sinyal keluarannya akan dikuatkan dan dilewatkan ke rangkaian komparator (pembanding) dengan tegangan referensi ditentukan berdasarkan tegangan keluaran penguat pada saat jarak antara sensor kendaraan mini dengan sekat/dinding pembatas mencapai jarak minimum untuk berbelok arah. Dapat dianggap keluaran komparator pada kondisi ini adalah high (logika β1β) sedangkan jarak yang lebih jauh adalah low (logikaβ0β).Logika-logika biner ini kemudian diteruskan ke rangkaian pengendali (mikrokontroler). 2.2. Menggunakan Ultrasonic Range Sensor HC-SR04 dan SDM-IO .
Ultrasonik modul umunya berbentuk papan elektronik ukuran kecil dengan
beberapa rangkaian elektronik dan 2 buah transducer.Dari 2 buah transducer ini, salah satu berfungsi sebagai transmitter dan satu lagi sebagai receiver.Ada juga modul yang hanya mempunyai 1 buah transducer, berfungsi sebagai transmitter dan receiver sekaligus. Tersedia pin VCC, TRIG, ECHO dan GND. Ada juga modul yang pin TRIG dan ECHO-nya digabung menjadi satu dan pemakaiannya berganti-ganti. Ultrasonik modul ini bekerja dengan cara menghasilkan gelombang suara pada frekuensi tinggi, yang kemudian dipancarkan oleh bagian transmitter. Pantulan gelombang suara yang mengenai benda di depannya akan ditangkap oleh bagian receiver. Dengan mengetahui lamanya waktu antara
9
dipancarkannya gelombang suara sampai ditangkap kembali, kita dapat menghitung jarak benda yang ada di depan modul tersebut. Kita mengetahui kecepatan suara adalah 340m/detik. Lamanya waktu tempuh gelombang suara dikalikan kecepatan suara, kemudian dibagi 2 akan menghasilkan jarak antara ultrasonic modul dengan benda didepannya.
Gambar 2.2 HC-SR04 dan SDM-IO siap digunakan 2.2.1. HC-SR04 HC-SR04 termasuk modul ultrasonic yang mudah digunakan.Sudah tersedia
Arduino
library
sehingga
anda
sudah
bisa
langsung
menggunakannya.Arduino library dan contoh program untuk HC-SR04 dapat didownload dari link ini.library ini pada folder libraries yang ada pada software Arduino di computer. HC-SR04 memiliki 4 pin, VCC, TRIG, ECHO dan GND. VCC dihubungkan dengan 5V dari Arduino dan GND dengan GND pada Arduino. TRIG terhubung pada pin digital 12 dan ECHO dihubungkan dengan pin digital 13. Untuk lebih jelasnya dapat dilihat pada gambar berikut ini.
Gambar 2.3 HC-SR04 terhubung dengan Arduino
10
HC-SR04 dan Arduino Uno Hubungkan board Arduino anda dengan komputer menggunakan kabel USB dan upload program di bawah ini. Kalau tidak ada pesan error maka modul ultrasonic akan langsung bekerja mengukur jarak benda di depannya. Gunakan Serial Monitor (Ctrl+Shift+M) pada software Arduino untuk melihat hasil pengukuran. 2.2.2. SDM-IO SDM-IO adalah modul ultrasonic yang sama seperti HC-SR04. Berbeda di jarak jangkauan pengukuran jarak, di mana SDM-IO memiliki jarak jangkauan yang lebih pendek. Cara pemakaiannya kurang lebih sama dengan HC-SR04, tapi dengan level sinyal yang terbalik. Kalau HC-SR04 menggunakan sinyal HIGH dengan durasi 10 microseconds, maka SDM-IO menggunakan sinyal LOW dengan durasi 10 micrseconds. SDM-IO memiliki 4 pin, sama seperi HC-SR04, VCC, TRIG, ECHO dan GND. Hubungkan pin-pin ini sama seperti pada HCSR04. VCC dihubungkan dengan 5V dari Arduino dan GND dengan GND pada Arduino. TRIG terhubung pada pin digital 12 dan ECHO dihubungkan dengan pin digital 13.
Gambar 2.4 SDM-IO dan Arduino Uno SDM-IO dan Arduino Uno Hubungkan kembali board Arduino anda dengankomputer menggunakan kabel USB dan upload program di bawah ini.Sama halnya pada penggunaan HC-SR04, kalau tidak ada pesan error maka modul ultrasonic akan langsung bekerja mengukur jarak benda di depannya.
11
Gunakan Serial Monitor (Ctrl+Shift+M) pada software Arduino untuk melihat hasil pengukuran. 2.3 Mikrokontroler ATMega8535 Mikrokontroler dapat dianalogikan sebagai sebuah sistem komputer yang dikemas dalam sebuah chip, artinya di dalam sebuah IC mikrokontroler sebetulnya sudah terdapat kebutuhan minimal agar mikroprosesor dapat bekerja, yaitu meliputi mikroprosesor, ROM, RAM, I/O dan clock seperti halnya yang dimiliki oleh sebuah PC. Mengingat kemasannya yang berupa sebuah chip dengan ukuran yang relatif lebih kecil, tentu saja spesifikasi dan kemampuan yang dimiliki oleh mikrokontroller akan menjadi lebih rendah bila dibandingkan dengan sistem komputer seperti PC baik dilihat dari segi kecepatannya. Tidak seperti system komputer, yang mampu menangani berbagai macam program aplikasi (misalnya pengolah kata, pengolah angka dan lain sebagainya), mikrokontroler hanya bisa digunakan untuk satu aplikasi tertentu saja. Meskipun dari sebuah kemampuan lebih rendah tetapi mikrokontroller memiliki kelebihan yang tidak bisa diperoleh pada sistem komputer yaitu,dengan kemasannya yang kecil dan kompak membuat mikrokontroller menjadi lebih fleksibel dan praktis digunakan terutama pada sistem-sistem yang relatif tidak terlalu kompleks atau tidak memerlukan bahan komputasi yang tinggi. 2.3.1
Arsitektur Mikrokontroler AVR ATmega8535 Mikrokontroller
AVR
merupakan
keluarga
mikrokontroller
RISC
(Reduced Instruction Set Computing) keluaran Atmel. Konsep arsitektur AVR pada mulanya dibuat oleh dua orang mahasiswa di Norwegian institute of Technology ( NTH ) yaitu Alf-Egil Bogen dan Vegard Wollan. Mikrokontroler
12
ATMega8535 merupakan salah satu anggota mikrokontroller AVR 8-bit.AVR merupakan mikrokontroller dengan arsitektur Harvard dimana antara kode program dan data disimpan dalam memori secara terpisah.Umumnya arsitektur Havard ini menyimpan kode program dalam memori permanen atau semipermanen (non Volatille).Sedangkan data disimpan dalam memori tidak permanen (Volatile).ATMega8535 memiliki fitur yang cukup lengkap, mulai dari kapasitas memori program dan memori data yang cukup besar, interupsi, timer/counter, PWM, USART, TWI, analog comparator, EEPROM internal dan juga ADC internal semuanaya ada dalam ATMega8535. Selain itu kemampuan kecepatan eksekusi yang lebih tinggi menjadi alasan bagi banyak orang untuk beralih dan lebih memilih untuk menggunakan mikrokontroller jenis AVR dari pada pendahulu nya keluarga MCS-51.Secara garis besar, mikrokontroler ATMEGA8535 memiliki arsitektur harvard, yaitu memisahkan memori untuk kode program dan memori untuk data sehingga dapat memaksimalkan unjuk kerja dan pararelisme. Instruksi-instruksi dalam memori program dieksekusi dalam salah satu alur tunggal, dimana pada saat satu instruksi di kerjakan instruksi berikutnya sudah diambil dari memeori program. 32x 8bit register serba guna digunakan untuk mendukung operasi Arithcmetic Logic Unit (ALU) yang dapat dilakukan dalam 1 siklus. 6 dari register serba guna dapat digunakan sebagai 3 buah register pointer 16- bit pada mode pengalamatan tak langsung untuk mengambil data pada ruang memory data. Hampir semua instruksi AVR ini memiliki format 16-bit(word). Selain register serba guna terdapat register lain yang tepetakan dengan teknik memory mapped I/O selebar 64 byte. Beberapa register ini digunakan
13
untuk beberapa fungsi khusus antara lain sebagai register kontrol timer/counter, interupsi, ADC, USART, SPI, EEPROM dan Fungsi I/O lainnya.Register-register ini menempati memori pada alamat 0x20h-0x5fh.
Gambar 2.5Arsitektur ATMega8535 2.3.2
Fitur ATMega8535 Berikut ini adalah fitur-fitur yang dimiliki oleh ATMega8535:
1. 130
macam
instruksi, yang hampir semuanya dieksekusi dalam satu
siklus clock. 2.
Kecepatan mencapai 16 MPS dengan clock 16 MHZ.
3.
512 Byte internal EEPROM.
4. 32x8-bit register serba guna. 5. 8 Kbyte Flash memory, yang memiliki fasilitas In-System Programing. 6. 512 Byte SRAM. 7. Programming Lock, fasilitas untuk mengamankan kode program. 8. 4 channel output PWM. 9. 8 channel ADC 10-Bit. 14
10. 2 Buah timer/counter 8-bit dan 1 buah timer/counter 16-bit. 11. Serial USART. 12. Master/Slave SPI serial interface. 13. Serial TWI atau 12 C. 14. On-Chip Analog comparator. 2.3.3
Konfigurasi Pin ATMega8535 Mikrokontroler ATMega8535 memiliki 40 pin untuk model PDIP
ditunjukkan pada Gambar 2.2, dan 44 pin untuk model TQFP dan PLCC. Namanama pin pada mikrokontroler ini adalah : 1. VCC merupakan pin yang berfungsi sebagai pin masukan catu daya digital. 2. GND merupakan pin ground untuk catu daya digital. 3.
Port A (PA0...PA7) merupakan pin I/O 8bit dua arah(bi-directional) dan pin masukan 8 chanel ADC.
4.
Port B (PB0 β PB7) merupakan akan pin I/O 8 bit dua arah (bidirectional)dengan resistor pull-up internal dan pin fungsi khusus, yaitu sebagai Timer/Counter, komperator analog dan SPI.
5.
Port C (PC0 β PC7) merupakan pin I/O 8bit dua arah (bidirectional)dan pin fungsi khusus, yaitu TWI, komperator analog, input ADC dan Timer Osilator.
6.
Port D (PD0 β PD7) merupakan pin I/O 8 bit dua arah(bi-directional) dan pin fungsi khusus, yaitu komperator analog, interupsi eksternal dan komunikasi serial.
7. RESET merupakan pin yang digunakan untuk mereset mikrokontroler.
15
8.
XTAL1 merupakan input ke penguat osilator pembalik dan input ke internal clock.
9.
XTAL2 merupakan out put dari penguat oslator pembalik.
10. AVCC
merupakan
pin masukan
tegangan untuk ADC yang
terhubung ke portA. 11. AREF merupakan pin tegangan referensi analog ADC.
Gambar 2.6Konfigurasi Pin ATMega8535
2.3.4 Deskripsi pin-pin pada mikrokontroler ATMega8535 : 1. Port A Merupakan 8-bit dua arah bi-directional port I/O,dengan menggunakan resistor pull-up internal dimana setiap pinnya dapat diatur per bit. Output buffer Port A dapat memberi arus 20 mA dan dapat mengendalikan display LED secara
16
langsung. Data Direction Register port A (DDRA) harus disetting terlebih dahulu sebelum Port A digunakan. Bit-bit DDRA diisi 0 jika ingin memfungsikan pin-pin port A yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, kedelapan pin port A juga digunakan untuk masukan8 channel ADC. 2. Port B Merupakan 8-bit dua arah(bi-directional) port I/O. Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port B dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port B (DDRB) harus disetting terlebih dahulu sebelum Port B digunakan. Bit-bit DDRB diisi 0 jika ingin memfungsikan pin-pin port B yang bersesuaian sebagai input, atau diisi 1 jika sebagai output.Selain sebagai port I/O 8 bit port B juga dapat difungsikan secara individu sebagai berikut: ο
PB7: SCK ( SPI Bus Serial Clock)
ο
PB6: MISO( SPI Bus Master Input/ Slave Out put)
ο
PB5: MOSI( SPI Bus Master Output/Slave Input).
ο
PB4: SS (SPI Slave Select Input)
ο
PB3: AIN1(Analog Comparator Negatif Input) OC0 (Out put
Compare Timer/counter 0) ο
.PB2: AIN0 (Analog Comparator Positif Input) INT2 (External Interrupt 2 Inpt)
ο
PB1:T1 (Timer/Counter 1 External Counter Input)
ο
PB0:T0 (Timer/Counter 0 External Counter Input) XCK (USART External Clock Input/Output)
17
3. Port C Merupakan port I/O 8-bit dua arah (bi-directional).Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port C dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port C (DDRC) harus disetting terlebih dahulu sebelum Port C digunakan. Bit-bit DDRC diisi 0 jika ingin memfungsikan pin-pin port C yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, Port C juga difungsikan secara individu sebagai berikut: ο PC7: TOSC2 (Timer Oscillator 2) ο PC6: TOSC1 (Timer Oscillator 1) ο PC1: SDA (Serial Data Input/Output) ο PC0: SCI (Serial Clock) Port D Merupakan Port I/O 8-bit dua arah (bi-directional) .Setiap pinnya dapat menyediakan internal pull-up resistor (dapat diatur per bit). Output buffer Port D dapat memberi arus 20 mA dan dapat mengendalikan display LED secara langsung. Data Direction Register port D (DDRD) harus disetting terlebih dahulu sebelum Port D digunakan. Bit-bit DDRD diisi 0 jika ingin memfungsikan pin-pin port D yang bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, pin-pin port D juga memiliki untuk fungsi-fungsi alternatif khusus sebagai berikut: ο
PD7: OC2 ( Ouput Compare Timer/Counter 1)
ο
PD6: ICP1 ( Timer Counter 1 input capture)
ο
PD5: OC1A ( Output Compare A Timer /Counter1)
18
ο
PD4: OC1B ( Output Compare B Timer/Counter 1)
ο
PD3: INT1 ( External Interrupt 1 Input)
ο
PD2: INT0 ( External interrupt 0 Input)
ο
PD1: TXD ( USART Transmit)
ο
PD0: RXD ( USART Receive)
4. RESET RST pada pin 9 merupakan pin reset yang akan bekerja bira diberi pulsa rendah (aktif Low) selama minimal 1,5us. 5. XTAL2 Merupakan out put dari penguat dari osilator pembalik 6. XTAL1 Merupakan input ke penguat osilator pembalik dan input ke internal clock. 7. AVCC Avcc adalah pin masukan catu daya yang digunakan untuk masukan analog ADC yang terhubung ke Port A. Kaki ini harus secara eksternal terhubung ke Vcc melalui lowpass filter.
8. AREF AREF adalah pin masukan referensi analog untuk ADC. Untuk operasionalisasi ADC, suatu level tegangan antara AGND dan Avcc harus dibeikan ke kaki ini. 9. AGND
19
AGND adalah kaki untuk analog ground. Hubungkan kaki ini ke GND, kecuali jika board memiliki anlaog ground yang terpisah. 2.3.5
Peta Memory ATMega8535 Mikrokontroller ATMega8535 memiliki 3 jenis memori yaitu memori
program, memori data dan memori EEPROM.Ketigannya memiliki ruang-ruang tersendiri dan terpisah seperti terlihat pada gambar 2.5
Gambar 2.7Organisasi memori ATMega8535 1. Memori Program ATMega8535 memiliki kapasitas memori program sebesar 8 Kbyte yang terpetakan dari alamat 0000h β 0FFFh dimana masing-masing alamat memiliki lebar data sebesar 16 bit.Sehingga organisasi memori program seperti ini sering dituliskan dengan 4K x 16 bit.Memori program ini juga terbagi menjadi dua yaitu program boot dan juga bagian program aplikasi. 2. Memori Data ATMega8535 memiliki kapasitas memori data sebesar 608 byte yang terbagi menjadi 3 bagian yaitu register serba guna,register I/O dan SRAM. 32 byte alamat terendah digunakan untuk register serbaguna yaitu R0 β R31. 64 byte
20
berikut nya digunakan untuk register I/O yang digunakan untuk mengatur fasilitas timer /counter, interrupsi, ADC, USART, SPI, EEPROM dan port I/O seperti Port A, Port B, Port C, dan Port D. Selanjutnya 512 byte diatasnya digunakan untuk memory data SRAM . Jika register-register I/O diatas diakses seperti mengakses data pada memori ( Jika kita menggunakan instruksi LD atau ST ) maka register I/O diatas menempati alamat 0020-005F. Tetapi jika register-register I/O diakses seperti mengakses I/O pada umumnya ( menggunakan instruksi IN/ IOUT) maka register I/O diatas menempati alamat memori 0000h β 003Fh. 32 Register 64 I/O Register
$0000
$0000 - $001F $0020 - $005F
64 I/O Register $003F
$0060
(b)
Internal SRAM (512 x 8)
$025F (a)
Gambar 2.8 (a) Register I/O Sebagai Memori Data, (b) Register I/O sebagai I/O 3. Memori EEPROM ATMega8535 memiliki memori EEPROM sebesar 512 byte yang terpisah dari memori program maupun dari memori data. Memori EEPROM ini hanaya dapat diakses dengan menggunakan register-register I/O yaitu register EEPROM Addres ( EEARH-EEARL), register EEPROM Data (EEDR) dan register EEPROM control ( EECR). Untuk megakses memory EEPROM ini diperlakukan
21
sperti mengakses data eksternal sehingga waktu dari eksekusi relatif lebih lama dibadingkan jika kita mengakses data dari SRAM. 2.3.6
Register Serba guna ( General Purpose Register) ATMega8535 memiliki 32 byte register serbaguna yang terletak pada awal
alamat RAM. Dari 32 byte register serba guna 6 byte terakhir juga digunakan sebagai register pointer yaitu register pointer X,register pointer Y dan Register pointer Z.
Gambar 2.9 Register Serba guna
2.4. USART ( Universal Synchronous and Asynchoronous Serial Receiver 2.4.1 (And Transmitter) Universal Synchronous Serial Receiver and Transmitter (USART) juga merupakan
salah
satu
metode
komunikasi
serial
yang
dimiliki
oleh
ATMega8535.USART merupakan komunikasi yang memiliki fleksibilitas yang tinggi, yang dapat kita gunakan untuk melakukan transfer data baik antara
22
mikrokontroler maupun dengan modul-modul eksternal termasuk PC yang memiliki fitur UART. USART memungkinkan transmisi data baik secara synchronous maupun asynchronous sehingga dengan demikian USART pasti kompatibel dengan UART. Pada ATMega8535, pengaturan secara umum pengaturan mode komunikasi baik Synchronous maupun Asynchronous adalah sama, perbedaannya hanya terletak pada sumber clocknya saja. Pada mode Asynchronous masing masing Peripheral memiliki sumber clock sendiri sedang kan pada mode Synchronous hanya ada satu sumber clock yang digunakan secra bersama- sama. Dengan
demikian
secara
hardware
untuk
mode
Asynchronous
hanya
membutuhkan 2 pin yaitu TXD dan RXD sedangkan untuk mode Synchronous harus 3 pin yaitu TXD,RXD dan XCK. 2.4.2
Status Register ( SREG) Register SREG digunakan untuk menyimpan informasi dari hasil operasi
aritmatika yang terakhir . Informasi-informasi dari register SREG dapat digunakan untuk mengubah alur program, yang sedang dijalankan dengan mengunakan instruksi percabangan . Data SREG akan selalu berubah jika setiap instruksi atau operasi pada ALU dan datanya tidak otomatis tersimpan apabila terjadi instruksi percabangan baik karena instruksi maupun lompatan.
23
Gambar 2.10 Status Register Status Register ATMega8535 : ο§
Bit 7 β I : Global Interrupt Enable Bit I digunakan untuk mengaktifkan interrupsi secara umum ( interrupsi
global). Jika bit I benilai β1β maka interrupsi secara umum akan aktif , tetapi jika bernilai β0β maka tidak ada satupun interrupsi yang aktif. Pengaturan jenisjenis interrupsi apa sja yang akan aktif dilakukan dengan mengatur register kontrol yang sesuai dengan jenis interrupsi tersebut, dengan terlebih dahulu mengaktifkan interupsi global, yaitu bit I diset β1β. ο§
Bit 6 β T : Bit Copy Storage Bit T digunakan untuk mementukan bit sumber atau bit tujuan pada
instruksi bit copy. Pada instruksi BST, data akan dicopy dari register ke bit T ( Bit T sebagai tujuan) sedangkan pada instruksi BLD, bit T akan di copy ke register ( Bit T Sebagai Sumber). ο§
Bit 5 β H : Half carry Flag Bit H digunakan untuk menunjukkan ada tidaknya setengah carry pada
operasi aritmatika BCD, yaitu membagi satu byte data menjadi dua bagian (masing-masing 4 bit) dan masing-masing bagian dianggap sebagai 1 digit desimal. ο§ Bit 4 β S: Sign bit
24
Bit S merupakan kombinasi antara bit V dan bit N, yaitu dengan mengXOR-kan bit V dan bit N. ο§
Bit 3 β V : Twoβs Complement over flow flag
Bit V digunakan untuk mendukun operasi aritmatika komplemen 2.Jika terjadi luapan pada operasi aritmatika bilangan komplemen 2 maka akan menyebabkan bit V bernilai β1β. ο§
Bit 2 - N : Negative Flag Bit N digunakan untuk menunjukkan apakah hasil sebuah operasi
aritmatika ataupun operasi logika bernilai negatif atau tidak.Jika hasilnya negatif maka bit N bernilai β1β dan jika hasilnya bernilai positif maka bit N bernila β0β. ο§
Bit 1 - Z : Zero Flag Bit Z digunakan untuk menunjukkan hasil operasi aritmatika ataupun
operasi logika apakah bernilai nol atau tidak.Jika hasilnya nol maka bit Z bernilai β1β dan jika hasilnya tidak nol maka bit Z bernilaiβ0β. ο§
Bit 0 β C : Carry flag
Bit C digunakan untuk menunjukkan hasil operasi aritmatika ataupun logika apakah ada carry atau tidak.Jika ada carry maka bit C bernilaiβ1β dan jikatidak ada carry maka bit C akan bernilai β0β 2.5
LCD (Liquid Crystal Display) LCD merupakan salah satu perangkat penampil yang sekarang ini mulai
banyak digunakan.Penampil LCD mulai dirasakan menggantikan fungsi dari penampil CRT (Cathode Ray Tube), yang sudah berpuluh-puluh tahun digunakan manusia sebagai penampil gambar/text baik monokrom (hitam dan putih), maupun yang berwarna.Teknologi LCD memberikan keuntungan dibandingkan dengan
25
teknologi CRT, kaena pada dasarnya, CRT adalah tabung triode yang digunakan sebelum transistor ditemukan. Beberapa keuntungan LCD dibandingkan dengan CRT adalah konsumsi daya yang relative kecil, lebih ringan, tampilan yang lebih bagus, dan ketika berlama-lama di depan monitor, monitor CRT lebih cepat memberikan kejenuhan pada mata dibandingkan dengan LCD.
Gambar 2.11LCD 2x16 LCD memanfaatkan silicon atau gallium dalam bentuk Kristal cair sebagai pemendar cahaya.Pada layar LCD, setiap matrik adalah susunan dua dimensi piksel yang dibagi dalam baris dan kolom.Dengan demikian, setiap pertemuan baris dan kolom adalah sebuah LED terdapat sebuah bidang latar (backplane), yang merupakan lempengan kaca bagian belakang dengan sisi dalam yang ditutupi oleh lapisan elektroda trasparan.Dalam keadaan normal, cairan yang digunakan memiliki warna cerah. Daerah-daerah tertentu pada cairan akan berubah warnanya menjadi hitam ketika tegangan diterapkan antara bidang latar dan pola elektroda yang terdapat pad sisi dalam lempeng kaca bagian depan. Keunggulan LCD adalah hanya menarik arus yang kecil (beberapa microampere), sehingga alat atau sistem menjadi portable karena dapat menggunakan catu daya yang kecil.Keunggulan lainnya adalah tampilan yang diperlihatkan dapat dibaca dengan mudah di bawah terang sinar matahari.Di bawah sinar cahaya yang remang-remang dalam kondisi gelap, sebuah lampu (berupa LED) harus dipasang dibelakang layar tampilan. 26
LCD yang digunakan adalah jenis LCD yang mena mpilkan data dengan 2 baris tampilan pada display. Keuntungan dari LCD ini adalah : 1. Dapat menampilkan karakter ASCII, sehingga dapat memudahkan untuk membuat program tampilan. 2. Mudah dihubungkan dengan port I/O karena hanya mengunakan 8 bit data dan 3 bit control. 3. Ukuran modul yang proporsional. 4. Daya yang digunakan relative sangat kecil.
D0 D1 D2 D3 D4 D5 D6 D7
LCD 16x2
RS 4 RW 5 EN 6
1 GND 3 LCD Drv 16 V-BL
10 11 12 13 11 12 13 14
2 VCC V+BL15
+5VDC
Gambar 2.12Konfigurasi Pin LCD Operasi dasar pada LCD terdiri dari empat, yaitu instruksi mengakses proses internal, instruksi menulis data, instruksi membaca kondisi sibuk, dan instruksi membaca data. ROM pembangkit sebanyak 192 tipe karakter, tiap karakter dengan huruf 5x7 dot matrik.Kapasitas pembangkit RAM 8 tipe karakter (membaca program), maksimum pembacaan 80x8 bit tampilan data.Perintah utama LCD adalah Display Clear, Cursor Home, Display ON/OFF, Display Character Blink, Cursor Shift, dan Display Shift.Tabel 2.2 menunjukkan operasi dasar LCD.
Tabel 2.5.1 Operasi Dasar LCD
27
RS
R/W
Operasi
0
0
Input Instruksi ke LCD
0
1
Membaca Status Flag (DB7) dan alamat counter (DB0 ke DB6) 1
0
Menulis Data
1
1
Membaca Data
Tabel 2.5.2 Konfigurasi Pin LCD Pin Keterangan
Konfigurasi Hubung
1
GND
Ground
2
VCC
Tegangan +5VDC
3
VEE
Ground
4
RS
Kendali RS
5
RW
Ground
6
E
Kendali E/Enable
7
D0
Bit 0
8
D1
Bit 1
9
D2
Bit 2
10
D3
Bit 3
11
D4
Bit 4
12
D5
Bit 5
13
D6
Bit 6
No.
28
14
D7
Bit 7
15
A
Anoda (+5VDC)
16
K
Katoda (Ground)
Tabel 2.5.3 Konfigurasi Pin LCD Pin
Bilangan
Keterangan
biner RS
RW
0
Inisialisasi
1
Data
0
Tulis LCD / W (write)
1
Baca LCD / R (read)
E
0
Pintu
data
terbuka 1
Pintu data tertutup
Lapisan film yang berisis Kristal cair diletakkan di antara dua lempeng kaca yang telah ditanami elektroda logam transparan. Saat teganga dicatukan pada beberapa pasang elektroda, molekul β molekul Kristal cair akan menyusun diri agar cahaya yang mengenainya akan dipantulkan atau diserap. Dari hasil pemantulan atau penyerapan cahaya tersebut akan terbentuk pola huruf, angka, atau gambar sesuai bagian yang di aktifka.
29
LCD membutuhkan tegangan dan daya yang kecil sehingga sangat popular untuk aplikasi pada kalkulator, arloji digital, dan instrument elektronika lain seperti Global Positioning System (GPS), baragraph display dan multimeter digital. LCD umumnya dikemas dalam bentuk Dual In Line Package (DIP) dan mempunyai kemampuan untuk menampilkan beberapa kolom dan baris dalam satu panel. Untuk membentuk pola, baik karakter maupun gambar pada kolom dan baris secara bersamaan digunakan metode Screening. Metode screening adalah mengaktifkan daerah perpotongan suatu kolo dan suatu baris secara bergantian dan cepat sehingga seolah-olah aktif semua. Penggunaan metode ini dimaksudkan untuk menghemat jalur yang digunakan untuk mengaktifkan panel LCD. Saat ini telah dikembangkan berbagai jenis LCD, mulai jenis LCD biasa, Passive Matrix LCD (PMLCD), hingga Thin-Film Transistor Active Matrix (TFT-AMLCD). Kemampuan LCD juga telah ditingkatkan daru yang monokrom hingga yang mampu menampilkan ribuan warna. Data yang di olah akan di proses olehmikrokontroler dan akan ditampilkan padasebuah display LCD. Dimana LCD M1632adalah modul LCD yang digunakan sebagaiantarmuka antara pengguna dan sistem mikrokontroler dengan tampilan 2 baris dan16 kakakter.Sebelum menggunakan modul LCDhal yang pertama kali harus dilakukanadalah melakukan inisialisasi terhadap
30