BAB II
LANDASAN TEORI
2.1 Mikrokontroler AVR Atmega8
2.1.1. Konfigurasi Pin Atmega8
Gambar 2.1. Konfigurasi Pin ATmega 8
Atmega8 ATmega8 memiliki 28 Pin, yang masing-masing pin nya memiliki fungsi yang berbeda-beda baik sebagai port maupun fungsi yang lainnya. Berikut akan dijelaskan fungsi dari masing-masing kaki ATmega8.
a. VCC
Merupakan supply tegangan digital. b. GND
Merupakan ground untuk semua komponen yang membutuhkan grounding.
c. Port B (PB7...PB0)
mengeluarkan arus jika pull-up resistor diaktifkan. Khusus PB6 dapat digunakan sebagai input Kristal (inverting oscillator amplifier) dan input ke rangkaian clock internal, bergantung pada pengaturan Fuse bit yang digunakan untuk memilih sumber clock. Sedangkan untuk PB7 dapat digunakan sebagai output Kristal (output oscillator amplifier) bergantung pada pengaturan Fuse bit yang digunakan untuk memilih sumber clock. Jika sumber clock yang dipilih dari oscillator internal, PB7 dan PB6 dapat digunakan sebagai I/O atau jika menggunakan Asyncronous Timer/Counter2 maka PB6 dan PB7 (TOSC2 dan TOSC1) digunakan untuk saluran input timer.
d. Port C (PC5…PC0)
Port C merupakan sebuah 7-bit bi-directional I/O port yang di dalam masingmasing pin terdapat pull-up resistor. Jumlah pin nya hanya 7 buah mulai dari pin C.0 sampai dengan pin C.6. Sebagai keluaran/output port C memiliki karakteristik yang sama dalam hal menyerap arus (sink) ataupun mengeluarkan arus (source).
e. RESET/PC6
f. Port D merupakan 8-bit bi-directional I/O dengan internal pull-up resistor. Fungsi dari port ini sama dengan port-port yang lain. Hanya saja pada port ini tidak terdapat kegunaan-kegunaan yang lain. Pada port ini hanya berfungsi sebagai masukan dan keluaran saja atau biasa disebut dengan I/O.
g. AVcc
Pin ini berfungsi sebagai supply tegangan untuk ADC. Untuk pin ini harus dihubungkan secara terpisah dengan VCC karena pin ini digunakan untuk analog saja. Bahkan jika ADC pada AVR tidak digunakan tetap saja disarankan untuk menghubungkannya secara terpisah dengan VCC. Jika ADC digunakan, maka AVcc harus dihubungkan ke VCC melalui low pass filter.
h. AREF
Merupakan pin referensi jika menggunakan ADC.
2.1.2.SPESIFIKASI Atmega 8
1. Kinerja tinggi, rendah daya Atmel®AVR® 8-bit Microcontroller 2. Advanced RISC Architecture
a. 130 Instruksi Powerfull - Kebanyakan Single-jam Siklus Eksekusi b. 32 × 8 General Purpose Kerja Register
c. Operasi Fully Static
d. Sampai dengan 16MIPS throughput di 16MHz e. On-chip 2-siklus Multiplier
a. 8Kbytes In-System Self-programmable memori program flash b. 512bytes EEPROM
c. SRAM 1Kbyte internal
d. Menulis / Erase Cycles: 10.000 Flash / 100.000 EEPROM e. Data retensi: 20 tahun pada 85 ° C / 100 tahun pada 25 ° C (1) f. Opsional Boot Kode Bagian dengan Independent Lock Bits g. In-System Programming secara On-chip Program Boot h. Benar Operasi Baca-Sementara-Write
i. Kunci Pemrograman untuk Security Software 4. Fitur Peripheral
a. Dua 8-bit Timer / Counter dengan Prescaler terpisah, satu Bandingkan Modus
b. Satu 16-bit Timer / Counter dengan Prescaler terpisah, Bandingkan Mode, dan Tangkap
c. Mode
d. Real Time Counter dengan Oscillator terpisah e. Tiga Saluran PWM
f. 8-channel ADC di TQFP dan QFN / MLF paket g. Delapan Saluran 10-bit Akurasi
h. 6-channel ADC dalam paket PDIP i. Enam Saluran 10-bit Akurasi
j. Byte berorientasi Dua-kawat Serial Interface k. Programmable Serial USART
m. Programmable Watchdog Timer dengan terpisah On-chip Oscillator
n. On-chip Analog Comparator 5. Fitur Mikrokontroler Khusus
a. Power-on ulang dan Programmable Brown-out Detection b. Internal dikalibrasi RC Oscillator
c. Eksternal dan Sumber Interrupt internal
d. Lima Mode Sleep: Idle, ADC Noise Reduction, Power-save, Power-down, dan
e. Bersiap 6. I / O dan Paket
a. 23 Programmable I / O Garis
b. 28-lead PDIP, 32-lead TQFP, dan 32-pad QFN / MLF 7. Tegangan Operasi
a. 2.7V - 5.5V (ATmega8L) b. 4.5V - 5.5V (ATmega8) 8. Kelas Kecepatan
a. 0 - 8MHz (ATmega8L) b. 0 - 16MHz (ATmega8) 9. Konsumsi Daya di 4Mhz, 3V, 25 C
a. Aktif: 3.6mA
2.1.3. Memori AVR Atmega 8
Memori atmega terbagi menjadi tiga yaitu :
1. Memori Flash Memori flash adalah memori ROM tempat kode-kode program berada. Kata flash menunjukan jenis ROM yng dapat ditulis dan dihapus secara elektrik. Memori flash terbagi menjadi dua bagian yaitu bagian aplikasi dan bagian boot. Bagian aplikasi adalah bagian kode-kode program apikasi berada. Bagian boot adalah bagian yang digunakan khusus untuk booting awal yang dapat diprogram untuk menulis bagian aplikasi tanpa melalui programmer/downloader, misalnya melalui USART. 32 General purpose registers 64 I/O registers Additional I/O registers Internal RAM Flash Boot Section EEPROM 13.
2. Memori Data Memori data adalah memori RAM yang digunakan untuk keperluan program. Memori data terbagi menjadi empat bagian yaitu : 32 GPR (General Purphose Register) adalah register khusus yang bertugas untuk membantu eksekusi program oleh ALU (Arithmatich Logic Unit), dalam instruksi assembler setiap instruksi harus melibatkan GPR. Dalam istilah processor komputer sahari-hari GPR dikenal sebagai “chace memory”. I/O register dan Aditional I/O register adalah register yang
3. EEPROM EEPROM adalah memori data yang dapat mengendap ketika chip mati (off), digunakan untuk keperluan penyimpanan data yang tahan terhadap gangguan catu daya. 14 2.1.3 Timer/Counter 0 Timer/counter 0 adalah sebuah timer/counter yang dapat mencacah sumber pulsa/clock baik dari dalam chip (timer) ataupun dari luar chip (counter) dengan kapasitas 8-bit atau 256 cacahan. Timer/counter dapat digunakan untuk : 1. Timer/counter biasa
2. Clear Timer on Compare Match (selain Atmega 8) 3. Generator frekuensi (selain Atmega 8)
4. Counter pulsa eksternal
2.1.4. Komunikasi Serial Pada Atmega 8
Mikrokontroler AVR Atmega 8 memiliki Port USART pada Pin 2 dan Pin 3 untuk melakukan komunikasi data antara mikrokontroler dengan mikrokontroler ataupun mikrokontroler dengan komputer. USART dapat difungsikan sebagai transmisi data sinkron, dan asinkron. Sinkron berarti clock yang digunakan antara transmiter dan receiver satu sumber clock. Sedangkan asinkron berarti transmiter dab receiver mempunyai sumber clock sendiri-sendiri. USART terdiri dalm tiga blok yaitu clock generator, transmiter, dan receiver.
2.1.5.Sistim Minimum Atmega 8
bisa berupa downloader paralel atau serial dengan tools programmernya menggunakan Ponkemudian sediakan USBASP (Downloader) yang lain untuk mendownload firmware ke atmega8. (Downloader tidak harus yang berbasis USBASP bisa yang lain asal kompatibel dengan MOSI,MISO,SCK dan reset mikrokontroler AVR).
2.2 Sensor Temperatur LM35
Sensor suhu LM35 adalah komponen elektronika yang memiliki fungsi untuk mengubah besaran suhu menjadi besaran listrik dalam bentuk tegangan. Sensor Suhu LM35 yang dipakai dalam penelitian ini berupa komponen elektronika elektronika yang diproduksi oleh National Semiconductor. LM35 memiliki keakuratan tinggi dan kemudahan perancangan jika dibandingkan dengan sensor suhu yang lain, LM35 juga mempunyai keluaran impedansi yang rendah dan linieritas yang tinggi sehingga dapat dengan mudah dihubungkan dengan rangkaian kendali khusus serta tidak memerlukan penyetelan lanjutan.
Meskipun tegangan sensor ini dapat mencapai 30 volt akan tetapi yang diberikan kesensor adalah sebesar 5 volt, sehingga dapat digunakan dengan catu daya tunggal dengan ketentuan bahwa LM35 hanya membutuhkan arus sebesar 60 µA hal ini berarti LM35 mempunyai kemampuan menghasilkan panas (self-heating) dari sensor yang dapat menyebabkan kesalahan pembacaan yang rendah
2.3. LCD
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 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.2.LCD
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.
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.
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.1.Operasi Dasar LCD
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.2. Konfigurasi LCD
Pin Bilangan biner Keterangan
RS 0 Inisialisasi
1 Data
1 Pintu data tertutup
Tabel 2.3.Konfigurasi Pin LCD
Pin No.
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
14 D7 Bit 7
15 A Anoda (+5VDC)
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.
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.
2.4. PWM
PWM ( Pulse Width Modulation) adalah salah satu teknik modulasi dengan mengubah lebar pulsa (duty cylce) dengan nilai amplitudo dan frekuensi yang tetap. Satu siklus pulsa merupakan kondisi high kemudian berada di zona transisi ke kondisi low. Lebar pulsa PWM berbanding lurus dengan amplitudo sinyal asli yang belum termodulasi. Duty Cycle merupakan representasi dari kondisi logika high dalam suatu periode sinyal dan di nyatakan dalam bentuk (%) dengan range 0% sampai 100%, sebagai contoh jika sinyal berada dalam kondisi high terus menerus artinya memiliki duty cycle sebesar 100%. Jika waktu sinyal keadaan high sama dengan keadaan low maka sinyal mempunyai duty cycle sebesar 50%.
Aplikasi penggunaan PWM biasanya ditemui untuk pengaturan kecepatan motor dc, pengaturan cerah/redup LED, dan pengendalian sudut pada motor servo. Contoh penggunaan PWM pada pengaturan kecepatan motor dc semakin besar nilai duty cycle yang diberikan maka akan berpengaruh terhadap cepatnya putaran motor. Apabila nilai duty cylce-nya kecil maka motor akan bergerak lambat.
Untuk membandingkannya terhadap tegangan DC, PWM memiliki 3 mode operasi yaitu :
1. mode inverted
pembanding (compare level) lebih besar dari pada nilai sinyal dan sebaliknya jika bernilai low (0v) pada saat titik pembanding lebih kecil dari nilai sinyal seperti pada gelombang B pada gambar di atas.
3. Toggle Mode
Pada mode toggle output akan beralih dari nilai high (5v) ke nilai low (0v) jika titik pembanding sesuai dan sebaliknya beralih dari nilai low ke high.
2.5. Modul Bluetooth HC-05
Modul HC-05 adalah modul bluetooth yang dapat berfungsi sebagai master atau sebagai slave. modul HC-05 memiliki dua mode kerja yaitu mode AT
Command dan mode Data. Modul HC-05 menggunakan mode Data secara
default. Berikut ini adalah keterangan untuk kedua mode tersebut:
• AT Command. Pada mode ini, modul HC-05 akan menerima instruksi
berupa perintah AT Command. Mode ini dapat digunakan untuk mengatur konfigurasi modul HC-05. Perintah AT Command yang dikirimkan ke modul HC-05 menggunakan huruf kapital dan diakhiri dengan karakter CRLF (\r\n atau 0x0d 0x0a dalam heksadesimal).
• Data. Pada mode ini, modul HC-05 dapat terhubung dengan perangkat
Gambar 2.4. Modul Bluetooth HC-05 Keterangan pin out di atas adalah sebagai berikut:
• EN fungsinya untuk mengaktifkan mode AT Command Setup pada modul
HC-05. Jika pin ini ditekan sambil ditahan sebelum memberikan tegangan ke modul HC-05, maka modul akan mengaktifkan mode AT Command Setup. Secara default, modul HC-05 aktif dalam mode Data.
• Vcc adalah pin yang berfungsi sebagai input tegangan. Hubungkan pin ini
dengan sumber tegangan 5V.
• GND adalah pin yang berfungsi sebagai ground. Hubungkan pin ini
dengan ground pada sumber tegangan.
• TX adalah pin yang berfungsi untuk mengirimkan data dari modul ke
• RX adalah pin yang berfungsi untuk menerima data yang dikirim ke
modul HC-05. Tegangan sinyal pada pin sama dengan tegangan sinyal pada pin TX, yaitu 3.3V. Untuk keamanan, sebaiknya gunakan pembagi tegangan jika menghubungkan pin ini dengan arduino yang bekerja pada tegangan 5V. Pembagi tegangan tersebut menggunakan 2 buah resistor. Resistor yang digunakan sebagai pembagi tegangan pada tutorial ini adalah 1K ohm dan 2K ohm. Untuk lebih jelasnya, dapat dilihat pada bagian implementasi koneksi antara modul HC-05 dan arduino UNO.
• STATE adalah pin yang berfungsi untuk memberikan informasi apakah