• Tidak ada hasil yang ditemukan

BAB 2 LANDASAN TEORI. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan mikrokomputer,

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 2 LANDASAN TEORI. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan mikrokomputer,"

Copied!
24
0
0

Teks penuh

(1)

BAB 2

LANDASAN TEORI

2.1 Perangkat Keras

2.1.1 Mikrokontroler Atmega8535

Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan mikrokomputer, hadir memenuhi kebutuhan pasar (market need) dan teknologi baru. Sebagai teknologi baru, yaitu teknologi semi konduktor dengan kandungan transistor yang lebih banyak namun hanya membutuhkan ruang kecil serta dapat diproduksi secara massal (dalam jumlah banyak) sehingga harga menjadi lebih murah (dibandingkan microprocessor). Sebagai kebutuhan pasar, mikrokontroler hadir untuk memenuhi selera industri dan para konsumen akan kebutuhan dan keinginan alat-alat bantu dan mainan yang lebih canggih serta dalam bidang pendidikan.

Tidak seperti sistem 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. Perbedaan lainnya terletak pada

(2)

perbandingan RAM dan nya. Pada sistem komputer perbandingan RAM dan ROM-nya besar, artiROM-nya program-program pengguna disimpan dalam ruang RAM yang relatif besar, sedangkan rutin-rutin antar muka perangkat keras disimpan dalam ruang ROM yang kecil. Sedangkan Pada mikrokontroler, perbandingan ROM dan RAM-nya yang besar artinya program control disimpan dalam ROM yang ukurannya relatif lebih besar, sedangkan RAM digunakan sebagai tempat penyimpanan sederhana sementara, termasuk register-register yang digunakan pada Mikrokontroler yang bersangkutan.

Mikrokontroler saat ini sudah dikenal dan digunakan secara luas pada dunia industri. Banyak sekali penelitian atau proyek mahasiswa yang menggunakan berbagai versi mikrokontroler yang dapat dibeli dengan harga yang relatif murah. Hal ini dikarenakan produksi missal yang dilakukan oleh para produsen chip seperti Atmel, Maxim, dan Microchip. Mikrokontroler saat ini merupakan chip utama pada hamper setiap peralatan elektronika canggih.Alat-alat canggih pun sekarang ini pun sangat bergantung pada kemampuan mikrokontroller tersebut. Mikrokontroller AVR memiliki arsitektur RISC 8 bit,dimana semua instruksi dikemas dalam kode 16-bit (16-bit word) dan sebagian besar instruksi dieksekusi dalam 1 (satu) siklus clock,berbeda dengan instruksi MCS51 yang membutuhkan 12 siklus clock. Tentu saja itu terjadi karena kedua jenis mikrokontroller tersebut memiliki arsitektur yang berbeda. AVR berteknologi RISC (Reduced Instruction Set Computing),sedangkan seri MCS51 berteknologi CISC

(3)

(Complex Instruction Set omputing). Secara umum,AVR dapat dikelompokkan menjadi 4 kelas,yaitu keluarga ATtiny,keluarga AT90Sxx,keluarga ATmega, dan AT86RFxx. Pada dasar nya,yang membedakan masing-masing kelas adalah memori, peripheral, dan fungsinya. Dari segi arsitektur dan instruksi yang digunakan, mereka bisa dikatakan hamper sama.

Kapabilitas detail dari ATMega8535 adalah sebagai berikut :

1. Sistem mikroprosesor 8 bit berbasis RISC dengan kecepatan maksimal 16 MHz. 2. Kapabilitas memori flash 8 KB, SRAM sebesar 512 byte, dan EEPROM (

Electrically Erasable Programmable Read Only Memory) sebesar 512 byte. 3. ADC internal dengan fidelitas 10 bit sebanyak 8 channel.

4. Portal komunikasi serial (USART) dengan kecepatan maksimal 2,5 Mbps. 5. Enam pilihan mode sleep menghemat penggunaan daya listrik.

Konfigurasi pin ATMega8535 bisa dilihat pada gambar 4 dibawah ini. Dari gambar tersebut dapat dijelaskan secara fungsional konfigurasi pin ATMega8535 sebagai berikut:

