• Tidak ada hasil yang ditemukan

Rtc (Real Time Clock) Ds1307 Sebagai Pengatur Waktu Pada Sistem Traffic Light Adaptif

N/A
N/A
Protected

Academic year: 2017

Membagikan "Rtc (Real Time Clock) Ds1307 Sebagai Pengatur Waktu Pada Sistem Traffic Light Adaptif"

Copied!
29
0
0

Teks penuh

(1)

BAB 2

LANDASAN TEORI

Dalam bab ini penulis akan membahas tentang komponen - komponen yang

digunakan dalam seluruh unit alat ini. Agar pembahasan tidak melebar dan

menyimpang dari topik utama laporan ini, maka setiap komponen hanya di bahas

sesuai fungsi nya pada masing- masing unit nya.

2.1 Mikrokontroler

Dalam merancang aplikasi elektronika digital dibutuhkan sebuah alat/komponen

yang dapat menghitung, mengingat, dan mengambil pilihan dan digunakan

sebagai otaknya. Kemampuan ini dimiliki oleh sebuah komputer, namun tidaklah

efisien jika harus menggunakan komputer hanya untuk keperluan tersebut. Untuk

itu komputer dapat digantikan dengan sebuah mikrokontroler. Mikrokontroler

sebenarnya adalah pengembangan dari mikroprosesor, namun dirancang khusus

untuk keperluan instrumentasi sederhana.

2.1.1 Mikrokontroler ATMega8

Mikrokontroler dapat dianalogikan sebagai sebuah sistem komputer yang dikemas

(2)

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 mikrokontroler

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.1.2 Arsitektur Mikrokontroler ATMega8

Mikrokontroller jenis 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 kemudian

dikembangkan lebih lanjut oleh Atmel. Seri pertama AVR yang dikeluarkan

adalah mikrokontroler 8 bit AT90S8515, dengan konfigurasi pin yang sama

dengan mikrokontroler 8051, termasuk address dan data bus yang termultipleksi.

Mikrokontroler AVR menggunakan teknologi RISC dimana set

instruksinya dikurangi dari segi ukurannya dan kompleksitas mode

(3)

mengunakan kode mesin dan bahasa assembly. Untuk mempermudah dalam

pemograman pada desainer komputer kemudian mengembangkan bahasa

pemograman tingkat tinggi yang mudah dipahami manusia. Namun akibatnya,

intruksi yang ada semakin kompleks dan membutuhkan lebih banyak memori.

Dan tentu saja siklus eksekusi instruksinya menjadi semakin lama.

Dalam AVR dengan arsitektur RISC 8 bit, semua instruksi berukuran 16

bit sebagian besar dieksekusi dalam 1 siklus clock. Berbeda dengan MCS-51 yang

instruksinya bervariasi antara 8 bit sampai dengan 32 bit dan dieksekusi selama 1

sampai 4 siklus mesin membutuhkan 12 periode clock. Dalam pengembangannya

, AVR dibagi menjadi beberapa varian yaitu AT908xx, ATMega, AT86RFxx dan

ATTiny. Pada dasarnya yang membedakan masing-masing varian adalah

kapasitas memori dan beberapa fitur tambahan saja. Mikrokontroler ATMega8

merupakan mikrokontroler keluarga AVR 8bit.

Gambar 2.1 Mikrokontroler ATMega8

(4)

dibandingkan dengan beberapa mikrokontroler disebutkan diatas. Namun untuk

segi memori dan periperial lainnya ATMega8 tidak kalah dengan yang lainnya

karena ukuran memori dan periperialnya relatif sama dengan ATMega8535,

ATMega32, dll, hanya saja jumlah GPIO lebih sedikit dibandingkan

mikrokontroler yang lainnya.

2.1.3 Fitur Mikrokontroler ATMega8

Pada mikrokontroler ATMega8 ini terdapat beberapa fitur didalamnya diantaranya

ialah fitur perangkat dan fitur spesial. Adapun yang dimaksud dari kedua fitur

tersebut ialah:

2.1.3.1 Fitur Perangkat

1. Mempunyai dua buah Timer/Counter (pencacah) 8-bit dengan Prescale

yang terpisah (berbeda-beda satu dengan yang lain), juga terdapat mode

pembanding (Compare).

2. Memiliki satu buah Timer/Counter (pencacah) 16bit dengan Prescale yang

terpisah, mode pembanding dan mode Capture.

