• Tidak ada hasil yang ditemukan

BAB 2 TINJAUAN PUSTAKA

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 2 TINJAUAN PUSTAKA"

Copied!
22
0
0

Teks penuh

(1)

BAB 2

TINJAUAN PUSTAKA

2.1 Mikrokontroler

Mikrokontroler adalah sebuah chip yang berfungsi sebagai pengontrol rangkaian elektronik dan umumnya dapat menyimpan program didalamnya. Mikrokontroler umumnya terdiri dari CPU (Central Unit Processing Unit), memori, I/O tertentu dan unit pendukung seperti Analog-to-Digital Converter (ADC) yang sudah terintegrasi di dalamnya.kelebihan utama dari mikrokontroler adalah tersedianya RAM dan peralatan I/O pendukung sehingga ukuran board mikrokontroler menjadi sangat ringkas. Mikrokontroler juga merupakan chip cerdas yang menjadi tren dalam pengendalian dan otomatisas serta memiliki port sebagai input dan output. Dengan banyak jenis keluarga,kapasitas memori, dan berbagai figure, mikrokontroler menjadi pilihan dalam aplikasi prosesor mini untuk pengendalian skala kecil. Setelah mengalami perkembangan, teknologi mikroprosesor dan mikrokontroler mengalami peningkatan yang terjadi pada tahun 1996 s/d 1998.

ATMEL mengeluarkan teknologi mikrokontroler terbaru berjenis AVR (Alf and Vegard’s Risc processor) yang menggunakan teknologi RISC (Reduce Instruction Set Computer) dengan keunggulan lebih banyak yang dibandingkan pendahulunya, yaitu mikrokontroler jenis MCS. Mikrokontroler jenis MCS memiliki kecepatan kerja 1/12 kali frekuensi osilator yang digunakan sedangkan pada kecepatan frekuensi kerja AVR sama dengan kecepatan frekuensi kerja osilator yang digunakan. Jadi apabila menggunakan frekuensi osilator yang sama, maka AVR mempunyai kecepatan kerja 12 kali lebih cepat dibanding dengan MCS. Dalam perancangan alat ini mikrokontroler yang digunakan adalah ATmega32 yang merupakan produksi ATMEL yang berjenis AVR.

2.2 Mikrokontroler ATMega 32

Mikrokontroler merupakan sebuah single chip yang didalamya telah dilengkapi dengan CPU (Central Prosessing Unit); RAM ( RandomAcces Memory); ROM ( Read only Memory), Input, dan Output, Timer\ Counter, Serial com port secara

(2)

spesifik digunakan untuk aplikasi –aplikasi control dan buka aplikasi serbaguna. Mikrokontroler umumnya bekerja pada frekuensi 4MHZ-40MHZ. Perangkat ini sering digunakan untuk kebutuhan kontrol tertentu seperti pada sebuah penggerak motor. Read only Memory (ROM) yang isinya tidak berubah meskipun IC kehilangan catu daya. Sesuai dengan keperluannya, sesuai dengan susunan MCS-51. Memory penyimpanan program dinamakan sebagai memory program. Random Acces Memory (RAM) isinya akan begitu sirna IC kehilangan catudaya dipakai untuk menyimpan data pada saat program bekerja. RAM yang dipakai untuk menyimpan data ini disebut sebagai memori data.

Mikrokontroler biasanya dilengkapi dengan UART (Universal Asychoronous Receiver Transmitter) yaitu port serial komunikasi serial asinkron, USART (Universal Asychoronous\Asy choronous Receiver Transmitter) yaitu port yang digunakan untuk komunikasi serial asinkron dan asinkron yang kecepatannya 16 kali lebih cepat dari Uart, SPI ( Serial Port Interface), SCI ( Serial Communication Interface ), Bus RC ( Intergrated circuit Bus ) merupakan 2 jalur yang terdapat 8 bit, CAN ( Control Area Network ) merupakan standard pengkabelan SAE (Society of Automatic Enggineers).

Pada system computer perbandingan RAM dan ROM-nya besar, artinya program-program pengguna disimpan dalam ruang RAM yang relatif besar,sedangkan rutin-rutin antar muka pernagkat keras disimpan dalm ruang ROM yang kecil. Sedangkan pada mikrokontroler, perbandingan ROM dan RAM-nya yang besar artiRAM-nya program control disimpan dalam ROM yang ukuranRAM-nya relative lebih besar, sedangkan RAM digunakan sebagai tempat penyimpanan sedrhana sementara, termasuk register-register yang digunakan pada Microctroller yang bersangkutan.

