Bab ini membahas dasar teori untuk penyelesaian tugas akhir. Dasar teori yang diberikan meliputi Mikrokontroler Visual Basic 6.0,dan Microsoft Acces.
BAB III ANALISIS DAN DESAIN SISTEM
Dalam bab ini akan dibahas analisa dan desain sistem secara terstruktur, yang dilengkapi dengan beberapa diagram dan algoritma.
BAB IV IMPLEMENTASI SISTEM
Bab ini membahas spesifikasi sistem, perangkat apa saja yang berhubungan dengan sistem dan berbagai macam implementasi sistem lainnya.
BAB V UJI COBA DAN EVALUASI
Bab ini membahas scenario uji coba yang akan dilaksanakan dan pelaksanaan dari uji coba atau testing terhadap sistem.
BAB VI PENUTUP
Bab ini adalah bab terakhir yang menyajikan kesimpulan serta saran dari apa yang telah diterangkan dan diuraikan dari bab-bab sebelumnya.
BAB II DASAR TEORI 2.1 Hardware
Perangkat keras, merupakan salah satu element dari sistem
komputer, suatu alat yang bisa dilihat dan diraba oleh manusia secara
langsung, yang mendukung proses komputerisasi.
Dalam bahasa Indonesia disebut dengan perangkat keras.
Merupakan perangkat yang dapat kita lihat dan dapat kita sentuh secara
fisik, seperti perangkat perangkat masukan, perangkat pemroses, maupun
perangkat keluaran.
Peralatan ini umumnya cukup canggih. Dia dapat bekerja
berdasarkan perintah yang ada padanya, yang disebut juga dengan
instruction set. Dengan adanya perintah yang dimengerti oleh mesin
tersebut, maka perintah tersebut melakukan berbagai aktifitas kepada
mesin yang dimengerti oleh mesin tersebut sehingga mesin bisa bekerja
berdasarkan susunan perintah yang didapatkan olehnya.
2.1.1 Mikrokontroler ATEMEGA 8535
Mikrokontroller ATmega8535 merupakan mikrokontroller generasi
AVR (Alfand Vegard s Risk processor). Mikrokontroller AVR memiliki
arsitektur RISC(Reduced Instruction Set Computing) 8 bit, dimana semua
instruksi dikemas dalam kode 16-bit (16-bits word) dan sebagian besar
Gambar 2.1. Diagram Blok Fungsional ATmega8535
(http://insansainsprojects.files.wordpress.com/ )diakses 29 maret 2011 Gambar 2.1. memperlihatkan bahwa ATmega8535 memiliki bagian sebagai
berikut:
1. Saluran I/O sebanyak 32 buah, yaitu Port A, Port B, Port C, dan Port D.
2. ADC 10 bit sebanyak 8 saluran.
3. Tiga buah Timer/Counter dengan kemampuan pembandingan.
4. CPU yang terdiri atas 32 buah register.
5. Watchdog Timer dengan osilator internal
7. Memori Flash sebesar 8 Kb dengan kemampuan Read While Write.
8. Unit interupsi internal dan eksternal.
9. Port antarmuka SPI.
10. EEPROM (Electrically Erasable Programmable Read Only Memory)
Sebesar 512 byte yang dapat diprogram saat operasi.
11. Antarmuka komparator analog.
12. Port USART untuk komunikasi serial dengan kecepatan maksimal
2,5Mbps.
13. Sistem mikroprosessor 8 bit berbasis RISC dengan kecepatan maksimal
16MHz.
2.1.1.1. Konfigurasi Pin ATmega8535
Gambar 2.2 Konfigurasi Pin ATmega8535(diambil dari data sheet ATmega8535) ( http://mylifemyidea.com/tag/automation/ diakses 29 maret 2011.)
Konfigurasi pin ATmega8535 dapat dilihat pada Gambar 2.2. Secara
fungsional konfigurasi pin ATmega8535 sebagai berikut :
1. VCC merupakan pin yang berfungsi sebagai pin masukan catu daya.
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.
5. Port C (PC0..PC7) merupakan pin I/O dua arah dan pin khusus untuk
TWI,Komparator analog, dan Timer Oscilator.
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 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.
2.1.1.2 Peta Memori
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.Register
dengan fungsi umum menempati space data pada alamat terbawah,yaitu $00
sampai $1F, register khusus untuk menangani I/O dan control mikrokontroller
menempati 64 alamat $20 hingga $5F, sedangkan SRAM 512 byte pada alamat
Gambar 2.3. Konfigurasi Memori Data ATmega8535
(diambil dari data sheet ATmega8535) http://mylifemyidea.com/tag/automation/
Memori program yang terletak dalam Flash PEROM tersusun dalam word
karena setiap instruksi memiliki lebar 16-bit atau 32-bit. AVR ATmega8535
memiliki 4 Kbyte x 16-bit Flash PEROM dengan alamat mulai dari $000 sampai
$FFF. AVR memiliki 12-bit Program Counter (PC) sehingga mampu
mengalamati isi Flash.
Gambar 2.4. Memori Program ATmega8535 (diambil dari data sheet ATmega8535)
ATmega8535 juga memiliki memori data berupa EEPROM 8-bit sebanyak 512
byte. Alamat EEPROM dimulai dari $000 sampai $1FF.
Status Register (SREG)
Status Register merupakan register berisi status yang dihasilkan pada
setiap operasi yang dilakukan ketika suatu instruksi dieksekusi. SREG merupakan
bagian dari inti CPU mikrokontroller.
Gambar 2.5. Status Register ATmega8535
(http://knowlagee.wordpress.com 28 maret 2011)
a. Bit 7 – I : Global Interrupt Enable
Bit yang harus diset untuk meng-enable interupsi.
b. 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
menggunakan instruksi BST, dan sebaliknya bit-T dapat disalin kembali
ke suatu bit dalam register GPR menggunakan instruksi BLD.
c. Bit 5 – H : Half Carry Flag
d. Bit 4 – S : Sign Bit
Bit-S merupakan hasil operasi EOR antara flag-N (negative) dan flag-V
(two s complement overflow).
e. Bit 3 – V : Two s Complement Overf
Bit yang berguna untuk mendukung operasi aritmatika.
Bit akan diset bila suatu operasi menghasilkan bilangan negatif.
g. Bit 1 – Z : Zero Flag
Bit akan diset bila hasil operasi yang diperoleh adalah nol.
h. Bit 0 – C : Carry Flag
Bit akan diset bila suatu operasi menghasilkan carry.
2.1.1.3 Blog Diagram pada Mikrokontroller ATEMEGA 8535
Mikrokontroller ATmega8535 merupakan mikrokomputer CMOS 8 bit
dengan 4 kbytes flash programmbel memory. Arsitektur ATmega8535 ditunjukan
pada Gambar 2.3Atmega8535 mempunyai 32 jalur I/O, 2 buah timer/counter 16
bit, RAM internal 128 x 8 bit dbs. Untuk lebih lengkapnya lihat data sheet.
Gambar 2.6 Blok Diagram Atmega8535
2.1.1.4 Organisasi Memori
Semua piranti ATmega8535 mempunyai alamat program dan
alamat data yang terpisah. Pemisahan memori program dan memori data
membolehkan pengaksesan memori data dengan pengalamatan 8-bit,
sehingga secara cepat disimpan dan dimanipulasi oleh CPU 8-bit.
Meskipun demikian pengalamatan memori data 16-bit tetap dapat
dilakukan, yaitu dengan menggunakan register.
ATmega8535 mempunyai organisasi memori yang terdiri atas:
1. memori program (CODE)
2. memori data (DATA)
2.1.1.4.1 Memori Program (CODE)
Memori program merupakan ruang memori yang digunakan untuk
menyimpan kode program dan konstanta yang sifatnya tetap. Memori
program sifatnya haya bisa dibaca (read only memory) dan tidak bisa
diubah isinya.. Dari 64k byte yang dapat dialamati, maka 4k Byte memori
program lowest terletak dalam chip Mikrokontroler.
2.1.1.4.2 Memori Data (DATA)
Memori Data (RAM) menempati ruang alamat yang terpisah dari
memori program. Dalam 80C51, lowest 128 bytes memori data berada
dalam chip mikrokontroler. Memori data eksternal yang dapat digunakan
sampai 64k byte. Untuk sampai 64Kbytes, eksternal RAM dan dialamati
(read) dan tulis WR (write), selama pengaksesan memori data eksternal.
Ruang memori data dibagi menjadi 3 blok, yaitu 128 bawah (lower), 128
atas (upper), dan SFR (special function register).
2.1.2 Sensor
Sensor adalah device atau komponen elektronika yang digunakan
untuk merubah besaran fisik menjadi besaran listrik sehingga bisa di
analisa dengan menggunakan rangkaian listrik.
2.1.3 Sensor suhu 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.4.
Gambar 2.7. LM 35 basic temperature sensor
(http://diyistheway.blogspot.com tgl 30 maret 2011 )
Vout dari LM 35 ini dihubungkan dengan ADC (Analog To Digital
tegangan 250mV dan 1,5V pada suhu 150oC dengan kenaikan sebesar 10mV/oC
2.1.4 Rangkaian pengemudi Lampu dan kipas
Gambar 2.8 rangkaian kipas Gambar 2.9 rangkaian lampu
Pengendalian redup terangnya lampu, pelan cepatnya putarn kipas angin dengan menggunaka PWM ( pulse Width Modulation ) yang dibangkitkan dari mikrokontroler. Kipas yang digunakan terdiri dari dua buah yaitu satu sebagai penyedot udara luar kedalam agar masuk ke plant sedangkan kipas lain untuk menyedot udara dari dalam keluar.
2.1.5 Memori
Kecanggihan sebuah komputer atau kontroller ditentukan oleh
program yang kita buat. Memori digunakan sebagai tempat untuk
menimpan program, data dan stack. Program adalah kumpulan instruksi
untuk mengerjakan suatu pekerjaan. Data adalah variabel-variabel yang
dapat di ubah saat program berjalan. Stack digunakan untuk menyimpan
alamat kembali (return address) dan juga dapat dipakai untuk menyimpan
data. Umumnya didalam mikrokontroller tersedia 2 jenis memori yaitu
tidak hilang bila catu daya dimatikan, digunakan untuk menyimpan
program. Sedangkan RAM (Random-Access Memory) bersifat bisa dibaca
dan ditulis tetapi isinya bisa hilang bila catu daya dimatikan, digunakan
untuk menyimpan data stack. Dengan berkembangannya teknologi batas
antara ROM dan RAM kini agak kabur. ROM sekarang bisa ditulisi untuk
tipe flash atau EEROM. RAM sekarang juga tidak kehilangaan isinya saat
catu daya dimatikan yaitu pada tipe NVRAM (Non-Volatile RAM).
2.1.5.1. Peta Memori
Peta memori (Memory Map) dapat memberikan informasi kepada
kita dengan lebih jelas, apa diletakkan dimana. Pada sebuah
Mikrokontroller, Peta Memori dibagi menjadi dua yaitu peta memori
program dan peta memori data
FFFF FFFF 1000 0R AND 0FFF 0000 0000 60K BYTES EXTERNAL 4K BYTES INTERNAL 64K BYTES EXTERNAL
Gambar 2.10 Peta Memori Program
Gambar 2.10 menunjukan peta memori program. Peta memori
program menggunkan skema, artinya anda hanya boleh memilih salah satu
skema. Skema gambar sebelah kiri membuat Mikrokontroller mengambil
0FFFh maka Mikrokontroller akan mengambil instruksi dari ROM
eksternal. Alamat dari 0000h sampai 0FFFh adalah sebanyak 1000h atau
4069 atau 4 Kili-Byte. Skema sebalah kanan membuat Mikrokontroller
mengambil semua instruksi dari ROM eksternal. Bagaimana cara memlih
skema tersebut, mikrokontroller menyediakan pin kontrol yang bernama
EA (External Access). Apabila pin ini diaktifkan maka skema sebelah
kanan akan yang dipilih. Pin ini hanaya dibaca mikrokonteoller sesaat
setelah kondisi reset.
Peta memori data ditunjukan oleh Gambar 2.11 Peta memori data
menggunakan skema dan artinya anda disediakan dua skema yang dapat
digunakan bersama-sama. Terlihat bahwa RAM internal mempunyai
alamat yang sama dengan RAM external, cara mengakses mikrokontroller
menyediakan instruksi untuk mengakses masing-masing RAM.
FF 80 7F 00 Internal SFRs Direct Addressing
Direct And Inderect Addressing 64K BYTES EXTERNAL FFFF 0000 AND
Gambar 2.11 Peta Memori Data
Total memori program yang dapat dijangkau oleh Mikrokontroller
adalah 64Kilo-Byte atau dari alamat terendah 0000h sampai alamat
tertinggi FFFFh. Menghubungkan memori eksternal baik ROM atau RAM,
Menggunakan cara tersendiri dan kita bahas secara detail pada modul ini.
Gambar 2.12 Menghubungkan Memori Program Eksternal Dengan
Skema Kedua Seluruh Instruksi Diambil Dari Memori Eksternal
2.1.5.2 . Memori Data (RAM) Internal
Ada yang menarik pada bagian RAM internal. Untuk
Mikrokontroller 89C51 disediakan 256 byte RAM internal yang dibagi
menjadi dua bagian. Bagian pertama kita sebut dengan user area sebanyak
128 byte bagian bawah (lower) dan bagian kedua disebut dengan Special
Function Register sebanyak 128 byte bagian atas (upper)
4K ROM 256 RAM SFR User Area µc FF 80 7F 00
Gambar 2.13 Organisasi RAM Internal
Pada 128 byte bagian bawah, perhatikan Gambar 2.13 32 byte
Instruksi pada program mengenalnya dengan sebutan R0 sampai R7. Dua
bit pada Program Status Word (PSW) digunakan untuk memilih bank
register yang digunakan. Penggunaan instruksi yang mengakses register
akan menghemat kode mesin dibandingkan dengan instruksi yang
mengakses lokasi secara langsung (direct addressing).
16 byte diatas bank register yaitu pada alamat 20h sampai 2Fh merupakan
daerah yang dapat dialamati secara bit. Alamat bit-bit pada daerah ini
adalah 00h sampai 7Fh.
Pendek kata, untuk RAM internal 128 byte bagian bawah, 32 byte
pertama dapar digunakan sebagai bank register, 16 byte berikutnya dapat
dialamati perbit, dan sisanya 80 byte dapat digunakan seperti biasa
SFR User Area Bank 1 Bank 0 Bank 3 Bank 2 8 Bytes 78 7F 70 77 68 6F 60 67 58 5F 50 57 48 4F 40 47 38 3F 30 37 28 2F 20 27 18 1F 10 17 08 0F 00 07 SCRATCHPAD AREA BIT ADDRESSABLE SEMENT REGISTER BANKS SP FF 80 7F 00
Gambar 2.14 128 byte RAM Internal Bagian Bawah (Lower)RAM internal 128
menunjukan SFR untuk Mikrokontroller seri 89C51. SFR ini meliputi alamat
port, bit status dan kontrol, timer, register, stack pointer, akumularor dan lainnya.
Bagian-bagian yang kosong digunakan untuk pengembangan divais
Mikrokontroller selanjutnya. SFR User Area 8 Bytes F8 FF F0 F7 E8 EF E0 E7 D8 DF D0 D7 C8 CF C0 C7 B8 BF B0 B7 A8 AF A0 A7 98 9F 90 97 88 8F 80 87 FF 80 7F 00 SP IMOD SBUF DPL IL0 B AOC PSW P E P3 P0 ICON P2 SCON P1 DPH
IL1 IHU IH1
PCON BIT ADDRESSABLE
Gambar 2.15 128 byte RAM Bagian Atas
2.1.6 Special Function Registers (SFR)
RAM internal 128 byte atas merupakan tempat register fungsi
khusus SFR untuk Mikrokontroller seri 89C51. SFR ini meliputi alamat
port, bit status dan kontrol, timer, register, stack pointer, akumulator dan
lainnya. Bagian-bagian yang kosong digunakan untuk pengembangan
divais Mikrokontroller selanjutnya. Fungsi dari masing-masing register
dijelaskan pada bagian berikut :
a) Accumulator
ACC merupakan register akumulator. Pada program ditulis dengan
b) Register B
Register B digunakan pada operasi perkalian dan pembagian. Pada
instruksi-instruksi yang lain berfungsi seperti register umumnya.
c) Program Status Word (PSW)
PSW berisi informasi status program.
d) Stack Pointer (SP)
Register SP (Stack Pointer) mempunyai lebar 8 bit. Nilai dari
register SP dan bertambah sebelum data disimpan selama
menjalankan instruksi PUSH atau CALL. Karena nilai register SP
dapat berada sembarang di 128 byte RAM internal bagian bawah
maka setelah kondisi reset nilai register SP akan diisi 07h. Hal ini
menyebabkan lokasi stack berada mulai dialamat 08h. Selama
program berjalan yakinkan bila stack pointer tidak menabrak data
anda atau tidak melebihi 7Fh
e) Data Pointer (DPTR)
DPTR terdiri dari high byte (DPH) dan low byte (DPL). Fungsi
utamanya adalah sebagai tempat alamat 16 bit. Register ini bisa
juga dimanipulasi sebagai sebuah register 16 bit atau 2 buah
register 8 bit yang berdiri sendiri.
f) Port 0 - 3
P0, P1, P2, dan P3 adalah SFR latch dari Port 0, 1, 2, dan 3.
g) Serial Data Buffer
Serial Data Buffer sebenarnya merupakan 2 register yang terpisah,
(untuk menerima data serial). Ketika data dipindahkan ke SBUF,
maka data akan menuju ke transmit buffer di mana data ditampung
untuk pengiriman serial. Memindahkan data ke SBUF berarti
menginisialisasi/memulai transmisi data secara serial. Sebaliknya
bila data dipindahkan dari SBUF, data tersebut berasal dari receive
buffer.
h) Register Timer
Pasangan register (TH0 & TL0), (TH1 & TL1), serta (TH2 & TL2)
adalah register 16.
2.1.7 Struktur dan Cara Kerja Port
Atmega8535 mempunyai 4 port bidirectional (Port 0 - Port 3),
yang masing-masing terdiri dari 8 bit. Setiap port terdiri dari sebuah latch
(Special Function Registers P0 sampai P3), sebuah output driver, dan
sebuah input buffer. Output driver Port 0 dan Port 2, serta input buffer
Port 0 digunakan untuk mengakses memori external. Untuk aplikasi yang
menggunakan memori external, maka Port 0 mengeluarkan 'low order
byte' alamat memori external (A0-A7), yang dimultipleks dengan data (1
byte) yang dibaca atau ditulis. Port 2 mengeluarkan 'high order byte'
alamat memori eksternal (A8-A15) bila alamat yang diperlukan sebanyak
16 bit. Bila alamat yang diperlukan hanya A0-A7 maka output Port 2
sama dengan isi SFR (Special Function Registers). Semua pin Port 3
mempunyai fungsi alternatif selain sebagai port. Fungsi alternatif tersebut
Tabel 2.1 Fungsi Alternatif Port 3
Fungsi alternatif hanya akan aktif bila bitbit yang bersesuaian pada
port SFR berisi '1'. Bila tidak maka output port akan terkunci pada low.
a. Konfigurasi I/O
Diagram latch dan I/O buffer tiap bit dari Port 0 - Port 3. Port 1,2, dan
3 mempunyai pull-up internal. Sedangkan Port 0, konfigurasi outputnya
adalah open drain. Setiap bit I/O ini berdiri sendiri, jadi dapat berfungsi
sebagai input atau output tanpa tergantung satu sama lain. Port 0 dan 2
tidak dapat dipakai sebagai I/O bila digunakan sebagai jalur alamat / data.
Bila port-port tersebut ingin difungsikan sebagai input, maka bit latch
harus berisi '1', yang akan mematikan output driver FET. Sehingga pin-pin
Port 1,2, dan 3 akan 'ditarik' ke high oleh pull-up internal, tetapi bila
diinginkan dapat juga 'ditarik' ke low dengan sumber external. Port 0 agak
PIN Fungsi Alternatif
P3.0 RXD (Port Input Serial)
P3.1 TND (Port Output Serial)
P3.2 INT0 (Interupt External)
P3.3 INT1 (Interupt External)
P3.4 T0 (Input Timer/Counter 0 External)
P3.5 T1 (Input Timer/Counter 1 External)
P3.6 WR (Sinyal Tulis Data Memory External)
berbeda, karena tidak menggunakan pull-up internal. FET pull-up pada
output driver P0 (lihat gambar 6A) hanya digunakan pada saat Port
mengeluarkan '1' selama akses memori external, selain keadaan ini FET
pull-up tidak aktif. Akibatnya bila bit-bit P0 berfungsi sebagai output
maka bersifat open drain. Penulisan logika '1' ke bit latch menyebabkan
kedua FET tidak bekerja, sehingga pin dalam keadaan mengambang
(floating). Pada kondisi ini pin dapat berfungsi sebagai high impedance
input. Port 1,2, dan 3 sering disebut dengan 'quasibidirectional' karena
mempunyai pull-up internal. Saat berfungsi sebagai input maka mereka
akan 'ditarik' ke high dan akan bersifat sebagai sumber arus bila 'ditarik' ke
low secara eksternal. Port 0 sering disebut sebagai 'true-bidirectional',
karena bila dikonfigurasikan sebagai input maka pinpinnya akan
mengambang. Pada saat reset semua port latch akan berlogika '1'.
b. Beban Port dan Antarmuka
Output buffer Port 1,2, dan 3 dapat dibebani 4 input LS TTL.
Bila port berfungsi sebagai input, maka dapat menerima output
opencollector atau open-drain, tetapi transisi '0' ke '1' tidak dapat
berlangsung dengan cepat. Output buffer Port 0 dapat dibebani dengan
8 input LS TTL. Bila Port 0 berfungsi sebagai port, maka diperlukan
pull-up external, kalau digunakan sebagai jalur alamat/data pull-up
tidak diperlukan.
c. Akses Memori
Mengakses memori external ada 2 macam : akses Program
Program Memory external menggunakan signal PSEN (Program Store
Enable) sebagai sinyal baca. Sedangkan untuk mengakses Data
Memory eksternal digunakan RD dan WR (fungsi alternatif P3.7 dan
P3.6) untuk membaca dan menulis ke memori. Membaca Program
Memory external selalu menggunakan alamat 16 bit. Sedangkan untuk
mengakses Data Memory external dapat menggunakan alamat 16 bit
(MOVX @DPTR) atau alamat 8 bit (MOVX @Ri). Pada saat alamat
16 bit digunakan, high byte dari jalur alamat dihasilkan oleh Port 2,
yang dipertahankan selama siklus pembacaan atau penulisan.
Perhatikan bahwa Port 2 mempunyai pull-up yang kuat selama
mengeluarkan bit alamat '1' (pada saat eksekusi instruksi MOVX
@DPTR). Pada saat ini latch Port 2 (SFR) tidak selalu berisi '1', dan
isi SFR Port 2 tidak berubah. Bila siklus memori external tidak segera
diikuti siklus memori external yang lain maka isi SFR Port 2 yang
tidak berubah tersebut akan muncul kembali pada siklus berikutnya.
Bila menggunakan alamat 8 bit (MOVX @Ri), isi SFR Port 2 tetap
sama dengan pin Port 2 selama siklus memori external. Karakteristik
ini memberikan kemampuan paging memori. Low byte dari alamat
bersifat timemultiplexed dengan data byte Port 0, artinya data dan
alamat dihasilkan oleh pin yang sama secara bergantian dengan selang
waktu tertentu. Sinyal alamat / data mengaktifkan kedua FET pada
output buffer Port 0 (lihat gambar 6A). Jadi dalam aplikasi ini pin-pin
Port 0 tidak bersifat sebagai output opendrain, dan tidak memerlukan
menyimpan address byte ke sebuah latch external. Address byte valid
pada saat transisi negatif ALE. Pada siklus penulisan, data yang akan
dituliskan muncul pada Port 0 tepat sebelum WR aktif, dan data ini
tetap ada sampai WR dinonaktifkan. Pada siklus pembacaan, data byte
diterima oleh Port 0 sesaat sebelum sinyal RD dinonaktifkan. Ada 2
kondisi untuk mengakses Program Memory external : 1. Pada saat
sinyal EA aktif, atau 2. Pada saat Program Counter (PC) berisi nilai
lebih besar dari 0FFFH (1FFFH untuk 89C52).
2.1.8 Catu Daya untuk Sistem Mikrokontroller
Kinerja sistem mikrokontroller sangat dipengaruhi pleh perangkat
catu daya yang digunakan. Oleh karena itu, untuk mendapatkan sistem
yang handal, diperlukan sistem catu daya yang stabil. Mikrokontroller
Atmega8535 menggunakan catu daya pada operasi normal dengan
tegangan DC 5V. Pada aplikasi sederhana, kita dapat menggunakan
regulator tegangan DC 5V berupa IC LM7805. Agar tegangan keluaran
pada pin 3 stabil pada 5V, maka tegangan masukkan pada pin 1 hendaklah
antara 7V hingga 24V. di pasaran, IC ini beredar dalam beberapa versi.
Untuk sistem dengan konsumsi daya hingga 1A, dapat digunakan LM7805
dengan kemasan TO-220 yang dilengkapi metal pendingin. Namun, jika
sistem yang dibuat hanya mengkonsumsi daya sekitar 50mA, maka dapat
menggunakan tipe LM7805 dengan kemasan TO-92 yang telah dapat
Gambar 2.16 Catu Daya Sederhana Untuk Mikrokontroller
2.1.9 7-segmen
7-segmen display adalah sebuah rangkaian yang dapat menampilkan
angka-angka desimal maupun heksadesimal. 7-segment display biasa
tersusun atas 7 bagian yang setiap bagiannya merupakan LED (Light
Emitting Diode) yang dapat menyala. Jika 7 bagian diode ini dinyalakan
dengan aturan yang sedemikian rupa, maka ketujuh bagian tersebut dapat
menampilkan sebuah angka heksadesimal.
Gambar 2.17 7-Segmen
7-segmen display membutuhkan 7 sinyal input untuk mengendalikan
setiap diode di dalamnya. Setiap diode dapat membutuhkan input HIGH atau
LOW untuk mengaktifkannya, tergantung dari jenis seven-segmen display
tersebut. Jika Seven-segment bertipe common-cathode, maka dibutuhkan
sinyal HIGH untuk mengaktifkan setiap diodenya. Sebaliknya, untuk yang
LM 7805 220 AC Transformator 22pF 100nF C1 C2 C3 10nF + 5V R = 10k 1 2 3
bertipe common-annide, dibutuhkan input LOW untuk mengaktifkan setiap
diodenya.
Salah satu cara untuk menghasilkan sinyal-sinyal pengendali dari
suatu seven segment display yaitu dengan menggunakan sebuah 7-segmen
decoder atau langsung di kodekan pada mikrokontroler. 7- segmen,
merupakan sekumpulan LED yang dibangun sedemikian rupa sehingga
menyerupai digit, 7-segmen ada dua macam: common anoda dan common
katoda.
Gambar 2.18 Rangkaian Interface ke 7-Segmen
Pada rangkaian tersebut dapat anda perhatikan bagian seven segmen,