3. Mencacah (counter) secara berkala (real time).

4. Mempunyai tiga saluran (channel) PWM (Pulse Width Modulation).

5. Terdapat delapan saluran ADC (Analog to Digital Converter) pada

kemasan/ paket TQFP (Thin Quad Flat Pack) dan QFN (Quad Flat

No-lead)/ MLF (Micro Lead Frame) dan bisa mencapai 10-bit dengan akurasi

yang tinggi.

6. Enam saluran ADC pada kemasan PDIP (Plastic Dual Inline Package),

(5)

7. Memiliki antarmuka serial dua kabel (two-wire) berorientasi byte.

8. Dapat diprogram dengan komunikasi Serial USART (Universal

Synchronous and Asynchronous serial Receiver and Transmitter).

9. Memiliki antarmuka SPI (Serial Peripheral Interface) dengan

tingkat Master/ Slave.

10. Mempunyai Watchdog (monitoring) Timer dengan osilator yang terpisah

di dalam Chip.

11. Memiliki Analog Comparator (pembanding analog) di dalam Chip.

2.1.3.2 Fitur Spesial

1. Terdapat Reset dengan Power-on, dan pendeteksi brown-out

Brown-out adalah kondisi ketidakstabilan power supply (sumber

tegangan) seperti kadang menyala, kadang tidak, kadang tegangan naik,

kadang turun, tetapi dengan waktu yang cepat sehingga kadang kita tidak

menyadarinya. Biasanya jika terdapat peristira ini lampu akan redup,

bahkan bisa hidup dan mati. Peristiwa ini bisa merusak perangkat jika

dibiarkan terus menerus.

2. Memiliki kalibrasi untuk osilator internal

Disamping menduukung osilator external, ATmega8 juga memiliki

(6)

4. Terdapat lima mode sleep, yaitu:

 Idle

 ADC Noise Reduction

 Power-safer

 Power-down

 Standby

2.1.4 Konfigurasi Pin Pada Mikrokontroler ATMega8

Gambar 2.2 Konfigurasi Pin Mikrokontroler ATMega8

Konfigurasi Mikrokontroler ATMega8 dapat dilihat digambar 2.1 diatas,

Mikrokontroler ATMega8 memiliki 28 pin yang terdiri dari Input/Output, Vcc,

GND,dan AREF. Secara fungsional konfigurasi pin-pin tersebut dapat dijelaskan

sebagai berikut:

1. VCC merupakan pin yang berfungsi sebagai pin masukan atau catu daya.

(7)

3. Port B (PB0 – PB7) merupakan jalur 8 bit yang difungsikan sebagai

input/output.

4. Port C (PC0 –PC6) merupakan jalur data 7 bit yang difungsikan sebagai

input/output data digital.

5. Port D (PD0 – PD7) merupakan jalur data 8bit yang masing-masing

pin-nya juga dapat difungsikan sebagai input/output.

6. AREF merupakan pin masukan tegangan referensi ADC.

2.1.5 Deskripsi Pin-pin Pada Mikrokontroler ATMega8

Mikrokontroler ATMega8 memiliki 3 buah PORT utama yaitu PORTB, PORTC,

dan PORTD dengan total pin input/output sebanyak 23 pin. PORT tersebut dapat

difungsikan sebagai input/output digital atau difungsikan sebagai periperial

lainnya.

1. PORT B

PORTB merupakan jalur data 8bit yang dapat difungsikan sebagai input/output.

Selain itu PORTB juga dapat memiliki fungsi alternatif seperti yang tertera pada

tabel di bawah ini:

(8)

- ICP1(PB0), berfungsi sebagai Timer Counter 1 input capture pin.

- OC1A(PB1), OC1B(PB2) dan OC2(PB3) dapat difungsikan sebagai keluaran PWM (pulse width modulation).

- MOSI(PB3), MISO(PB4), SCK(PB5), SS(PB2) merupakan jalur komunikasi SPI. Selain itu pin ini juga berfungsi sebagai jalur

pemograman serial (ISP). TOSC1(PB6) dan TOSC2(PB7) dapat difungsikan sebagai sumber clock external untuk timer.

- XTAL1(PB6) dan XTAL2(PB7) merupakan sumber clock utama mikrokontroler. Perlu diketahui, jika kita menggunakan clock internal

(tanpa crystal) maka PB6 dan PB7 dapat difungsikan sebagai input/output