2.2.1 Arsitektur ATMega 32

Fitur-fitur yang dimiliki ATmega32 sebagai berikut: 1. Frekuensi clock maksimum 16 MHz.

2. Jalur I/O 32 buah, yang terbagi dalam PortA, PortB, PortC dan PortD. 3. Analog to Digital Converter 10 bit sebanyak 8 input, 4 chanel PWM. 4. Timer/Counter sebanyak 3 buah.

(3)

5. CPU 8 bit yang terdiri dari 32 register. 6. Watchdog Timer dengan osilator internal. 7. SRAM sebesar 2K Byte.

8. Memori Flash sebesar 32K Byte dengan kemampuan read while write. 9. Interrupt internal maupun eksternal.

10. Port komunikasi SPI.

11. EEPROM sebesar 512 byte yang dapat diprogram saat operasi. 12. Analog Comparator.

13. Komunikasi serial standar USART dengan kecepatan maksimal 2,5 Mbps

(4)

2.2.2 Konfigurasi ATMega 32

Mikrokontroler merupakan suatu device yang di dalamnya sudah terintegrasi dengan I/O port,RAM,ROM,sehingga dapat digunakan untuk berbagai keperluan kontroler .Mikrokontroler AVR ATmega32 merupakan low power CMOS mikrokontroler 8 bit yang di kembangkan oleh atmel dengan arsitektur RISC(Reduced Instruction SET Computer) sehingga dapat mencapai troughput eksekusi instruksi 1 MIPS(Million Instruction Per Second).Mikrokontroler AVR dapat dikelompokkan menjadi 4 kelas yaitu kelas ATtiny,kelas AT90xx,keluarga ATmega,dan kelas AT86RFxx.pada dasarnya yang membedakan masing-masing kelas adalah memori,peripheral,spedd.operasi tegangan dan fungsinya sedangkan dari segi arsitektur dan instruksi yang di gunakan bisa di katakan hampir sama. Penjelasan konfigurasi pin pada mikrokontroler AVR ATmega32 secara umum:

a. Pin 1 sampai 8 (port B) merupakan port paralel 8 bit dua arah (bidirectional), yang dapat di gunakan untuk general purpose dan special feature.

b. Pin 9 (riset) jika terdapat minimum pulse pada saat active low. c. Pin 10 (VCC) di hubungkan ke Vcc (2,7-5,5 Volt).

