BAB II LANDASAN TEORI 2.1 Mikrokontroller ATmega8535

advertisement
BAB II
LANDASAN TEORI
2.1
Mikrokontroller ATmega8535
Mikrokontroller merupakan suatu terobosan teknologi mikrokontroler dan
mikro computer menjadi kebutuhan pasar dan teknologi baru. Sebagai teknologi baru,
yaitu teknologi semikonduktor dengan kandungan transistor yang lebih banyak namun
hanya membutuhkan ruang kecil serta dapat diproduksi secara massal (dalam jumlah
banyak) sehingga harga menjadi murah. Sebagai kebutuhan pasar, mikrokontroler
hadir untuk memenuhi selera industry dan para konsumen akan kebutuhan pada alatalat bantu yang canggih.
Mikrokontroler adalah suatu keeping IC dimana terdapat mikroprosesor dan
memori program (ROM) serta memori serbaguna, bahkan ada beberapa jenis
mikrokontroler yang memiliki fasilitas ADC, PPL, EEPROM dalam suatu kemasan.
Pengguna mikrokontroler dalam bidang kontrol yang sangat luas dan popular,ada
beberapa vendor yang membuat mikrokontoler diantaranya Intel, Mikrochip,
Winbond, Atmel, Philips, Xmics dan lain lainya.
Mikrokontroler Atmega8535 merupakan generasi AVR (Alf and Vegard’s risk
processor) mikrokontroler AVR memiliki arsiterktur RISC (Reduced Instruction Set
Computing) 8 bit, dimana semua instruksi dalam kode 16 bit (16 bit word ) dan
sebagian besar instruksi dieksekusi dalam satu siklus clock. AVR menjalankan sebuah
instruksi komponen eksternal dapat dikurangi. Mikrokontroler AVR didesain
menggunakan arsitektur Harvard, dimana ruang dan jalur bus bagi memori program
dipisahkan dengan memori data memori program yang diakses dengan single-level
4
pipeling, di mana ketikan sebuah instruksi di jalankan, instruksinya akan di prefetch
dari memori program.
2.1.1 Arsitektur Atmega 8535
Gambar 2.1 diagram blok funsional ATmega8535
5
Gambar 2.1 diatas memperlihatkan bahwa ATmega8535 bagian sebagai berikut :
1. Saluran I/O sebanyak 32 buah,yaiitu Port A, port B,Port C,Port D.
2. ADC 10 bit sebanyak 8 saluran.
3. Tiga Timer/counter dengan kemapuan pembanding.
4. CPU yang terdiri atas 32 buah register.
5. Wacthdog Timer dengan osilator internal.
6. SRAM sebesar 512 byte.
7. Memori flash sebesar 8 kb dengan kemampuan Read while write.
8. Unit iterupsi internal dan eksternal
9. Port antar muka SPI
10. EEPROM(electrically erasable read only memori) sebesar 512 byte yang
deprogram saat oprasi.
11. Antar muka komparator analog.
12. Port USART untuk komunikasi serial dengan kecepatan maksimal 12,5
Mbps.
13. Sistem mikroprosesor 8 bit dengan kecepatan maksimal 16 MHz.
6
2.1.2 Konfigurasi PIN ATmega8535.
Gambar 2.2 Konfigurasi Pin ATmega8535
Konfiguras pin ATmega 8535 dapat dilihat pada gambar 2.2 secara fungsional
Konfigurasi pin ATmega 8535 sebagai berikut:
1. VCC merupakan pin yang berfungsi sebagai pin masukan catudaya.
2. GND merupakan pin ground.
3. Port A (PA0…PA7) merupakan pin I/O dua arah dan pin masukan ADC
4. Port B (PB0..PB7) merupakan pin I/O dua arah dan pin fungsi khusus untuk
Timer/counter,Komparator analog , dan SPI.
7
5. Port C (PC0..PC7) merupakan pin I/O dua arah dan pin khusus TWI,
Komparator analog dan Timer oscillator..
6. Port D (PD0..PD7) merupakan pin I/O dua arah dan pin khusus untuk
komparator analog ,interupsi eksternal ,dan Komunikasi serial.
7. RESET merupakan pin yang digunakan untuk me-reset mikrokontroler.
8. XTAL1 dan merupakan XTAL2 merupakan pin masukan clock eksternal.
9. AVCC merupakan pin masukan tegangan untuk ADC.
10. AREF merupakan pin masukan referensi ADC.
2.2 LCD (liquid crystal Display)
Kegunaan LCD banyak sekali dalam perancangan suatu sistem dengan
menggunakan mikrokontroler, LCD (Liquid Crysral Display) dapat berfungsi untuk
menampilkan suatu nilai hasil sensor, menampilakan teks, atau menampilakan menu
pada aplikasi mikrokontroler. M1632 merupakan modul LCD matrix dengan
konfigurasi 16 karakter dan 2 baris dengan setiap karakternya dibentuk oleh baris pixel
dan 5 kolom pixel (1 baris pixel terakhir adalah kursor).
Didalam modul M1632 sudah tersedia HD44780 yang dikeluarkan oleh Hitachi,
Hyundai dan modul-modul M1632 lainnya. HD44780 sebetulnya merupakan
mikrokontroler dirancang khusus untuk mengenendalikan LCD dan mempunyai
kemampuan untuk mengatur proses scanning pada layar LCD yang terbentuk oleh 16
COM dan 40 SEG sehingga mikrokontroler/perangkat yang mengakses modul LCD ini
tidak perlu lagi mengatur scanning pada layar LCD. Mikrokontroler atau perangkat
tersebut hanya mengirim data-data yang merupakan karakter yang akan ditampilkan
pada LCD atau perintah yang mengatur proses tampilan pada LCD saja.
8
Adapun konfigurasi dan deskripsi dari pin-pin LCD M1632 antara lain:
1. Pin 1 dihubungkan ke Gnd
2. Pin 2 dihubungkan ke Vcc +5V
3. Pin 3 dihubungkan ke bagian tegangan potensiometer 10KOhm sebagai
pengatur kontras.
4. Pin 4 untuk membritahukan LCD bahwa sinyal yang dikirim adalah data, jika
Pin 4 ini diset ke logika 1 (high, +5V), atau memberitahukan bahwa sinyal yang
dikirim adalah perintah jika pin ini di set ke logika 0 (low, 0V).
5. Pin 5 digunakan untuk mengatur fungsi LCD. Jika di set ke logika 1 (high,
+5V) maka LCD berfungsi untuk menerima data (membaca data). Dan fungsi
untuk mengeluarkan data, jika pin ini di set ke logika 0 (low, 0V). Namun
kebanyakan aplikasi hanya digunakan untuk menerima data, sehingga pin 5 ini
selalu dihubungkan ke Gnd.
6. Pin 6 adalah terminal enable. Berlogika 1 setiap kali pengiriman atau pembaca
data.
7. Pin 7 – Pin 14 adalah data 8 bit data bus (Aplikasi ini menggunakan 4 bit MSB
saja, sehingga pin data yang digunkan hanya Pin 11 – Pin 14).
8. Pin 15 dan Pin 16 adalah tegangan untuk menyalakan lampu LCD.
Adapun gambar dari LCD 2x16 adalah sebagai berikut:
Gambar 2.3 Struktur LCD
9
Modul LCD M1632 memilki beberapa jenis memori yang digunakan untuk
menyimpan atau memproses data-data yang ditampilkan pada layar LCD. Setiap
memori mempunyai fungsi-fungsi tersendiri:
a. DDRAM
DDRAM merupakan memori tempat karakter yang ditampilkan berada. Contohnya
karakter ‘A’ atau 41h yang ditulis pada alamat 00 akan tampil pada baris pertama dan
kolom pertama dari LCD. Apabila karakter tersebut di alamat 40h, karakter tersebut
akan tampil pada baris kedua kolom pertama darai LCD.
b. CGRAM
CGRAM merupakan memori untuk menggambarkan pola seluruh karakter dan bentuk
karakter dapat diubah-ubah sesuai keinginan. Akan tetapi isi memori akan hilang saat
power supplay tidak aktif sehingga pola karakter akan hilang.
c. CGROM
pola sebuah karakter dan pola tersebut ditentukan secara permanen dari HD44780
sehingga pengguna tidak dapat mengubahnya lagi. Oleh Adalah memori untuk
menggambarkan karena ROM bersifat permanen, pola karakter tersebut akan hilang
walaupun power supplay tidak aktif.
10
2.3 Fotodioda
Pengertian merupakan piranti semikonduktor dengan struktur p-n atau p-i-n
untuk mendeteksi cahaya. Fotodioda biasanya digunakan untuk mendeteksi cahaya.
Fotodioda adalah piranti semikonduktor yang mengandung sambungan p-n, dan
biasanya terdapat lapisan intrinsik antara lapisan n dan p. Piranti yang memiliki lapisan
intrinsik disebut p-i-n atau PIN fotodioda. Cahaya diserap di daerah penggambungan
atau daerah intrinsik menimbulkan pasangan elektron-hole, kebanyakan pasangan
tersebut menghasilkan arus yang berasal dari cahaya.
Fotodioda dapat dioperasikan dalam 2 mode yang berbeda:
1. Mode fotovoltaik: seperti solar sel, penyerapan pada fotodioda menghasilkan
tegangan yang dapat diukur. Bagaimanapun, tegangan yang dihasilkan dari
tenaga cahaya ini sedikit tidak linier, dan range perubahannya sangat kecil.
2. mode fotokonduktivitas :
disini, fotodioda diaplikasikan sebagai tegangan
revers (tegangan balik) dari sebuah dioda (yaitu tegangan pada arah tersebut
pada dioda tidak akan menhantarkan tanpa terkena cahaya) dan pengukuran
menghasilkan arus foto. ( hal ini juga bagus untuk mengaplikasikan tegangan
mendekati nol). Ketergantungan arus foto pada kekuatan cahaya dapat sangat
linier .
Karakteristik bahan fotodioda:
1. silikon (Si) : arus lemah saat gelap, kecepatan tinggi, sensitivitas yang bagus
antara 400 nm sampai 1000 nm ( terbaik antara 800 sampai 900 nm).
2. Germanium (Ge): arus tinggi saat gelap, kecepatan lambat, sensitivitas baik
antara 600 nm sampai 1800 nm (terbaik 1400 sampai 1500 nm).
11
3. Indium Gallium Arsenida (InGaAs): mahal, arus kecil saat gelap, kecepatan
tinggi sensitivitas baik pada jarak 800 sampai 1700nm (terbaik antara 1300
sampai 1600nm).
Gambar 2.4. Fotodioda
2.4. Sinar Infra Merah
Infra merah (infra red) ialah sinar elektromagnet yang panjang gelombangnya
lebih dari pada cahaya tampak yaitu diantara 700 nm. Sinar infra merah merupakan
cahaya yang tidak tampak. Jika dilihat dengan spektroskop cahaya maka radiasi cahaya
infra merah akan nampak pada spektrum elektromagnet dengan panjang gelombang
diatas panjang gelombang cahaya merah. Dengan panjang gelombang ini maka cahaya
infra merah ini akan tidak tampak oleh mata namun radisi panas yang ditimbulkannya
masih terasa / dideteksi.
Sifat-sifat cahaya infra merah :
1. Tidak tampak manusia
2. Tidak dapat menembus materi yang tidak tembus pandang
3. Dapat ditimbulkan oleh komponen yang menghasilkan panas.
12
Komunikasi Infra merah dilakukan dengan menggunakan dioda infra merah sebagai
pemancar dan modul penerima infra merah sebagai penerimanya. Untuk jarak yang
cukup jauh, kurang lebih tiga sampai lima meter, pancaran data infra merah harus
dimodulasikan terlebih dahulu untuk menghindari kerusakan data akibat noise
Saat ini telah dikenal berbagai macam gelombang elektromagnetik dengan
rentang panjang gelombang tertentu. Spektrum elektromagnetik merupakan kumpulan
spectrum dari berbagai panjang gelombang. Berdasarkan pembagian daerah panjang
gelombang, sinar inframerah dibagi dalam 3 daerah, yaitu:
1. Daerah inframerah dekat dengan panjang gelombang 0,75 micrometer –
2,5 micrometer.
2. Daerah inframerah pertengahan dengan panjang gelombang 2,5
micrometer – 50 micrometer.
3. Daerah inframerah jauh dengan panjang gelombang 50 micrometer –
1000 micrometer.
Spektrum sinar matahari terdiri dari sinar tampak dan sinar tidak tampak.
Dimana sinar tampak meliputi: merah, orange, kuning, hijau, biru, dan ungu. Sinar
yang tidak tampak antara lain: sinar ultraviolet, sinar – X, sinar gamma, sinar kosmik,
microwave, gelombang listrik dan sinar inframerah. Gelombang elektromagnetik
diantara sinar tampak dan sinar microwave dinamakan sinar inframerah, dengan
karakteristik adalah tidak kasat mata atau tidak terlihat, bersifat linier atau menyebar,
refraktif atau dapat dipantulkan dan dapat diserap oleh beberapa obyek.
Dibawah ini terdapat gambar berdasarkan pembagian panjang gelombang,
yaitu:
13
Tabel 1.1 Karakteristik Spektrum Elektromagnetik
Dari pembagian daerah spektrum elektromagnetik tersebut diatas, daerah
panjang gelombang yang digunakan pada alat spektrofotometer infra merah adalah
14
pada daerah infra merah pertengahan, yaitu pada panjang gelombang 2,5 μm – 50 μm
atau pada bilangan gelombang 4.000 – 200 cm.
Gelombang elektromagnetik diantara sinar tampak dan sinar microwave
dinamakan sinar inframerah, dengan karakteristik adalah tidak kasat mata atau tidak
terlihat, bersifat linier atau menyebar, refraktif atau dapat dipantulkan dan dapat diserap
oleh beberapa obyek.
Daerah N pada saat LED dibias maju . Selama perubahan energi ini, proton
akan dibangkitkan, sebagian akan diserap oleh bahan semikonduktor dan sebagian lagi
akan dipancarkan sebagai energi cahaya.
Infra merah yang digunakan sebagai transmisi data dalam artikel ini hanya
memanfaatkan pancaran cahaya infra merah. Jika LED infra merah memancarkan
cahaya berarti datanya dianggap 1, sedangkan jika LED infra merah tidak
memancarkan cahaya berarti datanya adalah 0.
2.5 Resistor
Resistor adalah komponen dasar elektronika yang digunakan untuk membatasi
jumlah arus yang menaglir dalam suatu rangkaian. Sesuai dengan namanya resistor
bersifat resistif dan umumnya terbuat dari bahan karbn. Dalam hukum ohm diketahui
bahwa resistansi berbanding terbalik dengan jumlah arus yang mengalir melaluinya.
Satuan dari resistansi dari resistor disebut Ohm atau dilambangkan dengan (Omega).
15
Gambar .2.5 Bentuk Fisik dan Lambang Resistor
Resistor umumnya berbentuk tabung dengan dua kaki tembaga dikiri dan kana.
Dibadan nya terdapat lingkaran berbentuk gelang kode warna yang memudahkan
pemakai mengenali besar resistansi tanpa mengukur besarannya tanpa menggunakan
Ohm meter.
2.6
Light Emitting Diode (LED)
LED merupakan komponen yang mampu mengeluarkan emisi cahaya .LED
merupakan produk temuan lain setelah diode.Strukturnya juga sama dengan
diode,tetapi belakangan ditemukan bahwa elektron yang menerjang sambungan P-N
juga melepaskan energy berupa energy panas dan energy cahaya. LED dibuat agar
lebih efisien jika mengeluarkan cahaya pada semikonduktor
16
Gambar .2.6 Bentuk dan Lambang LED
LED sering dipakai sebagai indikator yang masing masing warnanya biasa
memiliki arti yang berbeda. Sama hal nya yang sering dilihat dalam traffic light, LED
yang sudah dirangkai sebagai indikator yang mempunyai arti yang berbeda. Misalnya
LED merah menyala menandakan untuk berhenti, LED kuning menandakan untuk
berhati-hati, dan LED hijau menandakan untuk melaju.
2.7. Bahasa BASIC Menggunkan BASCOM-AVR
BASCOM-AVR adalah program BASIC Compiler berbasis Windows untuk
mikrokontroler keluarga AVR seperti ATmega, dan yang lainnya. BASCOM-AVR
merupakan program dengan bahasa tingkat tinggi BASIC yang dikembangkan dan
dikeluarkan oleh MCS Elektronika.
2.7.1 Karakteristik Dalam BASCOM
Dalam program BASCOM, karakter dasarnya terdiri atas karakter alphabel (AZ dan a-z), karakter numeric (0-9), dan karakter spesial (lihat tabel dibawah ini).
17
karakter
Nama
Blank
‘
Apostrophe
*
Asterisk (symbol perkalian)
+
Plus sign
,
Comma
-
Minus sign
.
Period (decimal point)
/
Slash (division symbol) will be handled as\
:
Colon
“
Double quotation mark
;
Semicolon
<
Less than
=
Equal sign (assignment symbol or relational operator)
>
Greater than
\
Backspace (integer or word division symbol)
Tabel 1.2 Karakter Spesial
18
2.7.2 Tipe Data
Stiap variabel dalam BASCOM memiliki tipe data yang menunjukkan daya
tampungannya. Hal ini berhubungan denga penggunaan memori mikrokontroler.
Berikut ini adalah tipe data pada BASCOM berikut keterangannya :
Tipe Data
Ukuran (byte)
Range
Bit
1/8
-
Byte
1
0 – 255
Integer
2
-32,768 - +32,767
Word
2
0 – 65535
Long
4
-214783648 - +2147483647
Single
4
-
String
hingga 254 byte
-
Tabel 1.3 Tipe Data BASCOM
19
2.7.3 Variabel
Variabel dalam sebuah pemrograman berfungsi sebagai tempat penyimpanan
atau penampungan data sementara, misalnya menampung hasil perhitungan,
menampung data hasil pembacaan register, dan lainnya. Variabel merupakan pointer
yang menunjukkan pada alamat memori fisik dan mikrokontroler.
Dalam BASCOM, ada beberapa aturan dalam penamaan sebuah variabl:
a. Nana variabel maksimum terdiri atas 32 karakter.
b. Karakter bisa berupa angka atau huruf.
c. Nama variabel harus dimula dengan huruf.
d. Variabel tidak boleh menggunkan katae. kata yang digunakan oleh BASCOM sebagai perintah, pernyataan, internal register,
dan nama operator (AND, OR, DIM, dan lain-lain)
Sebelum digunakan maka variabel harus dideklarasikan terlebih dahu. Dalam
BASCOM, ada beberapa cara untuk mendeklarasikan sebuah variabel. Cara pertama
adalah menggunakan pernyataan ‘DIM’ diikuti nama tipe datanya. Contohnya
pendeklarasian menggunkan DIM sebagai berikut:
Dim nama as byte
Dim tombol1 as integer
Dim tombol2 as word
Dim tombol3 as word
Dim tombol4 as word
Dim Kas as string*10
20
2.7.5
Aplikasi BASCOM dengan LCD
Salah satu kelebihan yang dimiliki oleh BASCOM adalah programnya yang
menyediakan rutin-rutin khusus untuk menampilkan karakter menggunakan LCD.
Bahkan kita pun dapat membuat karakter special dengan fasilitas LCD designer.
Antarmauka antara LCD dengan ATmega8535 menggunakan mode antarmuka 4 bit.
Selain lebih hemat I/O, mode demikian mempermudah proses pembuatan PCB-nya.
Program berikut akan menjalankan beberapa perintah berkenan dengan LCD
$regfile = “m8535.dat”
$crystal = 8000000
dim x as byte
config LCD = 16*2
Cursor off
do
X = 100
Cls
Lcd “namaku pay”
Lowerline
Lcd “Nilaiku selalu”; x
Wait 1
Cls
Lcd “<<<< Hebat >>>>”
For x=1 to 16
Shiftlcd left
next
For x=1 to 32
Shiftlcd right
21
Waitms 200
Next
x = 100
cls
lcd hex x
loop
penjelasan programnya sebagai berikut:
a. Dim x As Byte
Pernyataan di atas merupakan pendeklarasian variabel c/x dengan ukuran byte.
b. Config LCD = 16 * 2
Oleh karana itu konfigurasi pendeklarasikannya delisting program yang kita
buat seperti dikontrolkan diatas.
c. CLS
Perintah CLS berfungsi membersihkan atau mengosongkan tampilan LCD.
d. Lowerline
Perintah berfungsi memindahkan kursor ke baris bawah. Karena LCD yang
digunakan adalah LCD 2x16, maka LCD memilih 2 baris dan kolom.
22
e. X = 100
Lcd “namaku pay”
Lowerline
Lcd “Nilaiku selalu”; x
Ketika kita menjalankan perintah di atas, maka keluarannya adalah:
Nama pay
Nilaiku selalu
Contoh tersebut menunjukkan bahwa kita dapat menampilkan isi sebuah
variabel menggunakan LCD hanya dengan menulis.
f. Shift LCD left/right
Perintah digunakan untuk menggeser tampilan LCD ke kiri atau ke kanan
sebanyak 1 langkah. Perintah berguna untuk menampilkan kalimat yang
panjang dan membuat animasi LCD.
g. Lcdhex x
Perintah berfungsi mengirim isi sebuah variabel LCD dalam format
hexadecimal. Jika ingin menjalankan program
23
Download