digital biasa. Namun jika kita menggunakan clock dari crystal external

maka PB6 dan PB7 tidak dapat kita gunakan sebagai input/output.

2. PORT C

PORTC merupakan jalur data 7bit yang dapat difungsikan sebagai

input/output digital. Fungsi alternatif PORTC antara lain sebagai berikut:

(9)

- ADC 6 channel (PC0,PC1,PC2,PC3,PC4,PC5) dengan resolusi sebesar 10bit. ADC dapat kita gunakan untuk mengubah input yang berupa

tegangan analog menjadi data digital.

- I2C (SDA dan SDL) merupakan salah satu fitur yang terdapat pada PORTC. I2C digunakan untuk komunikasi dengan sensor atau device lain

yang memiliki komunikasi data tipe I2C seperti sensor kompas,

accelerometer nunchuck, dll.

- RESET merupakan salah satu pin penting di mikrokontroler, RESET dapat digunakan untuk merestart program. Pada ATMega8 pin RESET

digabungkan dengan salah satu pin IO (PC6). Secara default PC6 ini

didisable dan diganti menjadi pin RESET. Kita dapat mendisable fungsi

pin RESET tersebut untuk menjadikan PC6 sebagai pin input/output. Kita

dapat melakukan konfigurasi di fusebit untuk melakukan pengaturannya,

namun saya sarankan untuk tidak merubahnya karena jika pin RESET di

disable maka kita tidak dapat melakukan pemograman melalui jalur ISP.

3. PORT D

PORTD merupakan jalur data 8bit yang masing-masing pin-nya juga dapat

difungsikan sebagai input/output. Sama seperti PORTB dan PORTC, PORTD

(10)

Tabel 2.3 Fungsi Alternatif PORT D pada setiap pin

- USART (TXD dan RXD) merupakan jalur data komunikasi serial dengan level sinyal TTL. Pin TXD berfungsi untuk mengirimkan data serial,

sedangkan RXD kebalikannya yaitu sebagai pin yang berfungsi untuk

menerima data serial.

- Interrupt (INT0 dan INT1) merupakan pin dengan fungsi khusus sebagai interupsi hardware. Interupsi biasanya digunakan sebagai selaan dari

program, misalkan pada saat program berjalan kemudian terjadi interupsi

hardware/software maka program utama akan berhenti dan akan

menjalankan program interupsi.

- XCK dapat difungsikan sebagai sumber clock external untuk USART, namun kita juga dapat memanfaatkan clock dari CPU, sehingga tidak perlu

membutuhkan external clock.

- T0 dan T1 berfungsi sebagai masukan counter external untuk timer 1 dan timer 0.

(11)

2.1.6 Kebutuhan Clock

Sumber clock pada ATMega8 secara garis besar ada 2 buah, yaitu clock internal

dan clock external. Untuk clock internal maksimum clock yang dapat digunakan

adalah 8MHz, sedangkan untuk clock external maksimum clock yang dapat

digunakan adalah sebesar 16MHz. Lebih jelasnya mengenai berbagai macam

sumber clock dapat dilihat pada tabel di bawah ini

Tabel 2.4 Jenis-jenis sumber Clock

Untuk sumber clock external kita dapat menggunakan RC osilator atau

crystal osilator. Namun biasanya yang lebih banyak digunakan adalah osilator tipe

crystal.

2.2 RTC (Real Time Clock) DS1307

(12)

baik untuk 31 hari maupun kurang. Jam bekerja dalam format 24 jam atau 12 jam

dengan indikator AM/PM. DS1307 dapat mendeteksi secara otomatis catu

dayanya, jika catu daya ke sistem mati, maka secara otomatis DS1307 akan

mengambil catu daya dari baterai (jika dipasang). DS1307 memiliki akurasi

(kadaluarsa) hingga tahun 2100.

Pada sistem komputer chip RTC sering dijumpai pada motherboard PC

(biasanya terletak dekat chip BIOS). Semua komputer menggunakan RTC karena

berfungsi menyimpan informasi waktu terkini dari komputer yang bersangkutan.

RTC dilengkapi dengan baterai sebagai pensuplai daya pada chip, sehingga jam

akan tetap up-to-date walaupun komputer dimatikan. RTC dinilai cukup akurat

sebagai pewaktu (timer) karena menggunakan osilator kristal. Ada beberapa jenis

RTC, yaitu : DS1307, DS1302, DS12C887, DS3234.