d. Pin 11 dan 31 (GND di hubungkan ke Vssatau ground.

e. Pin 12 (XTAL 2) adalah pin masukan ke rangkaian osilator internal. Sebuah osilator kristal atau sumber osilator luar dapat di gunakan.

f. Pin 13 (XTAL 1) adalah pin keluaran ke rangkaian osilator internal.pin ini di pakai bila menggunakan osilator kristal.

g. Pin 14 sampai 21 (port D) adalah 8 bit dua arah (bi-directional I/O) port dengan internal pull-up resistors di gunaka untuk general purpose dan special feature.

h. Pin 22 sampai 29 (port C) adalah 8 bit dua arah (bi-directional I/O) port dengan internal pull-up resistors di gunaka untuk general purpose dan special feature.

i. Pin 30 adalah Avcc pin penyuplai daya untuk port A dan A/D converter dan di hubungkan ke Vcc.jika ADC di gunakan maka pin ini di hubungkan ke Vcc. j. Pin 32 adalah A REF pin yang berfungsi sebagai referensi untuk pin analog

(5)

dengan internal pull-up resistors di gunaka untuk general purpose.

Gambar 2.2 Pin-pin ATMega32

Secara fungsional konfigurasi pin ATMega32 adalah sebagai berikut: 1. VCC

Sumber Tegngan 2. GND

(Ground) Ground

3. Port A (PA7 – PA0)

Port A adalah 8-bit port I/O yang bersifat bi-directional dan setiap pin memilki internal pull-up resistor. Output buffer port A dapat mengalirkan arus sebesar 20 mA. Ketika port A digunakan sebagai input dan di pull-up secara langsung, maka port A akan mengeluarkan arus jika internal pull-up resistor diaktifkan. Pin-pin dari port A memiliki fungsi khusus yaitu dapat berfungsi sebagai channel ADC (Analog to Digital Converter) sebesar 10 bit. Fungsi-fungsi khusus pin-pin port A dapat ditabelkan seperti yang tertera pada table.

Tabel 2.1 Fungsi khusus port A Port Alternate Function

(6)

PA6 ADC6 (ADC input channel 6)

PA5 ADC5 (ADC input channel 5)

PA4 ADC4 (ADC input channel 4)

PA3 ADC3 (ADC input channel 3)

PA2 ADC2 (ADC input channel 2)

PA1 ADC1 (ADC input channel 1)

PA0 ADC0 (ADC input channel 0)

4. Port B (PB7 – PB0)

Port B adalah 8-bit port I/O yang bersifat bi-directional dan setiap pin mengandung internal pull-up resistor. Output buffer port B dapat mengalirkan arus sebesar 20 mA. Ketika port B digunakan sebagai input dan di pull-down secara external, port B akan mengalirkan arus jika internal pull-up resistor diaktifkan.

Pin-pin port B memiliki fungsi-fungsi khusus, diantaranya : a. SCK port B, bit 7

Input pin clock untuk up/downloading memory. b. MISO port B, bit 6

Pin output data untuk uploading memory. c. MOSI port B, bit 5

Pin input data untuk downloading memory.

(7)

Tabel 2.2 Fungsi khusus port B Port Alternate Function

PB7 SCK (SPI Bus Serial Clock)

PB6 MISO (SPI Bus Master Input/Slave Output)

PB6 MOSI (SPI Bus Master Output/Slave Input)

PB5 SS (SPI Slave Select Input)

PB3

AIN1 (Analog Comparator Negative Input)

OCO (Timer/Counter0 Output Compare Match Output)

PB2

AIN0 (Analog Comparator Positive Input)

INT2 (External Interrupt 2 Input)

PB1 T1 (Timer/Counter1 External Counter Input)

PB0

T0 (Timer/Counter External Counter Input) XCK

(USART External Clock Input/Output)

5. Port C (PC7 – PC0)

Port C adalah 8-bit port I/O yang berfungsi bi-directional dan setiap pin memiliki internal pull-up resistor. Output buffer port C dapat mengalirkan arus sebesar 20 mA. Ketika port C digunakan sebagai input dan di pull-down secara langsung, maka port C akan mengeluarkan arus. Fungsi-fungsi khusus pin-pin port C dapat ditabelkan seperti yang tertera pada tabel dibawah ini.

(8)

Tabel 2.3 Fungsi khusus port C Port Alternate Function

PC7 TOSC2 (Timer Oscillator Pin 2)

PC6 TOSC1 (Timer Oscillator Pin 1)

PC6 TD1 (JTAG Test Data In)

PC5 TD0 (JTAG Test Data Out)

PC3 TMS (JTAG Test Mode Select)

PC2 TCK (JTAG Test Clock)

PC1 SDA (Two-wire Serial Bus Data Input/Output Line)

PC0 SCL (Two-wire Serial Bus Clock Line)

6. Port D (PD7 – PD0)

Port D adalah 8-bit port I/O yang berfungsi bi-directional dan setiap pin memiliki internal pull-up resistor. Output buffer port D dapat mengalirkan arus sebesar 20 mA. Ketika port D digunakan sebagai input dan di pull-down secara langsung, maka port D akan mengeluarkan arus jika internal pull-up resistor diaktifkan. Fungsi-fungsi khusus pin-pin port D dapat ditabelkan seperti yang tertera pada tabel dibawah ini.

Tabel 2.4 Fungsi khusus port D Port Alternate Function

(9)

PD7 ICP1 (Timer/Counter1 Input Capture Pin)

PD4 OCIB (Timer/Counter1 Output Compare B Match Output)

PD6 TD0 (JTAG Test Data Out)

PD3 INT1 (External Interrupt 1 Input)

PD2 INT0 (External Interrupt 0 Input)

PD1 TXD (USART Output Pin)

PD0 RXD (USART Input Pin)

2.2.3 Arsitektur CPU ATMega32

Fungsi utama CPU adalah memastikan pengeksekusian instruksi dilakukan dengan benar. Oleh karena itu CPU harus dapat mengakses memori, melakukan kalkulasi, mengontrol peripheral, dan menangani interupsi. Ada 32 buah General Purpose Register yang membantu ALU bekerja. Untuk operasi aritmatika dan logika, operand berasal dari dua buah general register dan hasil operasi ditulis kembali ke register. Status and Control berfungsi untuk menyimpan instruksi aritmatika yang baru saja dieksekusi. Informasi ini

berguna untuk mengubah alur program saat mengeksekusi operasi kondisional. Instruksi di jemput dari flash memory. Setiap byte flash memory memiliki alamat masing-masing. Alamat instruksi yang akan dieksekusi senantiasa disimpan Program Counter. Ketika terjadi interupsi atau pemanggilan rutin biasa, alamat di Program Counter disimpan terlebih dahulu di stack. Alamat interupsi atau rutin kemudian ditulis ke Program Counter, instruksi kemudian dijemput dan dieksekusi. Ketika CPU telah selesai mengeksekusi rutin interupsi atau rutin biasa, alamat yang ada di stack dibaca dan ditulis kembali ke Program Counter.

(10)

2.2.4 Program Memori

ATMega 32 memiliki 32 KiloByte flash memori untuk menyimpan program.Karena lebar intruksi 16 bit atau 32 bit maka flash memori dibuat berukuran 16K x 16. Artinya ada 16K alamat di flash memori yang bisa dipakai dimulai dari alamat 0 heksa sampai alamat 3FFF heksa dan setiap alamatnya menyimpan 16 bit instruksi.

2.2.5 SRAM Data Memori

ATMega 32 memiliki 2 KiloByte SRAM. Memori ini dipakai untuk menyimpan variabel. Tempat khusus di SRAM yang senantiasa ditunjuk register SP disebut stack. Stack berfungsi untuk menyimpan nilai yang dipush.

2.2.6 EEPROM Data Memori

ATMega 32 memiliki 1024 byte data EEPROM. Data di EEPROM tidak akan hilang walaupun catuan daya ke sistem mati. Parameter sistem yang penting disimpan di EEPROM. Saat sistem pertama kali menyala paramater tersebut dibaca dan system diinisialisasi sesuai dengan nilai parameter tersebut.

2.2.7 Interupsi

Sumber interupsi ATMega 32 ada 21 buah. Tabel 2 hanya menunjukkan 10 buah interupsi pertama. Saat interupsi diaktifkan dan interupsi terjadi maka CPU menunda instruksi sekarang dan melompat ke alamat rutin interupsi yang terjadi. Setelah selesai mengeksekusi intruksi-instruksi yang ada di alamat rutin interupsi CPU kembali melanjutkan instruksi yang sempat tertunda.

2.2.8 Status register (SREG)

Status register adalah Status Register berisi informasi tentang hasil yang paling baru-baru ini dieksekusi aritmatika instruksi. Informasi ini dapat digunakan untuk mengubah aliran program untuk melakukan operasi bersyarat. Perhatikan bahwa Register Status diperbarui setelah semua operasi ALU, sebagai ditentukan dalam Instruction Set Reference. Ini akan dalam banyak kasus menghilangkan kebutuhan

(11)

untuk menggunakan didedikasikan membandingkan instruksi, sehingga lebih cepat dan lebih kompak kode. Status Register tidak secara otomatis disimpan ketika memasuki rutin interupsi dan dipulihkan ketika kembali dari interupsi. Ini harus ditangani oleh perangkat lunak.

Gambar 2.3 Status Register ATMega 32 • Bit 7 - I: Dunia Interrupt Enable

Global Interrupt Enable bit harus ditetapkan untuk menyela harus diaktifkan . Individu interrupt memungkinkan kontrol selanjutnya dilakukan dalam register kontrol terpisah . Jika Global Interrupt Enable Daftar dibersihkan , tidak ada interupsi diaktifkan independen dari interrupt individu mengaktifkan pengaturan . The I- bit dihapus oleh hardware setelah interupsi telah terjadi , dan diatur oleh instruksi RETI untuk mengaktifkan interupsi berikutnya . The I- bit juga dapat diatur dan dibersihkan oleh aplikasi dengan SEI dan CLI instruksi, seperti yang dijelaskan dalam referensi set instruksi .

• Bit 6 - T : Bit Copy Storage

The Bit Copy instruksi BLD ( Bit Load) dan BST ( Bit Store) menggunakan T - bit sebagai sumber atau tujuan untuk bit yang dioperasikan . Sedikit dari register dalam Daftar file dapat disalin ke T oleh Instruksi BST , dan sedikit di T dapat disalin ke dalam sedikit dalam register dalam Daftar file oleh Instruksi BLD .

• Bit 5 - H : Half Carry Flag

The Half Carry Flag H menunjukkan setengah carry dalam beberapa operasi aritmatika . Half Carry berguna dalam BCD aritmatika.

• Bit 4 - S : Sign Bit , S = N ⊕ V

(12)

Overflow Flag V.

• Bit 3 - V : Two Complement Overflow Flag

The Two Complement Overflow Flag V mendukung dua itu aritmatika komplemen.

• Bit 2 - N : Negative Flag

Negatif Flag N menunjukkan hasil negatif dalam aritmatika atau operasi logika • Bit 1 - Z : Nol Flag Zero Flag Z

mengindikasikan hasil nol dalam aritmatika atau operasi logika . • Bit 0 - C : Carry Flag The Carry Flag C

mengindikasikan carry dalam aritmatika atau operasi logika.

2.3 Frekuensi Radio

Frekuensi Radio adalah sinyal arus berfrekuensi tinggi yang berubah-ubah yang melewati konduktor tembaga yang panjang dan kemudian diradiasikan ke udara melalui sebuah antenna. Sebuah antenna mentranformasikan sinyal kabel ke sinyal wireless dan sebaliknya. Ketika sinyal AC berfrekuensi tinggi diradiasikan ke udara,akan membentuk gelombang radio. Gelombang radio tersebut berpindah dari sumber (antenna) pada sebuah garis lurus semuanya bersamaan. Mengerti tingkah laku dari panyebaran gelombang RF adalah bagian penting untuk mengerti mengapa dan bagaimana wireless LAN berfungsi.

Tanpa dasar pengetahuan tersebut,seorang administrator tidak mampu menentukan lokasi instalasi dari perlengkapan dan tidak akan mengerti bagaimana memecahkanmasalah wireless LAN.Penyerapan terjadi ketika sinyal RF merambat objek dan terserap dalam material objek dengan cara tidak menembusnya, memantul, atau mengitari objek. Frekuensi Radio merupakan suatu gelombang elektromagnetik yang memiliki spektrum radiasi elektromagnetik pada rangefrekuensi antara 9 kHz-300 GHz. Gelombang elektromagnetik dihasilkan dari arus AC yang diberikan pada suatu konduktor atau antena. Antena tersebut akan meradiasikan suatu medan elektromagnetik melalui udara. Panjang gelombang dari frekuensi radio berbanding terbalik dengan frekuensinya berdasarkan rumus berikut :

(13)

dengan λ = panjang gelombang (m)

c = kecepatan cahaya (3x108 m/s)

f = frekuensi (Hz)

Frekuensi Radio ini digunakan sebagai media pengiriman data dari transmitter ke receiver.

2.3.1 Transmitter

Transmitter adalah rangkaian pengirim data yang mengirimkan data ke receiver Transmitter ini terdiri dari modul RF transmitter dan Antena.

RF Transmiter INPUT

Antena

Gambar 2.4 Diagram Blok RangkaianTransmitter

Transmitter ini digunakan sebagai pengirim data antar device . Pada proyek akhir ini modul RF transmitter yang digunakan yaitu tipe TLP 315 sudah tersedia dan dapat dibeli dengan mudah dipasaran. Modul RF transmitter.

Modul RF Transmitter TLP 315 adalah modul pengirim data dengan media pengiriman data melalui gelombang radio yang frekuensi kerjanya telah ditetapkan yaitu 315 MHz.

(14)

Gambar 2.5 Bentuk Fisik dan Konfigurasi Kaki Transmitter Keterangan : 1. GND 2. Data Out 3. VCC 4. Antena 2.3.2 Receiver

Receiver adalah rangkaian penerima data yang menerima data dari Transmitter. Receiverini terdiri dari modul RF receiver, decoder, dan Antena.

Berikut ini adalah Diagram Blok dari receiver.

OUTPUT RF

Receiver

Antena

Gambar 2.6 Diagram Blok Rangkaian Receiver

Receiver ini digunakan sebagai penerima data yang dikirim dari transmitter sebagai sebuah input bagi mikrokontroler Atmega 32.

Modul RF Receiver

Pada proyek Akhir ini modul RF receiver yang digunakan yaitu tipe RLP 315 sudah tersedia dan dapat dibeli dengan mudah dipasaran. Modul RF receiver RLP

(15)

315 adalah modul penerima data yang menerima data dari modul RF transmitter TLP 315 dengan frekuensi 315 MHz. Data yang diterima adalah data serial, kemudian data ini diubah oleh decoder.

Gambar 2.7 Bentuk Fisik dan Konfigurasi Kaki Receiver Keterangan :

1. GND

2. Data Out Digital 3. Linear Output 4. VCC 5. VCC 6. GND 7. GND 8. Antena

2.4 Liquid Crystal Display (LCD)

Fungsi display dalam suatu aplikasi mikrokontroler sangat penting sekali diantaranya yaitu :

 Mematikan data yang kita input valid  Mengetahui hasil suatu proses

 Memonitoring suatu proses  Mendebug program

 Menampilkan pesan

LCD berfungsi menampilkan suatu nilai hasil sensor, menampilkan teks, atau menampilkan menu pada aplikasi mikrokontroler. LCD yang digunakan

(16)

adalah jenis LCD M1632. LCDM1632 merupakan modul LCD dengan tampilan 16 x 2 baris dengan konsumsi daya rendah. M1632 adalah merupakan modul LCD dengan tampilan 16 x 2 baris dengan konsumsi daya yang rendah. 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. Gambar 2.12 berikut ini adalah Pin LCD M1632:

Tabel 2.5 Fungsi pin pada Liquid Crystal Display

Sebagaimana terlihat pada kolom deskripsi (symbol and functions), 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

(17)

EN setiap nibblenya). Gambar 2.12 berikut adalah contoh LCD (2×16) yang umum digunakan :