1. VCC merupakan pin yang berfungsi sebagai pin masukan catu daya . 2. GND merupakan pin ground.

(4)

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, yaitu Timer/Counter, komparator analog, dan SPI.

5. Port C (PC0..PC7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu TWI, komparator analog, dan Timer Oscilator.

6. Port D (PD0..PD7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu komparator analog, interupsi eksternal, dan komunikasi serial.

7. RESET merupakan pin yang digunakan untuk me-reset mikrokontroller. 8. XTAL1 dan XTAL2 merupakan pin masukan clock eksternal.

9. AVCC merupakan pin masukan tegangan untuk ADC. 10. AREF merupakan pin masukan tegangan referensi ADC.

(5)

Gambar 2. 1 Pin ATMega8535

AVR ATMega8535 memiliki ruang pengalamatan memori data dan memori program yang terpisah. Memori data terbagi menjadi 3 bagian, yaitu 32 buah register umum, 64 buah register I/O, dan 512 byte SRAM Internal.

(6)

Register keperluan umum menempati space data pada alamat terbawah, yaitu $00 sampai $1F. Sementara itu, register khusus untuk menangani I/O dan control terhadap mikrokontroller menempati 64 alamat berikutnya, yaitu mulai dari $20 hingga $5F. Register tersebut merupakan register yang khusus digunakan untuk mengatur fungsi terhadap berbagai peripheral mikrokontroller, seperti control register, timer/conter, fungsi-fungsi I/O, dan sebagainya. Register khusus alamat memori secara lengkap dapat dilihat pada tabel 1.1 Alamat memori berikutnya digunakan untuk SRAM 512 byte, yaitu pada lokasi $60 sampai dengan $25F.

Memori program yang terletak dalam Flash PEROM tersusun dalam word atau 2 byte karena setiap instruksi memiliki lebar 16-bit atau 32-bit. AVR ATMega8535 memiliki 4 KByteX16-bit Flash PEROM dengan alamat mulai dari $000 sampai $FFF. AVR tersebut memiliki 12-bit Program Counter (PC) sehingga mampu mengalamati isi flash. Selain itu AVR ATMega8535 juga memiliki memori data berupa EEPROM 8-bit sebanyak 512 byte. Alamat EEPROM dimulai dari $000 sampai $1FF.

Status register adalah register berisi status yang dihasilkan pada setiap operasi yang dilakukan, ketika suatu instruksi dieksekusi. SREG merupakan bagian dari inti CPU mikrokontroler.

(7)

Bit harus diset untuk meng-enable interupsi. Setelah itu, dapat kita aktifkan interupsi mana yang akan digunakan dengan cara meng-enable bit kontrol register yang bersangkutan secara individu. Bit akan di-clear apabila terjadi suatu interupsi yang dipicu oleh hardware, dan bit tidak akan mengizinkan terjadinya interupsi, serta akan diset kembali oleh instruksi RETI.

2. Bit 6-T:Bit Copy Storage

Instruksi BLD dan BST menggunakan bit-T sebagai sumber atau tujuan dalam operasi bit. Suatu bit dalam sebuah register GPR dapat disalin ke bit T menggunakan instruksi BST, dan sebaliknya bit-T dapat disalin kembali ke suatu bit dalam register GPR menggunakan instruksi BLD.

3. Bit 5-H: Half Carry Flag 4. Bit 4-S: Sign Bit

Bit-S merupakan hasil operasi EOR antara flag-N (negative) dan flag V (komplemen dua overflow).

5. Bit 3-V: Two’s Complement Overflow Flag Bit berguna untuk mendukung operasi aritmatika. 6. Bit 2-N: Negative Flag

Apabila suatu operasi menghasilkan bilangan negatif, maka flag-N akan diset. 7. Bit 1-Z: Zero Flag

(8)

8. Bit 0-C: Carry Flag

Apabila suatu operasi menghasilkan carry, maka bit akan diset.

Port I/O pada mikrokontroller ATmega8535 dapat difungsikan sebagai input dan juga sebagai output dengan keluaran high atau low.Untuk mengatur fungsi port I/O sebagai input ataupun output, perlu dilakukan setting pada DDR dan port. Logika port I/O dapat diubah-ubah dalam program secara byte atau hanya bit tertentu. Mengubah sebuah keluaran bit I/O dapat dilakukan menggunakan perintah cbi (clear bit I/O)untuk menghasilkan output low atau perintah sbi (set bit I/O)untuk menghasilkan output high. Pengubahan secara byte dilakukan dengan perintah in atau out yang menggunakan register bantu.

I/O merupakan bagian yang paling menarik dan penting untuk diamati karena I/O merupakan bagian yang bersangkutan dengan komunikasi mikrokontroller dengan dunia luar. Selain port I/O, bagian ini juga menyediakan informasi mengenai berbagai peripheral mikrokontroller yang lain, seperti ADC, EEPROM, UART, dan Timer.

Komponen yang tercakup dalam workspace I/O meliputi berbagai register berikut :

(9)

2. ANALOG_COMPARATOR; register: ACSR

3. CPU; register: SREG, SPH, SPL, MCUCR, MCUCSR, OSCCAL, SFIOR, SPMCR

4. EEPROM; register: EEARH, EEARL, EEDR, EECR

5. External_Interrupt; register: GICR, GIFR, MCUCR, MCUCSR 6. PORTA; register: PORTA, DDRA, dan PINA

7. PORTB; register: PORTB, DDRB, dan PINB 8. PORTC; register: PORTC, DDRC, dan PINC 9. PORTD; register: PORTD,DDRD, dan PIND 10. SPI; register: SPDR, SPSR, SPCR

11. TIMER_COUNTER_0; register: TCCR0, TCNT0, OCR0, TIMSK, TIFR, SFIOR 12. TIMER _COUNTER_1; register: TIMSK, TIFR, TCCR1A, TCCR1B, TCNT1H,

TCNT1L, OCR1AH, OCR1AL, OCR1BL, ICR1H, 1CR1L

13. TIMER_COUNTER_2; register: TIMSK, TIFR, TCRR2, TCNT2, OCR2, ASSR, SFIOR

14. TWI; register: TWBR, TWCR, TWSR, TWDR, TWAR

15. USART; register: UDR, UCSRA, UCSRB, UCSRC, UBRRH, UBRRL 16. WATCDOG; register: WDTCR

(10)

Adapun komponen-komponen yang dapat diamati melalui I/O pada workspace sebagai berikut : 1. Isi register - R0 sampai dengan R15 - R16 sampai dengan R13 2. Processor - Stack pointer - Program counter - Cycle pointer - X_register - Y_register - Z_register - Frequency - Stop Watch 3. I/O AVR Instruksi I/O

4. in; membaca data I/O Port atau internal peripheral register{Timers, UART, dsb}ke dalam register.

(11)

6. Idi (load immediate); untuk menulis konstanta ke register sebelum konstanta itu dituliskan ke I/O port.

7. Sbi (set bit in I/O); untuk membuat logika high satu bit I/O register. 8. Cbi ( clear bit in I/O); untuk membuat logika low satu bit I/O register.

9. Sbic (skip if bit in I/O is cleared); untuk mengecek apakah bit I/O register clear.Jika ya, skip satu perintah dibawahnya.

10. Sbis (skip if bit in I/O is set); untuk mengecek apakah bit I/O register set. Jika ya, skip satu perintah dibawahnya.

Data yang dipakai dalam mikrokontroller ATmega8535 dipresentasikan dalam sistem bilangan biner, desimal, dan bilangan heksadesimal. Data yang terdapat di mikrokontroller dapat diolah dengan berbagai operasi aritmatik (penjumlahan, pengurangan, dan perkalian)maupun operasi nalar (AND, OR, dan EOR /eksklusif OR).

AVR ATmega8535 memiliki tiga buah timer, yaitu: 1. Timer/counter 0 (8 bit)

2. Timer/ counter 1 (16 bit) 3. Timer/counter 2 (8 bit)

Karena ATmega8535 memiliki 8 saluran ADC maka untuk keperluan konversi sinyal analog menjadi data digital yang berasal dari sensor dapat langsung dilakukan prosesor utama. Beberapa karakteristik ADC internal ATmega8535 adalah :

(12)

1. Mudah dalam pengoperasian. 2. Resolusi 10 bit.

3. Memiliki 8 masukan analog. 4. Konversi pada saat CPU sleep. 5. Interrupt waktu konversi selesai.

2.1.2. Ketel Uap

Uap (uap air) yaitu gas yang timbul akibat perubahan fase air cair menjadi uap (gas) dengan cara pendidihan (boiling).Uap air tersebut dapat dimanfaatkan sebagai penggerak turbin,untuk membangkitkan tenaga listrik .

Uap air yang digunakan bukan sekedar uap air saja,tetapi uap air bertekanan tinggi yang dihasilkan dari boiler khusus.Berangkat dari hal tersebut penulis ingin membuat miniature boiler sederhana dengan memamfaatkan mikrokontroler sebagai pusat kendali, sensor suhu LM 35 untuk memantau suhu pada boiler,LCD sebagai display,heater listrik sebagai pemanas air,turbin miniature dari baling-baling kecil dan dinamo DC kecil sebagai miniature dari generator.

(13)

Ketel uap pada dasarnya terdiri dari bumbung (drum) yang terttutup dari ujung pangkalnya dan dalam perkembangannya dilengkapi dengan pipa api maupun pipa air.Jadi untuk menghadapi perkembangan turbin uap tentu perlu sarana pembangkit tenaga uap (baik dalam bentuk steam boiler maupur dalam bentuk lain).

Bagian pemanas lanjut (superheater) ialah bidang pemanas (uap satu rasi) untuk menaikkan temperaturnya sehingga menaikkan energi potensial uap.Pemanas lanjut sangat penting untuk produksi uap panas lanjut bagi turbin uap,karena uap panas lanjut (adi panas)adalah uap kering,syarat yang diperlukan dalam operasi turbin.Biasanya pemanas lanjut lanjut ini diklasifikasikan sebagai pemanas lanjut konveksi,pemanas lanjut radiasi atau pemanas lanjut kombinasi,tergantung pada bagaimana cara transfer energi termal.Biasanya diperlukan pula bahwa temperatur akhir uap tetap konstan meskipun beban ketel berberda.

2.1.3. Sensor Suhu IC LM35

Untuk mendeteksi suhu digunakan sebuah sensor suhu LM 35 yang dapat dikalibrasikan langsung dalam C, LM 35 ini difungsikan sebagai basic temperature sensor seperti pada gambar 2.1

(14)

Gambar 2.2 LM 35 basic temperature sensor

IC LM 35 sebagai sensor suhu yang teliti dan terkemas dalam bentuk Integrated Circuit (IC), dimana output tegangan keluaran sangat linear berpadanan dengan perubahan suhu. Sensor ini berfungsi sebagai pengubah dari besaran fisis suhu ke besaran tegangan yang memiliki koefisien sebesar 10 mV /°C yang berarti bahwa kenaikan suhu 1° C maka akan terjadi kenaikan tegangan sebesar 10 mV.

IC LM 35 ini tidak memerlukan pengkalibrasian atau penyetelan dari luar karena ketelitiannya sampai lebih kurang seperempat derajat celcius pada temperature ruang. Jangka sensor mulai dari – 55°C sampai dengan 150°C, IC LM35 penggunaannya sangat mudah, difungsikan sebagai kontrol dari indicator tampilan catu daya terbelah. IC LM 35 dapat dialiri arus 60 m A dari supplay sehingga panas yang ditimbulkan sendiri sangat rendah kurang dari 0 ° C di dalam suhu ruangan.

LM 35 ialah sensor temperatur paling banyak digunakan untukpraktek, karena selain harganya cukup murah, linearitasnya lumayan bagus. LM35 tidak membutuhkan kalibrasi eksternal yang menyediakan akurasi ±¼°C pada temperatur ruangan dan ±¾°C pada kisaran -55 to +150°C. LM35 dimaksudkan untuk beroperasi pada -55° hingga +150°C, sedangkan LM35C pada -40°C hingga +110°C, dan LM35D pada kisran

(15)

0-100°C. LM35D juga tersedia pada paket 8 kaki dan paket TO-220. Sensor LM35 umunya akan naik sebesar 10mV setiap kenaikan 1°C (300mV pada 30 °C).

Gambar 2. 3 Bentuk Fisik LM 35

Gambar 2.4 Rangkaian pengukur suhu

2.2 Perangkat Lunak

Perangkat lunak merupakan program yang meliputi bahasa pemrograman BASCOM-8051 untuk pemrograman mikrokontroler ATmega 8535 dan Eagle untuk perancangan gambar skematik dari rangkaian.

(16)

2.2.1. Bahasa BASIC Menggunakan BASCOM-8051

BASCOM-8051 adalah program BASIC compiler berbasis Windows untuk mikrokontroler keluarga 8051 seperti AT89C51, AT89C2051, dan yang lainnya. BASCOM-8051 merupakan pemrograman dengan bahasa tingkat tinggi BASIC yang dikembangkan dan dikeluarkan oleh MCS Elektronik.

Kita akan membahas penggunaan karakter, tipe data, variable, konstanta, operasi-operasi aritmatika dan logika, array, dan control program.

2.2.2. Karakter dalam BASCOM

Dalam program BASCOM, karakter dasarnya terdiri atas karakter alphabet (A-Z dan a-z), karakter numeric (0-9), dan karakter special (lihat tabel 2.1).

Tabel 2.1 Karakter Spesial

karakter Nama

Blank ‘ Apostrophe

* Asterisk (symbol perkalian) + Plus sign

, Comma

- Minus sign

. Period (decimal point)

(17)

: Colon

“ Double quotation mark ; Semicolon

< Less than

= Equal sign (assignment symbol or relational operator) > Greater than

\ Backspace (integer or word division symbol)

2.2.3 Operasi-operasi Dalam BASCOM

Pada bagian ini akan dibahas tentang cara menggabungkan, memodifikasi, membandingkan, atau mendapatkan informasi tentang sebuah pernyataan dengan menggunakan operator-operator yang tersedia di BASCOM dan bagaimana sebuah pernyataan terbentuk dan dihasilkan dari operator-operator berikut:

a. Operator Aritmatika

Operator digunakan dalam perhitungan. Operator aritmatika meliputi + (tambah), - (kurang), / (bagi), dan * (kali).

b. Operator Relasi

Operator berfungsi membandingkan nilai sebuah angka. Hasilnya dapat digunakan untuk membuat keputusan sesuai dengan program yang kita buat. Operator relasi meliputi:

(18)

Tabel 2.2 Tabel Operator Relasi

Operator Relasi Pernyataan

= Sama dengan X = Y

<> Tidak sama dengan X <> Y

< Lebih kecil dari X < Y

> Lebih besar dari X > Y

<= Lebih kecil atau sama dengan X <= Y >= Lebih besar atau sama dengan X >= Y

c. Operator Logika

Operator digunakan untuk menguji sebuah kondisi atau memanipulasi bit dan operasi bolean. Dalam BASCOM, ada empat buah operator logika, yaitu AND, OR, NOT, dan XOR.

Operator logika bias pula digunakan untuk menguji sebuah byte dengan pola bit tertentu, sebagai cintih:

Dim A As Byte A = 63 And 19 PPRINT A A = 10 or 9 PRTINT A Output 16 11 d. Operator Fungsi

(19)

2.2.4. Aplikasi dengan LCD (liquid crystal display)

Kegunaan LCD banyak sekali dalam perancangan suatu sistem dengan menggunakan mikrokontroler. LCD dapat berfungsi untuk menampilkan suatu nilai hasil sensor, menampilkan teks, atau menampilkan menu pada aplikasi mikrokontroler. Pada bab ini akan dibahas antarmuka LCD dengan mikrokontroler ATMega8535. Adapun standarisasi yang cukup populer digunakan banyak vendor LCD, yaitu HD44780U, yang memiliki chip kontroler Hitachi 44780. LCD bertipe ini memungkinkan pemrogram untuk mengoperasikan komunikasi data secara 8 bit atau 4 bit. Jika menggunakan jalur data 4 bit akan ada 7 jalur data (3 untuk jalur kontrol & 4 untuk jalur data). Jika menggunakan jalur data 8 bit maka akan ada 11 jalur data (3 untuk jalur kontrol & 8 untuk jalur data). Tiga jalur kontrol ke LCD ini adalah EN (Enable), RS (Register Select) dan R/W (Read/Write). Berikut adalah susunan umum pin LCD bertipe 44780 :

Tabel 2.3 Susunan pin LCD tipe 44780 Pin Deskripsi

1 Ground 2 Vcc

3 Pengatur kontras

(20)

5 “R/W” Read/Write LCD Registers 6 “EN” Enable clock

7-14 Data I/O Pins

Urutan pin (1), umumnya, dimulai dari sebelah kiri (terletak di pojok kiri atas) dan untuk LCD yang memiliki 16 pin, 2 pin terakhir (15 & 16) adalah anoda dan katoda untuk back-lighting. Berikut adalah contoh LCD (2×16) yang umum digunakan :

Gambar 2.5 LCD 2x16

Sebagaimana terlihat pada kolom deskripsi, interface LCD merupakan sebuah parallel bus, dimana hal ini sangat memudahkan dan sangat cepat dalam pembacaan dan penulisan data dari atau ke LCD. Kode ASCII yang ditampilkan sepanjang 8 bit dikirim ke LCD secara 4 atau 8 bit pada satu waktu. Jika mode 4 bit yang digunakan, maka 2 nibble data dikirim untuk membuat sepenuhnya 8 bit (pertama dikirim 4 bit MSB lalu 4

(21)

bit LSB dengan pulsa clock EN setiap nibblenya). Jalur kontrol EN digunakan untuk memberitahu LCD bahwa mikrokontroller mengirimkan data ke LCD. Untuk mengirim data ke LCD program harus menset EN ke kondisi high (1) dan kemudian menset dua jalur kontrol lainnya (RS dan R/W) atau juga mengirimkan data ke jalur data bus. Saat jalur lainnya sudah siap, EN harus diset ke 0 dan tunggu beberapa saat (tergantung pada datasheet LCD), dan set EN kembali ke high (1). Ketika jalur RS berada dalam kondisi low (0), data yang dikirimkan ke LCD dianggap sebagai sebuah perintah atau instruksi khusus (seperti bersihkan layar, posisi kursor dll). Ketika RS dalam kondisi high atau 1, data yang dikirimkan adalah data ASCII yang akan ditampilkan dilayar. Misal, untuk menampilkan huruf pada layar maka RS harus diset ke 1. Jalur kontrol R/W harus berada dalam kondisi low (0) saat informasi pada data bus akan dituliskan ke LCD. Apabila R/W berada dalam kondisi high (1), maka program akan melakukan query (pembacaan) data dari LCD. Instruksi pembacaan hanya satu, yaitu Get LCD status (membaca status LCD), lainnya merupakan instruksi penulisan. Jadi hampir setiap aplikasi yang menggunakan LCD, R/W selalu diset ke 0. Jalur data dapat terdiri 4 atau 8 jalur (tergantung mode yang dipilih pengguna), mereka dinamakan DB0, DB1, DB2, DB3, DB4, DB5, DB6 dan DB7. Mengirim data secara parallel baik 4 atau 8 bit merupakan 2 mode operasi primer. Untuk membuat sebuah aplikasi interface LCD, menentukan mode operasi merupakan hal yang paling penting. Mode 8 bit sangat baik digunakan ketika kecepatan menjadi keutamaan dalam sebuah aplikasi dan setidaknya minimal tersedia 11 pin I/O (3 pin untuk kontrol, 8

(22)

pin untuk data). Sedangkan mode 4 bit minimal hanya membutuhkan 7 bit (3 pin untuk kontrol, 4 untuk data). Bit ini digunakan untuk memilih apakah data atau instruksi yang akan ditransfer antara mikrokontroller dan LCD. Jika bit ini di set (RS = 1), maka byte pada posisi kursor LCD saat itu dapat dibaca atau ditulis. Jika bit ini di reset (RS = 0), bisa merupakan instruksi yang dikirim ke LCD atau status eksekusi dari instruksi terakhir yang dibaca Pada penulisan tugas akhir ini LCD yang digunakan adalah jenis LCD M1632. LCD M1632 merupakan modul LCD dengan tampilan 16 x 2 baris dengan konsumsi daya rendah. Modul tersebut dilengkapi dengan mikrokontroler yang didesain khusus untukmengendalikan LCD.

Salah satu kelebihan yang dimiliki oleh compiler BASCOM adalah program yang menyediakan rutin-rutin khusus untuk menampilkan karakter menggunakan LCD. Bahkan, kita pun dapat membuat karakter special dengan fasilitas LCD designer.

Antar muka antara LCD dengan AT89S52 menggunakan mode antarmuka 4 bit. Selain lebih menghemat I/O, mode demikianpun mempermudah proses pembuatan PCB-nya. Program berikut akan menjalankan beberapa perintah yang berkenaan dengan LCD.

$regfile = “8052.dat” $crystal = 12000000 dim x as byte

config LCD = 16*2 Cursor off

(23)

do X = 100 Cls Lcd “namaku Satih” 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 Waitms 200 next x = 100 cls lcd hex x loop

Penjelasan programnya sebagai berikut: a. Dim x As Byte

Pernyataan di atas merupakan pendeklarasian variable x dengan ukuran byte. b. Config LCD = 16*2

Oleh karena itu, konfigurasi yang dapat kita lakukan adalah mendeklarasikannya dilisting program yang kita buat seperti dikontrolkan di atas.

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 memiliki 2 baris dan kolom.

(24)

e. X = 100

Lcd “namaku Satih” Lowerline

Lcd “Nilaiku selalu”; x

Ketika kita menjalankan perintah di atas, maka keluarannya adalah: Namaku Satih

Nilaiku selalu 100

Contoh di atas menunjukkan bahwa kita dapat menampilkan isi sebuah variabel menggunakan LCD hanya dengan menulis:

f. ShiftLCD left/right

g. Perintah digunakan untuk menggeser tampilan LCD ke kiri atau ke kanan sebanyak 1 langkah. Perintah berguna untuk menampilkan kalimat yang panjang dan mebuat animasi di LCD.

h. Lcdhex x

Perintah berfungsi mengirim isi sebuah variabel ke LCD dalam format hexadecimal. Jika kita menjalankan program, maka hasilnya 64.

Gambar

Gambar 2. 1 Pin ATMega8535
Gambar 2.4  Rangkaian  pengukur suhu
Tabel 2.1 Karakter Spesial
Tabel 2.2  Tabel Operator Relasi
+3

Referensi

Dokumen terkait

Pada proses propilen, propilen dioksidasi oleh asam nitrat melalui 2 tahap: Tahap pertama propilen direaksikan dengan NO 2 cair untuk menghasilkan produk antara

Hal tersebut menunjukkan terdapat hubungan antara kadar TNF-  dengan skor PASI, makin tinggi TNF-  makin bertambah pula derajat keparahannya 11 , tetapi beberapa

Pertimbangan hakim menerima alasan kasasi yang diajukan oleh terdakwa dalam perkara tindak pidana narkotika yang diputus oleh Mahkamah Agung dengan Nomor Putusan

Dengan ini saya menyatakan bahwa skripsi yang berjudul “Karakteristik Habitat Tempat Bersarang Lebah (Trigona Sp) Di Desa Pelat Kecamatan Untir Iwes Kabupaten Sumbawa

Orang, proses, atau sistem lain yanng berinteraksi dengan sistem informasi yang akan dibuat diluar sistem informasi yang akan dibuat itu sendiri, jadi walaupun

tentang faktor-faktor risiko yang dapat diubah terhadap kejadian katarak pada DM tipe 2 yaitu kadar trigliserida ≥150 mg/dl; semakin lama mengidap DM, maka risiko

Penelitian ini bertujuan untuk mengetahui hubungan motivasi kerja perawat terdahap kinerja perawat di Rumah Sakit Umum Daerah Ungaran dan mengidentifikasi

Dengan ini saya menyatakan bahwa Tugas Akhir Pemberdayaan dan Pengembangan Komunitas Korban Tsunami Melalui Lembaga Keuangan Mikro (Gampong Keude Simpang Jalan Kecamatan