Gambar 2.3 RTC (Real Time Clock) DS1307

2.2.1 Konfigurasi pin RTC DS1307

Adapun konfigurasi dari setiap pin pada RTC DS1307 adalah:

(13)

menulis maupun membaca data. Ketika baterai disambungkan pada IC dan

nilai Vcc dibawah 1.25 Vbat. Proses penulisan dan pembacaan data tidak

dapat dilakukan, namun proses pencacahan waktu tetap berjalan dan tidak

terpengaruh oleh peenurunan Vcc, karena IC akan mengambil sumber

tegangan dari Vbat.

2. Vbat : Digunakan sebagai masukan baterai lithium 3 volt atau sumber

energy yang lain. Tegangan baterai harus berkisar antara 2 volt sampai 3.5

volt. Baterai lithium 48 mA atau lebih besar dapat digunakan lebih dari 10

tahun pada suhu 25oC.

3. SCL (Serial Clock Input) : SCL digunakan untuk sinkronisasi perpindahan

data pada antarmuka serial.

4. SDA (Serial Data Input/Output) : SDA berfungsi sebagai pin masukan dan

keluaran pada antarmuka serial 2 kabel. Pin SDA dan SCL membutuhkan

resistor pull-up sekitar 4K7ohm.

5. SQW/OUT (Square Wave/Output Driver) : Jika diaktifkan, SQWE bit

harus diset ke 1. SQWE akan mengeluarkan gelombang kotak dengan

pilihan frekuensi (1Hz, 4kHz, 8kHz, 32kHz). Pin SQW/OUT

membutuhkan resistor pull-up eksternal. SQW/OUT dapat bekerja baik

(14)

3. Antarmuka serial two wire (I2C).

4. Sinyal keluaran gelombang kotak terprogram (Programmable

squarewave).

5. Konsumsi daya kurang dari 500nA menggunakan mode baterai

cadangan dengan operasional osilator.

6. Tersedia fitur industri dengan ketahanan suhu antara -40oC hingga

+85oC.

7. Tersedia dalam kemasan 8-pin DIP atau SOIC.

2.2.3 Peta Alamat RTC DS1307

Pemetaan alamat pada RTC DS1307 dimana register-register DS1307

ditempatkan pada lokasi pengalamatan 00h sampai 07h. Sedangkan register

-register RAM (Random Access Memory) ditempatkan pada lokasi pengalamatan

08h sampai 3Fh.

Khusus alamat 02H, bit-6 LOW untuk siklus jam 00–24 dan HIGH untuk

siklus jam 00–12. Bit-5 HIGH pada saat PM dan LOW pada saat AM atau angka

puluhan jika bit-6 LOW.

(15)

2.2.4 Register Kontrol RTC DS1307

Register kontrol pada RTC DS1307 digunakan untuk mengontrol operasi pada pin

SQW/OUT.

Tabel 2.6 Register Kontrol Pada RTC DS1307

BIT 7 BIT 6 BIT 5 BIT 4 BIT 3 BIT 2 BIT 1 BIT 0

OUT X X SQWE X X RS1 RS0

1. Bit 7 Output Control (OUT) : Bit 7 adalah keadaan jika pin SQW/OUT di

disable sehingga tidak mengeluarkan clock, bit 7 ini menentukan level

sinyal yang keluar dari pin SQW/OUT. Jika bit 7 ini LOW, maka level pin

SQW/OUT ikut LOW dan jika bit 7 ini HIGH, maka level pin SQW/OUT

ikut HIGH.

2. Bit 4 Square-wave Enable : Digunakan untuk enable/disable keluarnya

clock dari pin SQW/OUT. HIGH berarti enable dan LOW berarti disable.

Frekuensi sinyal clock yang keluar dari pin SQW/OUT ditentukan oleh

kondisi bit 1 dan bit 0.

3. Bit 1 dan 0 Rate Select (RS1, RS0) Digunakan untuk menentukan

frekuensi yang keluar dari pin SQW/OUT. Kombinasi nilai RS0, dan RS1

menghasilkan output gelombang kotak dengan nilai frekuensi

(16)

2.2.5 Komunikasi I2C Pada RTC DS1307

Untuk membaca data tanggal dan waktu yang tersimpan di memori RTC DS1307

dapat dilakukan melalui komunikasi serial I2C seperti tampak pada gambar

berikut:

Gambar 2.4 Komunikasi serial RTC dengan I2C