Gambar 2.8 LCD M1632

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 pin untuk data). Sedangkan mode 4 bit

(18)

minimal hanya membutuhkan 7 bit (3 pin untuk kontrol, 4 untuk data). Aplikasi dengan LCD dapat dibuat dengan mudah dan waktu yang singkat, mengingat koneksi parallel yang cukup mudah antara kontroller dan LCD.

2.5 Keypad Matriks

Keypad matrix 4x4 adalah keypad yang digunakan penulis pada alat ini yang berfungsi sebagai interface antara perangkat (mesin) elektronik dengan manusia atau dikenal dengan istilah HMI (Human Machine Interface). Matrix keypad 4×4 memiliki konstruksi atau susunan yang simple dan hemat dalam penggunaan port mikrokontroler. Konfigurasi keypad dengan susunan bentuk matrix ini bertujuan untuk penghematan port mikrokontroler karena jumlah key (tombol) yang dibutuhkan banyak pada suatu sistem dengan mikrokontroler. Konstruksi matrix keypad 4×4 untuk mikrokontroler dapat dibuat seperti pada gambar berikut:

Gambar 2.9 Konstruksi Matrix Keypad 4×4

Konstruksi matrix keypad 4×4 diatas cukup sederhana, yaitu terdiri dari 4 baris dan 4 kolom dengan keypad berupas saklar push buton yang diletakan disetiap persilangan kolom dan barisnya. Rangkaian matrix keypad diatas terdiri dari 16 saklar push buton dengan konfigurasi 4 baris dan 4 kolom. 8 line yang terdiri dari 4 baris dan 4 kolom tersebut dihubungkan dengan port mikrokontroler 8 bit. Sisi baris dari matrix keypad ditandai dengan nama Row1, Row2, Row3 dan Row4 kemudian sisi kolom ditandai dengan nama Col1, Col2, Col3 dan Col4.

Sisi input atau output dari matrix keypad 4×4 ini tidak mengikat, dapat dikonfigurasikan kolom sebagi input dan baris sebagai output atau sebaliknya tergantung programernya. Keypad Matriks 4×4 cukup menggunakan 8 pin untuk 16 tombol. Proses pengecekkan dari tombol yang dirangkai secara maktriks

(19)

adalah dengan teknik scanning, yaitu proses pengecekkan yang dilakukan dengan cara memberikan umpan-data pada satu bagian dan mengecek feedback (umpan-baliknya) pada bagian yang lain. Dalam hal ini, pemberian umpan-data dilakukan pada bagian baris dan pengecekkan umpan-balik pada bagian kolom. Pada saat pemberian umpan-data pada satu baris, maka baris yang lain harus dalam kondisi inversi-nya.

2.5.1 Proses Scanning Matrix 4×4 Untuk Mikrokontroler

Proses scaning untuk membaca penekanan tombol pada matrix keypad 4×4 untuk mikrokontroler diatas dilakukan secara bertahap kolom demi kolom dari kolom pertama sampai kolom ke 4 dan baris pertama hingga baris ke 4. Program untuk scaning matrix keypad 4×4 dapat bermacam-macam, tapi pada intinya sama. Misal kita asumsikan keyapad aktif LOW (semua line kolom dan baris dipasang resistor pull-up) dan dihubungkan ke port mikrokontrolr dengan jalur kolom adalah jalur input dan jalur baris adalah jalur output maka proses scaning matrix keypad 4×4 diatas dapat dituliskan sebagai berikut:

 Mengirimkan logika Low untuk kolom 1 (Col1) dan logika HIGH untuk kolom yang lain kemudian membaca data baris, misal tombol SW1 ditekan maka data baris pertama (Row1) akan LOW sehingga data baris yang dibaca adalah 0111, atau tombol yang ditekan tombol SW5 maka data pada baris ke 2 akan LOW sehingga data yang terbaca 1011, atau tombol SW9 yang ditekan sehingga data yang terbaca 1101, atau tombol SW13 yang ditekan maka data yang dibaca adalah 1110 dan atau tidak ada tombol pada kolom pertama yang di tekan maka data pembacaan baris akan 1111.

 Mengirimkan logika Low untuk kolom 2 (Col2) dan logika HIGH untuk kolom yang lain kemudian membaca data baris, misal tombol SW1 ditekan maka data baris pertama (Row1) akan LOW sehingga data baris yang dibaca adalah 0111, atau tombol yang ditekan tombol SW5 maka data pada baris ke 2 akan LOW sehingga data yang terbaca 1011, atau tombol SW9 yang ditekan sehingga data yang terbaca 1101, atau tombol SW13 yang ditekan maka data yang dibaca adalah 1110 dan atau tidak ada