Dari gambar 2.4 diatas dapat dilihat DS1307 beropersai sebagai slave pada

bus I2C. Cara Access pertama mengirim sinyal START diikuti device address dan

alamat sebuah register yg akan dibaca. Beberapa register dapat dibaca sampai

STOP condition dikirim.

I2C singkatan dari Inter Integrated Circuit, adalah sebuah protokol untuk

komunikasi serial antar IC, dan sering disebut juga Two Wire Interface (TWI).

Bus yang digunakan untuk komunikasi antara mikrokontroler dan divais periferal

seperti memori, sensor temperatur dan I/O expander. Komunikasi dilakukan

melalui dua jalur: SDA (serial data) dan SCL (serial clock). Setiap divais I2C

memiliki 7-bit alamat yang unik. MSB adalah fix dan ditujukan untuk kategori

(17)

serial dua arah menggunakan dua saluran yang didisain khusus untuk mengirim

maupun menerima data. Divais yang mengirim data sepanjang bus disebut master,

divais yang menerima data disebut slave. Master memulai transmisi dengan

sebuah sinyal start, dan menghentikan transmisi dengan sebuah sinyal stop pada

jalur SDA. Selama sinyal start dan stop, jalur SCL harus dalam keadaan high.

Setelah master memulai pengiriman data dengan sebuah sinyal start,

master menulis satu byte alamat divais kepada slave. Setiap byte data harus

memiliki panjang 8-bit. Slave harus memberikan konfirmasi dari byte data yang

diterimanya dengan sebuah bit acknowledge (ACK). Sinyal Start merupakan

sinyal untuk memulai semua perintah, didefinisikan sebagai perubahan tegangan

SDA dari 1 menjadi 0 pada saat SCL 1. Sinyal Stop merupakan sinyal untuk

mengakhiri semua perintah, didefinisikan sebagai perubahan tegangan SDA dari 0

menjadi 1 pada saat SCL 1. Sinyal dasar yang lain dalam I2C Bus adalah sinyal

acknowledge yang disimbolkan dengan ACK. Setelah transfer data oleh master

berhasil diterima slave, slave akan menjawabnya dengan mengirim sinyal

acknowledge, yaitu dengan membuat SDA menjadi 0 selama siklus clock ke 9.

Pada komunikasi I2C antara DS1307 dan mikrokontroler, data- data jam

dan yang lain dikirim dalam format BCD. Data dikirim per-byte dari

mikrokontroler ke DS1307 secara serial. Setelah menerima satu byte data,

(18)

karena mikrokontroler akan menuliskan terlebih dahulu alamat awal pembacaan

register DS1307. Setelah itu, proses pembacaan I2C dimulai. Mikrokontroler

mengirimkan alamat DS1307 beserta kode instruksi baca. Proses pembacaan

dilakukan per-byte dimulai dari register deetik sampai register tahun. Setelah

menerima data 1 byte utuh mikrokontroler akan mengirimkan sinyal acknowledge

ke DS1307. Pada akhir pembacaan register tahun, akan dikirim sinyal

notacknowledge dan diakhiri dengan sinyal stop.

2.3 IC Shift Register 74HC595

Shift register SIPO (Serial In Paralel Out) memiliki pin input serial, pin clock, dan

beberapa pin output. Setiap kali sinyal clock terdeteksi di pin clock, nilai-nilai

pada pin-pin output akan digeser ke kiri (umumnya), dan nilai pin input akan

diselipkan menjadi bit terendah (LSB). Sinyal clock umumnya ditandai dengan

perubahan tegangan naik (rising up) atau turun (rising down) tergantung dari

spesifikasi shift register yang bersangkutan.

Gambar 2.5 IC Shift Register 74HC595

74HC595 adalah IC (integrated circuit, sirkuit elektronika terpadu) dari

(19)

menerima masukan secara serial dan keluaran paralel dalam 8-pin keluaran. Data

masukan disimpan pada register penyimpanan tipe-D sepanjang satu byte (8 bit

D-type storage register). Register penyimpanan ini memiliki keluaran paralel

dengan 3 kondisi (3-state): HIGH, LOW, dan NULL (High-Z, High Impedance).

Sumber detak terpisah disediakan untuk masing-masing register (shift register dan

storage register).

Shift Register memiliki pin kendali SRCLR untuk mereset data di antrian

(direct overriding clear control), pin masukan serial (SER), dan pin keluaran