(20)

tombol pada kolom pertama yang di tekan maka data pembacaan baris akan 1111.

 Mengirimkan logika Low untuk kolom 3 (Col3) dan logika HIGH untuk kolom yang lain kemudian membaca data baris, misal tombol SW1 ditekan maka data baris pertama (Row1) akan LOW sehingga data baris yang dibaca adalah 0111, atau tombol yang ditekan tombol SW5 maka data pada baris ke 2 akan LOW sehingga data yang terbaca 1011, atau tombol SW9 yang ditekan sehingga data yang terbaca 1101, atau tombol SW13 yang ditekan maka data yang dibaca adalah 1110 dan atau tidak ada tombol pada kolom pertama yang di tekan maka data pembacaan baris akan 1111.

 Mengirimkan logika Low untuk kolom 4 (Col4) dan logika HIGH untuk kolom yang lain kemudian membaca data baris, misal tombol SW1 ditekan maka data baris pertama (Row1) akan LOW sehingga data baris yang dibaca adalah 0111, atau tombol yang ditekan tombol SW5 maka data pada baris ke 2 akan LOW sehingga data yang terbaca 1011, atau tombol SW9 yang ditekan sehingga data yang terbaca 1101, atau tombol SW13 yang ditekan maka data yang dibaca adalah 1110 dan atau tidak ada tombol pada kolom pertama yang di tekan maka data pembacaan baris akan 1111.

2.6 PWM (Pulse Width Modulation)

Pulse Width Modulation (PWM) secara umum adalah sebuah cara memanipulasi lebar sinyal yang dinyatakan dengan pulsa dalam satu periode, untuk mendapatkan tegangan rata-rata yang berbeda. Aplikasi PWM berbasis mikrokontroller biasanya berupa pengendalian kecepatan motor DC, pengendalian motor servo, dan pengaturan nyala terang LED. Oleh karena itu diperlukan pemahaman terhadap konsep PWM itu sendiri. Cara pengaturan kecepatan yang digunakan adalah dengan menggunakan teknik PWM ( Pulse Width Modulation), salah satu teknik untuk mengatur kecepatan motor DC yang umum digunakan.

(21)

Dengan menggunakan PWM kita dapat mengatur kecepatan yang diinginkan dengan mudah. Teknik PWM untuk pengaturan kecepatan motor adalah, pengaturan kecepatan motor dengan cara merubah-rubah besarnya duty cycle pulsa. Pulsa yang yang berubah ubah duty cycle-nya inilah yang menentukan kecepatan motor. Besarnya amplitudo dan frekuensi pulsa adalah tetap, sedangkan besarnya duty cycle berubah-ubah sesuai dengan kecepatan yang diinginkan, semakin besar duty cylce maka semakin cepat pula kecepatan motor, dan sebaliknya semakin kecil duty cycle maka semakin pelan pula kecepatan motor. Sebagai contoh: Bentuk pulsa yang dikirimkan adalah seperti pada gambar 2.10, pulsa kotak dengan duty cycle pulsa 50%. Sedangkan sebagai contoh bentuk pulsa PWM adalah seperti pada gambar 2.11.