serial untuk disambungkan dengan IC lainnya (cascading). Dengan adanya pin

keluaran serial ini, data keluaran paralel dapat diekspansi menjadi lebih dari 8-bit.

Shift register clock (SRCLK) maupun storage register clock (RCLK) dipicu pada

sisi positif signal (positive-edge triggered). Bila kedua sumber detak

disambungkan bersama-sama, shift register akan selalu satu pulsa detak lebih

awal dibanding storage register.

2.4 IC ULN2803

ULN2803 adalah chip Integrated Circuit (IC) berupa rangkaian transistor

Darlinton dengan Tegangan Tinggi. Hal ini memungkinkan untuk membuat

antarmuka sinyal TTL dengan beban tegangan tinggi. Chip mengambil sinyal

(20)

sinyal rendah). Pin 10 adalah COM pada sisi yang lebih tinggi dan umumnya akan

dihubungkan ke tegangan positif. Pins 11-18 adalah output (Pin 1 untuk Pin 18,

Pin 2 untuk 17, dst).

Gambar 2.6 Intergrated Circuit (IC) ULN2803

Di sisi output ULN2803 umumnya berada pada selang nilai 50V/500mA,

sehingga dapat mengoperasikan beban kecil secara langsung. Pada aplikasi lain,

sering digunakan untuk daya kumparan dari satu atau lebih relay yang

memungkinkan tegangan yang lebih tinggi atau arus yang lebih kuat, dikontrol

oleh sinyal tingkat rendah. Dalam aplikasi arus kuat (listrik), ULN2803

menggunakan tingkat rendah (TTL) sinyal untuk mengaktifkan ataupun

mematikan sinyal tegangan/arus yang lebih tinggi pada sisi output.

2.5 Liquid Crystal Display (LCD)

LCD adalah lapisan dari campuran organik antara lapisan kaca bening dengan

elektroda transparan indium oksida dalam bentuk tampilan seven-segment dan

lapisan elektroda pada kaca belakang. Ketika elektroda diaktifkan dengan medan

listrik (tegangan), molekul organik yang panjang dan silindris menyesuaikan diri

(21)

lapisan reflektor. Cahaya yang dipantulkan tidak dapat melewati molekul-molekul

yang telah menyesuaikan diri dan segmen yang diaktifkan terlihat menjadi gelap

dan membentuk karakter data yang ingin ditampilkan.

Gambar 2.7 LCD (Liquid Cristal Display)

2.5.1 Pengendali/kontroler LCD (Liquid Crystal Display)

Dalam modul LCD (Liquid Cristal Display) terdapat microcontroller yang

berfungsi sebagai pengendali tampilan karakter LCD (Liquid Cristal Display).

Microntroller pada suatu LCD (Liquid Cristal Display) dilengkapi dengan memori

dan register. Memori yang digunakan microcontroler internal LCD adalah :

a. DDRAM (Display Data Random Access Memory) merupakan memori

(22)

merupakan karakter dasar yang sudah ditentukan secara permanen oleh

pabrikan pembuat LCD (Liquid Cristal Display) tersebut sehingga

pengguna tinggal mangambilnya sesuai alamat memorinya dan tidak dapat

merubah karakter dasar yang ada dalam CGROM.

2.5.2 Register Kontrol Pada LCD (Liquid Crystal Display)

a. Register perintah yaitu register yang berisi perintah-perintah dari

mikrokontroler ke panel LCD (Liquid Cristal Display) pada saat proses

penulisan data atau tempat status dari panel LCD (Liquid Cristal Display)

dapat dibaca pada saat pembacaan data.

b. Register data yaitu register untuk menuliskan atau membaca data dari atau

ke DDRAM. Penulisan data pada register akan menempatkan data tersebut

ke DDRAM sesuai dengan alamat yang telah diatur sebelumnya.

2.5.3 Konfigurasi Pin Pada LCD

a. Pin data adalah jalur untuk memberikan data karakter yang ingin

ditampilkan menggunakan LCD (Liquid Cristal Display) dapat

dihubungkan dengan bus data dari rangkaian lain seperti mikrokontroler

dengan lebar data 8 bit.

b. Pin RS (Register Select) berfungsi sebagai indikator atau yang

menentukan jenis data yang masuk, apakah data atau perintah. Logika low

menunjukan yang masuk adalah perintah, sedangkan logika high

(23)

c. Pin R/W (Read Write) berfungsi sebagai instruksi pada modul jika low

tulis data, sedangkan high baca data.

d. Pin E (Enable) digunakan untuk memegang data baik masuk atau keluar.

e. Pin VBL berfungsi mengatur kecerahan tampilan (kontras) dimana pin ini

dihubungkan dengan trimpot 5 Kohm, jika tidak digunakan dihubungkan

ke ground, sedangkan tegangan catu daya ke LCD sebesar 5 Volt.

(24)

4. Terdapat 80 x 8 bit display RAM ( maksimal 80 karakter ).

5. Memiliki kemampuan penulisan dengan 8 bit maupun dengan 4 bit.

6. Dibangun oleh osilator lokal.

7. Satu sumber tegangan 5 Volt.

8. Otomatis reset saat tegangan dihidupkan.

9. Bekerja pada suhu 0oC sampai 550C.

2.6 Light Emitting Diode (LED)

LED merupakan keluarga dari Dioda yang terbuat dari Semikonduktor. Cara

kerjanya pun hampir sama dengan Dioda yang memiliki dua kutub yaitu kutub

Positif (P) dan Kutub Negatif (N). LED hanya akan memancarkan cahaya apabila

dialiri tegangan maju (bias forward) dari Anoda menuju ke Katoda. LED terdiri

dari sebuah chip semikonduktor yang di doping sehingga menciptakan junction P

dan N. Proses doping yang dimaksud dalam semikonduktor adalah proses untuk

menambahkan ketidakmurnian (impurity) pada semikonduktor yang murni

sehingga menghasilkan karakteristik kelistrikan yang diinginkan.

Ketika LED dialiri tegangan maju atau bias forward yaitu dari Anoda (P)

menuju ke Katoda (K), Kelebihan Elektron pada N-Type material akan berpindah

ke wilayah yang kelebihan Hole (lubang) yaitu wilayah yang bermuatan positif

(P-Type material). Saat Elektron berjumpa dengan Hole akan melepaskan photon

(25)

Gambar 2.8 Light Emitting Diode (LED)

2.7 Tactile Switch

Tactile Switch merupakan komponen control yang sangat berguna, alat ini dapat

kita jumpai pada panel listrik atau di luar panel listrik. Fungsi tombol tekan adalah

untuk mengontrol kondisi on atau off rangkaian listrik, prinsip kerja tombol tekan

adalah kerja sesaat maksudnya jika tombol kita tekan sesaat maka akan kembali

pada posisi semula. Berdasarkan fungsinya tombol tekan terbagi atas 3 tipe

kontak:

1. Kontak NO (Normally Open = Kondisi terbuka) Tombol jenis ini biasanya

digunakan untuk menghubungkan arus pada suatu rangkaian Kontrol atau

sebagai tombol start. Fungsi mengalirkan arus pada tombol ini terjadi

apabila pada bagian knop nya ditekan sehingga kontaknya saling

(26)

knop dilepas maka akan kembali pada posisi semula. Tombol jenis ini

digunakan untuk tombol stop.

3. Kontak NO dan NC merupakan gabungan antara kontak NO dan kontak

NC. Mereka berja secara bersamaan dalam satu poros. Jika tombol di

tekan maka kontak NO yang semula terbuka (Open) dan kontak NC yang

terhubung (Close) akan terbalik arah yaitu kontak NO akan menjadi

terhubung (Close) dan kontak NC akan menjadi terbuka (Open). Jika knop

pada tombol dilepaskan maka akan kembali ke posisi semula.

Gambar 2.9 Tactile Switch

2.8 Bahasa Pemograman BASCOM-AVR

Bahasa BASCOM-AVR menggunakan bahasa pemograman BASIC. Bahasa

BASIC adalah bahasa pemograman yang dapat dikatakan bahasa pemograman

berlevel tinggi. Bahasa pemograman berlevel rendah berarti bahasa pemograman

yang berorientasi pada mesin, misalnya bahasa assembly. Sedangkan bahasa

pemograman berlevel tinggi merupakan bahasa pemograman yang berorientasi

(27)

memprogram dalam bahasa ini diperlukan tingkat kecermatan yang tinggi. Bahasa

pemograman berlevel tinggi relatif mudah digunakan, karena ditulis dengan

bahasa manusia yang lebih mudah dimengerti dan tidak tergantung pada mesin.

Penulisan program dalam bahasa BASCOM-AVR ini tidak mengenal