Gambar 2.10 Pulsa dengan Duty Cycle 50%

Dengan mengatur besarnya duty cycle pulsa kotak yang dikirimkan, kita dapat mengatur banyaknya logika high yang diberikan pada motor, dengan kata lain mengatur lamanya waktu motor untuk berputar dalam satu periode pulsa. Jika lamanya waktu motor untuk berputar dalam satu periode pulsa ini berubah maka kecepatan purtaran motor juga akan berubah, sesuai dengan duty cycle atau waktu motor untuk berputar dalam satu periode pulsa.

2.6.1 Konsep Dasar PWM

Sinyal PWM pada umumnya memiliki amplitude dan frekuensi dasar yang tetap, namun memiliki lebar pulsa yang bervariasi. Lebar pulsa PWM berbanding lurus dengan amplitude sinyal asli yang belum termodulasi. Artinya, sinyal PWM memiliki frekuensi gelombang yang tetap namun duty cycle bervariasi antara 0%

(22)

hingga 100%. Secara analog setiap perubahan PWM-nya sangat halus, sedangkan secara digital setiap perubahan PWM dipengaruhi oleh resolusi PWM itu sendiri. Resolusi adalah jumlah variasi perubahan nilai dalam PWM tersebut. Misalkan suatu PWM memiliki resolusi 8 bit, berarti PWM ini memiliki variasi perubahan nilai sebanyak 256 variasi mulai dari 0 – 225 perubahan nilai yang mewakili duty cycle 0% – 100% dari keluaran PWM tersebut. A pulse-width modulation sinyal dimulai dengan tegangan yang naik dan turun berulang kali. Metode klasik menciptakan osilasi adalah dengan sirkuit resistor-kapasitor (RC). Sirkuit ini menggunakan RC waktu dengan twist dioda untuk mengubah rasio on-pulsa waktu versus waktu off-pulsa (disebut "siklus").

Gambar

Gambar 2.1 Blok Diagram dan Arsitektur ATmega 32
Gambar 2.2 Pin-pin ATMega32
Tabel 2.2 Fungsi khusus port B  Port  Alternate Function
Tabel 2.3 Fungsi khusus port C  Port  Alternate Function
+7

Referensi

Dokumen terkait

Orangtua yang memiliki posisi strategis dalam keluarga dapat memutuskan pilihan anak secara sepihak sehingga tidak terjalin komunikasi yang efektif dalam pengambilan keputusan memilih

Santri yang memaknakan bahwa keadaan lingkungan fisik di sekolah (pondok pesantren) tidak sesuai dengan harapan dan kebutuhan yang santri miliki maka para santri

Berdasarkan hasil penyajian data pada BAB III, maka dapat diketahui dari hasil baseline 1, intervensi dan baseline 2 bahwa terapi senam perkasa dengan symbolic

Pemerintah telah menetapkan kode desa dalam Peraturan Menteri Dalam Negeri Nomor 39 Tahun 2015 tentang Kode dan Data Wilayah Administrasi Pemerintahan, termasuk

Karena strong coloumn weak beam concept yang dipakai pada desain struktur beton tahan gempa maka besarnya momen yang dipakai dalam menghitung tulangan kolom tidak

Skema kerangka pemikiran Keterangan : : Menyatakan Hubungan/dipengaruhi Petani Pisang Barangan PRODUKSI Penerimaan Pendapatan Bersih Harga Jual Tidak layak Analisis Finansial Usaha

also helped K.H HasyimAsy’ari in managing the affairs of the pesantren. Seventh, the support and respect of many Javanese kyais helped K.H Hasyim Asy’ari in furthering

Penelitian ini tergolong sebagai penelitian penelitian lapangan (field research), dengan pendekatan kualitatif yang berarti bukan berupa angka-angka, data diperoleh