aturan penulisan dikolam tertentu. Jadi bisa dimulai dari kolom manapun. Namun

demikian, untuk mempermudah dalam pembacaan program dan untuk keperluan

dokumentasi, sebaiknya penulisan program dalam bahasa BASCOM-AVR ini

diatur sedemikian rupa sehingga mudah dibaca. BASCOM AVR menyediakan

pilihan yang dapat mensimulasikan program.

2.8.1 Tipe Data

Tipe data merupakan bagian program yang penting karena tipe data

mempengaruhi setiap instruksi yang akan dilaksanakan komputer. Pemilihan tipe

data yang tepat akan membuat operasi data menjadi lebih efesien dan efektif.

Tabel 2.9 Tipe-Tipe Data Dalam BASCOM-AVR

NO Tipe Jangkauan

1. Bit 0 atau 1

2. Byte 0–225

3. Integer -65,535

(28)

2.8.2 Variabel

Variabel adalah suatu pengenal (identifier) yang digunakan untuk mewakili suatu

nilai tertentu di dalam proses program yang dapat diubah-ubah sesuai dengan

kebutuhan. Nama dari variable terserah sesuai dengan yang diinginkan namun hal

yang terpenting adalah setiap variabel diharuskan :

 Terdiri dari gabungan huruf dan angka dengan karakter pertama harus

berupa huruf, max 32 karakter.

 Tidak boleh mengandung spasi atau symbol-simbol khusus seperti : $, ?,

%, #, !, &, *, (, ), -, +, = dan lain sebagainya kecuali underscore.

 Panjang sebuaah nama variabel hanya 32 karakter.

Untuk dapat menggunakan variabel, maka variabel tersebut harus dideklarasikan

terlebih dahulu pada program yang dibuat.

2.8.3 Operasi–operasi dalam BASCOM AVR

Bahasa pemograman BASCOM AVR ini dapat digunakan untuk menggabungkan,

membandingkan, atau mendapatkan informasi tentang sebuah pernyataan dengan

menggunakan operator-operator yang tersedia di BASCOM AVR.

 Operator aritmatika adalah operator yang digunakan dalam perhitungan

operator aritmatika meliputi + (tambah), - (kurang), / (bagi), dan * (kali).

 Operator Relasi berfungsi membandingkan nilai sebuah angka. Hasilnya

dapat digunakan untuk membuat keputusan yang sesuai dengan program

(29)

Tabel 2.10 Operasi Relasi

Opertor Relasi Pernyataan

= Sama Dengan X = Y

<> Tidak Sama Dengan X <> Y

< Lebih Kecil Dari X < Y

> Lebih Besar Dari X > Y

<= Lebih Kecil Sama Dengan X <= Y

>= Lebih Besar Sama Dengan X >= Y

 Operator Logika digunakan untuk menguji sebuah kondisi atau

memanipulasi bit dan bolean. Dalam BASCOM-AVR ada 4 buah operator

logika, yaitu AND, OR, NOT, dan XOR.

 Operator fungsi adalah operator yang digunakan untuk melengkapi

Gambar

Gambar 2.1 Mikrokontroler ATMega8
Gambar 2.2 Konfigurasi Pin Mikrokontroler ATMega8
Tabel 2.1 Fungsi Alternatif PORT B pada setiap pin
Tabel 2.2 Fungsi Alternatif PORT C pada setiap pin
+7

Referensi

Dokumen terkait

Model sistem penyiraman dan penerangan taman menggunakan soil moisture sensor dan RTC (Real Time Clock) menggunakan Arduino Uno ini perlu pengembangan lebih lanjut

Sejumlah pin yang sebenarnya merupakan pin digital tetapi sejumlah pin tersebut dapat diprogram kembali menjadi pin output analog dengan cara membuat programnya pada

Maka dirasa perlu untuk membuat sebuah sistem perangkap ikan dapat melakukan penarikan dan penebaran perangkap secara otomatis dan terjadwal dengan pengaturan waktu yang

1) Sistem ATS dengan menggunakan tombol default telah dapat mengatur sistem aktifasi lampu dengan jenis daya yang berbeda yaitu 5 Watt dan 25 Watt. 2) Sistem komunikasi data

Segala puji dan syukur penulis ucapkan kehadirat Allah SWT yang telah memberikan rahmat dan hidayah-Nya kepada penulis sehingga dapat menyelesaikan skripsi ini tepat