BAB II

advertisement
BAB II
LANDASAN TEORI
2.1 Umum
Secara fisis air bersih diindikasikan dengan keadaannya yang bening, tidak
berwarna dan tidak berbau. Kondisi seperti ini terjadi jika air tidak dikotori oleh
bahan organik atau anorganik. Sedangkan secara optis,air yang tercampuri oleh bahan
pengotor keadaannya akan berubah, mungkin menjadi berwarna atau menjadi keruh.
Air yang keruh akan menyebabkan intensitas cahaya yang masuk kedalamnya menjadi
berkurang. Cahaya yang melewati air yang keruh akan mengalami pengurangan
intensitas cahaya secara mencolok Hal tersebut disebabkan cahaya yang melewati air
keruh mengalami penyerapan atau pemantulan, sehingga hanya sedikit
yang
diteruskan. Berkurangnya intensitas cahaya tersebut dapat dideteksi oleh alat yang
peka terhadap perubahan intensitas cahaya,yaitu fototransistor. Fototransistor dapat
dimanfaatkan sebagai rangkaian pengukur intensitas cahaya. Dengan demikian secara
praktis rangkaian pengukur intensitas cahaya yang bekerja karena perubahan
intensitas cahaya ini dapat digunakan juga untuk mendeteksi tingkat kekeruhan air.
Sebenarnya di pasaran telah tersedia alat untuk menentukan tingkat kekeruhan
air, misalnya alat yang dinamakan Turbidymeter. Sayangnya alat tersebut berharga
sangat mahal, sehingga hanya pihak-pihak
(biasanya perusahaan) tertentu saja yang
memilikinya. Oleh karena itu kegiatan pengembangan rancang bangun alat pengukur
tingkat kekeruhan air ini memiliki prospek kedepan yang bagus.
Universitas Sumatera Utara
2.2 Mikrokontroler Atmega8535
Mikrokontroler sesuai namanya adalah suatu alat atau komponen pengontrol
atau pengendali yang berukuran mikro atau kecil. Sebelum ada mikrokontroler,
telah ada terlebih dahulu muncul mikroprosesor. Bila dibandingkan dengan
mikroprosesor,mikrokontroler jauh lebih unggul karena terdapat berbagai
alasan, diantaranya :
a.
Tersedianya I/O
I/O
dalam
mikrokontroler
sudah
tersedia
sementara
pada
mikroprosesor dibutuhkan IC tambahan untuk menangani I/O tersebut. IC I/O
yang dimaksud adalah PPI 8255. (Syahrul.2012)
b.
Memori Internal
Memori merupakan media untuk menyimpan program dan data sehingga
mutlak harus ada. Mikroprosesor belum memiliki memori internal sehingga
memerlukan IC memori eksternal. Dengan kelebihan-kelebihan di atas, ditambah
dengan harganya yang relatif murah sehingga banyak penggemar elektronika yang
kemudian beralih ke mikrokontroler. Namun demikian, meski memiliki berbagai
kelemahan, mikroprosesor tetap digunakan sebagai dasar dalam mempelajari
mikrokontroler. Inti kerja dari keduanya adalah sama, yakni sebagai pengendali
suatu sistem.
Mikrokontroler adalah otak dari suatu sistem elektronika seperti halnya
mikroprosesor sebagai otak komputer. Namun mikrokontroler memiliki nilai
tambah karena didalamnya sudah terdapat memori dan sistem input/output dalam
suatu kemasan IC. Mikrokontroler AVR (Alf and Vegard’s RISC processor)
standar memiliki arsitektur 8-bit, dimana semua instruksi dikemas dalam kode 16-
Universitas Sumatera Utara
bit dan sebagian besar instruksi dieksekusi dalam satu siklus clock. Berbeda
dengan instruksi MCS-51 yang membutuhkan 12 siklus clock karena memiliki
arsitektur CISC (seperti komputer).(Dedi.2010)
Gambar 2.1 Blok Diagram ATMega8535
Dari gambar tersebut dapat dilihat bahwa Atmega8535 memiliki
bagian sebagai berikut :
1.
Saluran I/O sebanyak 32 buah, yaitu Port A, Port B, Port C, 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.
6.
SRAM sebesar 512 byte.
7.
Memori Flash sebesar 8 kb dengan kemampuan Read While Write.
8.
Unit interupsi internal dan eksternal.
Universitas Sumatera Utara
9.
Port antarmuka SPI.
10. EEPROM sebesar 512 byte yang dapat diprogram saat operasi.
11. Antarmuka komparator analog.
12. Port USART untuk komunikasi serial
Secara umum, AVR dapat dikelompokkan menjadi 4 kelas, yaitu keluarga
ATTiny, keluarga AT90Sxx, keluarga ATMega dan AT89RFxx. Pada dasarnya
yang membedakan masing-masing kelas adalah memori, peripheral, dan
fungsinya. Dari segi arsitektur dan instruksi yang digunakan, mereka bisa
dikatakan hampir sama. Oleh karena itu, dipergunakan salah satu AVR produk
Atmel, yaitu Atmega8535. Selain mudah didapatkan dan lebih murah
Atmega8535 juga memiliki fasilitas yang lengkap. Untuk tipe AVR ada 3 jenis
yaitu ATTiny, AVR klasik, dan ATMega. Perbedaannya hanya pada fasilitas
dan I/O yang tersedia serta fasilitas lain seperti ADC, EEPROM, dan lain
sebagainya. Salah satu contohnya adalah ATMega 8535. Memiliki teknologi
RISC dengan kecepatan maksimal 16 MHz membuat ATMega 8535 lebih cepat
bila dibandingkan dengan varian MCS51.Adapun blok diagramnya sebagai
berikut :
Gambar 2.2 Deskripsi Pin AT Mega 8535
Universitas Sumatera Utara
Mikrokontroler Atmega8535 mempunyai jumlah pin sebanyak 40 buah,
dimana 32 pin digunakan untuk keperluan port I/O yang dapat menjadi pin
input/output sesuai konfigurasi. Pada 32 pin tersebut terbagi atas 4 bagian (port),
yang masing-masingnya terdiri atas 8 pin. Pin-pin lainnya digunakan untuk
keperluan rangkaian osilator, supply tegangan, reset, serta tegangan referensi
untuk ADC. Untuk lebih jelasnya, (Agus. 2005).
Berikut ini adalah susunan pin-pin dari Atmega8535;
•
VCC merupakan pin yang berfungsi sebagai pin masukkan catu daya
•
GND merupakan pin ground
•
Port A (PA0..PA7) merupakan pin I/O dua arah dan pin masukan ADC
•
Port B (PB0..PB7) merupakan pin I/O dua arah dan pin fungsi khusus,
yaitu Timer/Counter, Komparator Analog, dan SPI
•
Port C (PC0..PC7) merupakan pin I/O dua arah dan pin fungsi khusus,
yaitu TWI, Komparator Analog, dan Timer Oscilator
•
Port D (PD0..PD7) merupakan pin I/O dua arah dan pin fungsi khusus,
yaitu Komparator Analog, Interupsi Iksternal dan komunikasi serial
USART
•
Reset merupakan pin yang digunakan untuk mereset mikrokontroler
•
XTAL1 dan XTAL2 merupakan pin masukkan clock eksternal
(osilator menggunakan kristal, biasanya dengan frekuensi 11,0592
MHz).
Universitas Sumatera Utara
2.3 Port-Port Pada Atmega8535 Dan Fungsinya
Port A
Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan
internal pull-up resistor (dapat diatur per bit). Output buffer Port A dapat memberi
arus 20 mA dan dapat mengendalikan display LED secara langsung. Data
Direction Register port A (DDRA) harus disetting terlebih dahulu sebelum Port A
digunakan. Bit-bit DDRA diisi 0 jika ingin memfungsikan pin-pin port A yang
bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, kedelapan
pin port A juga digunakan untuk masukan sinyal analog bagi A/D converter.
Port B
Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan
internal pull-up resistor (dapat diatur per bit). Output buffer Port B dapat memberi
arus 20 mA dan dapat mengendalikan display LED secara langsung. Data
Direction Register port B (DDRB) harus disetting terlebih dahulu sebelum Port B
digunakan. Bit-bit DDRB diisi 0 jika ingin memfungsikan pin-pin port B yang
bersesuaian sebagai input, atau diisi 1 jika sebagai output. Pin-pin port B juga
memiliki untuk fungsi-fungsi alternatif khusus seperti yang dapat dilihat dalam
tabel berikut
Universitas Sumatera Utara
Tabel 2.1 Fungsi Pin-pin Port B
Port C
Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan
internal pull-up resistor (dapat diatur per bit). Output buffer Port C dapat memberi
arus 20 mA dan dapat mengendalikan display LED secara langsung. Data
Direction Register port C (DDRC) harus disetting terlebih dahulu sebelum Port C
digunakan. Bit-bit DDRC diisi 0 jika ingin memfungsikan pin-pin port C yang
bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, dua pin port
C (PC6 dan PC7) juga memiliki fungsi alternatif sebagai oscillator untuk
timer/counter 2.
Port D
Merupakan 8-bit directional port I/O. Setiap pinnya dapat menyediakan
internal pull-up resistor (dapat diatur per bit). Output buffer Port D dapat memberi
arus 20 mA dan dapat mengendalikan display LED secara langsung. Data
Universitas Sumatera Utara
Direction Register port D (DDRD) harus disetting terlebih dahulu sebelum Port D
digunakan. Bit-bit DDRD diisi 0 jika ingin memfungsikan pin-pin port D yang
bersesuaian sebagai input, atau diisi 1 jika sebagai output. Selain itu, pin-pin port
D juga memiliki untuk fungsi-fungsi alternatif khusus seperti yang dapat dilihat
dalam tabel berikut.
Tabel 2.2 Fungsi Pin-pin Port D
RESET
RST pada pin 9 merupakan reset dari AVR. Jika pada pin ini diberi
masukan low selama minimal 2 machine cycle maka system akan di-reset.
XTAL1
XTAL1 adalah masukan ke inverting oscillator amplifier dan input ke
internal clock operating circuit
XTAL2
XTAL2 adalah output dari inverting oscillator amplifier.
Universitas Sumatera Utara
AVcc
Avcc adalah kaki masukan tegangan bagi A/D Converter. Kaki ini harus
secara eksternal terhubung ke Vcc melalui lowpass filter.
AREF
AREF adalah kaki masukan referensi bagi A/D Converter. Untuk
operasionalisasi ADC, suatu level tegangan antara AGND dan Avcc harus
diberikan ke kaki ini
AGND
AGND adalah kaki untuk analog ground. Hubungkan kaki ini ke GND, kecuali
jika board memiliki analog ground yang terpisah
2.4 Peta Memori ATMega8535
ATMega8535 memiliki dua jenis memori yaitu Program Memory dan
Data Memory ditambah satu fitur tambahan yaitu EEPROM Memory untuk
penyimpan data.(Wardhana.2006)
2.4.1
Program Memory
ATMega8535 memiliki On-Chip In-System Reprogrammable Flash
Memory untuk menyimpan program. Untuk alasan keamanan, program memory
dibagi menjadi dua bagian, yaitu Boot Flash Section dan Application Flash
Section. Boot Flash Section digunakan untuk menyimpan program Boot Loader,
yaitu program yang harus dijalankan pada saat AVR reset atau pertama kali
diaktifkan.
Application Flash Section digunakan untuk menyimpan program aplikasi
yang dibuat user. AVR tidak dapat menjalakan program aplikasi ini sebelum
Universitas Sumatera Utara
menjalankan program Boot Loader. Besarnya memori Boot Flash Section dapat
diprogram dari 128 word sampai 1024 word tergantung setting pada konfigurasi
bit di register BOOTSZ. Jika Boot Loader diproteksi, maka program pada
Application Flash Section juga sudah aman.(Agus.2005)
Gambar 2.3 Peta Memori Program
2.4.2 Data Memory
.
Gambar 2.4 Peta Memori Data
Gambar berikut menunjukkan peta memori SRAM pada ATMEGA 8535.
Terdapat 608 lokasi address data memori. 96 lokasi address digunakan untuk
Register File dan I/O Memory sementara 512 likasi address lainnya digunakan
Universitas Sumatera Utara
untuk internal data SRAM. Register file terdiri dari 32 general purpose working
register, I/O register terdiri dari 64 register
2.4.3
EEPROM Data Memory
ATMEGA 8535 memiliki EEPROM 8 bit sebesar 512 byte untuk
menyimpan data. Loaksinya terpisah dengan system address register, data register
dan control register yang dibuat khusus untuk EEPROM. Alamat EEPROM
dimulai dari $000 sampai $1FF.
2.4.4
Status Register (SREG)
Status register adalah register berisi status yang dihasilkan pada setiap
operasi yang dilakukan ketika suatu instruksi dieksekusi. SREG merupakan
bagian dari inti CPU mikrokontroler.
Gambar 2. 6 Status Register ATMega 8535
•
Bit 7 – I : Global Interrupt Enable
Jika bit Global Interrupt Enable diset, maka fasilitas interupsi dapat
dijalankan. Bit ini akan clear ketika ada interrupt yang dipicu dari
hardware, setelah program interrupt dieksekusi, maka bit ini harus di set
kembali dengan instruksi SEI.
•
Bit 6 – T : Bit Copy Storage
Universitas Sumatera Utara
Instruksi bit copy BLD dan BST menggunakan bit T sebagai sumber atau
tujuan dalam operasi bit.
•
Bit 5 – H: Half Carry Flag
•
Bit 4 – S : Sign Bit
Bit S merupakan hasil exlusive or dari Negative Flag N dan Two’s
Complement Overflow Flag V.
•
Bit 3 – V : Two’s Complement Overflow Flag
Digunakan dalam operasi aritmatika
•
Bit 2 – N : Negative Flag
Jika operasi aritmatika menghasilkan bilangan negatif, maka bit ini akan
set.
•
Bit 1 – Z : Zero Flag
Jika operasi aritmatika menghaslkan bilangan nol, maka bit ini akan set.
•
Bit 0 – C : Carry F
•
lag
Jika suatu operasi menghasilkan Carry, maka bit ini akan set.
2.5 Komunikasi Serial
Komunikasi data serial ialah komunikasi dilakukan per bit dengan
mengirimkan dan menerima data 8 bit secara satu per satu, sedangkan komunikasi
data parallel dilakukan dengan mengirimkan dan menerima data 8 bit secara
bersamaan atau sekaligus. Paralel adalah sistem pengiriman data digital,dimana
beberapa bit data dikirim pada suatu saat dengan jalur terpisah. Dikenal 2 cara
komunikasi data secara serial, yaitu komunikasi data serial sinkron dan
Universitas Sumatera Utara
komunikasi data serial asinkron. Pada komunikasi data serial asinkron, clock
dikirimkan bersama-sama dengan data serial tetapi clock tersebut dibangkitkan
sendiri-sendiri baik pada sisi pengirim maupun sisi penerima. Sedangkan
komunikasi data serial asinkron tidak diperlukan clock karena data dikirimkan
dengan kecepatan tertentu. Baik pada pengirim maupun penerima.
2.5.1
Komunikasi Serial pada ATmega8535
Peralatan komunikasi Serial pada ATmega8535 sudah terintegrasi pada
system Chip. Dan masing-masing registernya baik data maupun kontrol
dihubungkan dengan register Input-Output atau Port, sebagaimana peralatan
lainnya. Sehingga User (kita) cukup hanya mengakses register-register yang
berhubungan dengan Serial inilah untuk mempengaruhi atau memanipulasi
peralatan tersebut. Data dikirim melalui beberapa jalur data. Biasanya masingmasing dengan kabel tersendiri.Pada prisipnya register-register peralatan ini hanya
5 buah. UDR, UCSRA, UCSRB, UCSRC, dan UBRR. (Wardhana .2006)
USART merupakan komunikasi yang memiliki fleksibilitas tinggi, yang
dapat digunakan untuk melakukan transfer data baik antar mikrokontroler maupun
dengan modul-modul eksternal termasuk PC yang memiliki fitur UART.
2.5.2
UDR (USART Data Register)
UDR merupakan tempat tampungan data yang digunakan saat
proses pengiriman dan penerimaan data. Kita harus menuliskan data
byte-demi-byte pada UDR ini untuk mengirimkan data menggunakan
USART ini. Termasuk juga saat proses penerimaan data. Data yang
Universitas Sumatera Utara
diterima dari USART akan ditampung ke dalam UDR. USART kemudian
memberitahukan kepada user (kita) melalui beberapa bendera, maupun
interupsi, saat 1 byte data yang diterima sudah lengkap, dan hendak
bersiap untuk menerima 1-byte data berikutnya. User (kita) diminta untuk
segera mengambil data pada UDR sebelum UDR ditimpa oleh data byte
yang baru. Demikian tansfer data pada Serial ini, dilakukan byte demi byte
dengan menggunakan UDR.
2.5.3
UCSRA, UCSRB, UCSRC (Usart Control and Status Register)
Tiga register ini adalah register-register untuk mengontrol panampilan dari
USART. Bagaimana data ditangani, jumlah bit setiap datanya, apakah
menggunakan paritas, jumlah stop bitnya, dan lain sebagainya yang berhubungan
dengan pengaturan. Termasuk juga berisi bendera-bendera yang digunakan untuk
mengatahui sampai di mana proses yang sedang terjadi. Setiap bit dalam 3 register
tersebut mengandung sebuah arti yang khusus, dan berpengaruh yang khusus pula.
2.5.4
UBRR (Usart Baud Rate Register)
Register ini pencacah (counter) yang digunakan untuk membentuk baud
rate. Beberapa mikro-kontroller membutuhkan sebuah timer untuk membuat baud
rate, namun dalam AVR keperluan tersebut didapat dari sebuah peralatan khusus
sehingga tidak perlu menggangu peralatan lain. UBRR ini mirip dengan sebuah
counter Auto reload yang setiap overflownya akan menghasilkan clock untuk
baud rate. Dengan lebar total 12-bit, maka akan memberikan kita banyak
kemungkinan tinggi baud rate yang bisa kita gunakan.
Universitas Sumatera Utara
Universitas Sumatera Utara
2.6 Bahasa Pemrograman Mikrokontroler
Pengembangan sebuah sistem menggunakan mikrokontroler AVR buatan
ATMEL menggunakan software AVR STUDIO dan CodeVisionAVR. AVR
STUDIO merupakan software yang digunakan untuk bahasa assembly yang
mempunyai fungsi yang sangat lengkap, yaitu digunakan untuk menulis program,
kompilasi, simulasi dan download program ke IC mikrokontroler AVR.
Sedangkan CodeVisionAVR merupakan software C-cross Compiler, dimana
program dapat ditulis dalam bahasa C, CodeVision memiliki IDE (Integrated
development
Environment)
yang
lengkap,
dimana
penulisan
program,
compile,link, pembuatan kode mesin (assembler) dan download program ke chip
AVR dapat dilakukan dengan CodeVision, selain itu ada fasilitas terminal, yaitu
melakukan komunikasi serial dengan mikrokontroler yang sudah di program.
Proses download program ke IC mikrokontroler AVR dapat menggunakan System
programmable Flash on-Chip mengizinkan memori program untuk diprogram
ulang dalam sistem menggunakan hubungan serial SPI.
2.6.1
CodevisionAVR
CodeVisionAVR
merupakan
sebuah
cross-compiler
C,
Integrated
Development Environtment (IDE), dan Automatic Program Generator yang
didesain untuk mikrokontroler buatan Atmel seri AVR. CodeVisionAVR dapat
dijalankan pada sistem operasi Windows 95, 98, Me, NT4, 2000, dan XP. Crosscompiler C mampu menerjemahkan hampir semua perintah dari bahasa ANSI C,
sejauh yang diijinkan oleh arsitektur dari AVR, dengan tambahan beberapa fitur
Universitas Sumatera Utara
untuk mengambil kelebihan khusus dari arsitektur AVR dan kebutuhan pada
sistem embedded.
File object COFF hasil kompilasi dapat digunakan untuk keperluan
debugging pada tingkatan C, dengan pengamatan variabel, menggunakan
debugger Atmel AVR Studio. IDE mempunyai fasilitas internal berupa software
AVR Chip In-System Programmer yang memungkinkan Anda untuk melakukan
transfer program kedalam chip mikrokontroler setelah sukses melakukan
kompilasi/asembli secara otomatis. Software In-System Programmer didesain
untuk bekerja dengan Atmel STK500/AVRISP/AVRProg, Kanda Systems
STK200+/300, Dontronics DT006, Vogel Elektronik VTEC-ISP, Futurlec JRAVR
dan MicroTronics ATCPU/Mega2000 programmers/development boards.
Untuk keperluan debugging sistem embedded, yang menggunakan
komunikasi serial, IDE mempunyai fasilitas internal berupa sebuah Terminal.
Selain library standar C, CodeVisionAVR juga mempunyai library tertentu untuk:
•
Modul LCD alphanumeric
•
Bus I2C dari Philips
•
Sensor Suhu LM75 dari National Semiconductor
•
Real-Time Clock: PCF8563, PCF8583 dari Philips, DS1302 dan DS1307
dari Maxim/Dallas Semiconductor
•
Protokol 1-Wire dari Maxim/Dallas Semiconductor
•
Sensor Suhu DS1820, DS18S20, dan DS18B20 dari Maxim/Dallas
Semiconductor
•
Termometer/Termostat DS1621 dari Maxim/Dallas Semiconductor
•
EEPROM DS2430 dan DS2433 dari Maxim/Dallas Semiconductor
Universitas Sumatera Utara
•
SPI
•
Power Management
•
Delay
•
Konversi ke Kode Gray
CodeVisionAVR juga mempunyai Automatic Program Generator bernama
CodeWizardAVR, yang mengujinkan Anda untuk menulis, dalam hitungan menit,
semua instruksi yang diperlukan untuk membuat fungsi-fungsi berikut:
•
Set-up akses memori eksternal
•
Inisialisasi port input/output
•
Inisialisasi interupsi eksternal
•
Inisialisasi Timer/Counter
•
Inisialisasi Watchdog-Timer
•
Inisialisasi UART (USART) dan komunikasi serial berbasis buffer yang
digerakkan oleh interupsi
•
Inisialisasi Pembanding Analog
•
Inisialisasi ADC
•
Inisialisasi Antarmuka SPI
•
Inisialisasi Antarmuka Two-Wire
•
Inisialisasi Antarmuka CAN\
•
Inisialisasi Bus I2C, Sensor Suhu LM75, Thermometer/Thermostat
DS1621 dan Real-Time Clock PCF8563, PCF8583, DS1302, dan DS1307
•
Inisialisasi Bus 1-Wire dan Sensor Suhu DS1820, DS18S20
•
Inisialisasi modul LCD.
Universitas Sumatera Utara
2.7 MAX/ HIN/ RS 232
Modul ini dapat difungsikan sebagai jalur komunikasi antara komputer
atau mikrokontroler berantarmuka UART RS232 / TTL dengan modul atau
jaringan berantarmuka UART RS485 half-duplex. RS232-RS485 Converter
merupakan suatu pengubah level tegangan dua arah antara RS232/TTL dan
RS485. Modul ini dapat difungsikan sebagai jalur komunikasi antara computer
atau mikrokontroler berantarmuka UART RS232 dengan modul atau jaringan
berantarmuka UART RS485.
Spesifikasi
1. Mengubah level tegangan RS232 atau TTL menjadi RS485 dan
sebaliknya.
2. Mengakomodasi baud rate 300 bps hingga 115200 bps.
3. Dapat dikonfigurasi sebagai DCE (Data Communication Equipment) atau
DTE (Data Terminal Equipment).
4. Arah data pada jalur RS485 dapat dikendalikan secara manual (sisi
RS232/TTL menggunakan 2 jalur data dan 1 jalur kontrol) ataupun
otomatis (sisi RS232/TTL hanya menggunakan 2 jalur data).
5. Tersedia pengaturan bias+, terminator dan bias- untuk jalur RS485.
6. Membutuhkan tegangan + 9VDC sebagai catu daya.
Universitas Sumatera Utara
2.8 Modul ADC
Modul ADC( Analog to digital converter) terdiri atas 5 masukkan di Bandar
A (PORT A <0:3,5>) dan 3 masukkan di Bandar E. Masukkan analog
memuati (charges) kapasitor “ sample and hold” yang memeberikan keluaran
nya kepada modul ADC dan modul ini memeberikan hasil konversi secara
successive kepada register hasil ADRESL dalam ukuran 10 bit. Modul ini
dapat beroperasi walaupun dalam keadaan sleep dengan syarat penabuh ADC
diambil dari osilator RC internal. Modul ini memepunyai 4 register khusus:
ADRESH memegang data hasil konversi byte tinggi
ADRESL memegang data hasil konversi byte rendah
ADCON0 memegang operasi ADC.
ADCON1 memegang fungsi pen pen Bandar ADC
DAC sederhana dapat di buat dengan menggunakan rangkaian resistor yang
di susun sebagai tangga R-2R DAC ini di susun menggunakan beberapa
resistor dengan resistansi sebesar R dan beberapa resistor dengan
menggunakan beberapa resistor lain dengan rsistansi sebesar 2R. JUmlah bit
DAC tanggan R-2R dapat di buat sekehendak hati. Tentu saja tergantung
jumlah tingkat tegangan yang diinginkan.
2.9 Menggunakan port untuk menyalakan LED
Jika tegangan pada anoda LED lebih positif terhadap katoda nya sekitar
1,7 volt maka LED akan menyala. Jika anoda dihubungkan dengan catu positif
melalui resistor, sementara katoda di hubungkan dengan jalur pada melalui
resistor,sementara katoda dihubungkan dengan jalur pada port,maka LED akan
Universitas Sumatera Utara
menyala jika jalur port tersebut bernilai 0 (yang artinya 0 volt,yang dengan
demikian anoda lebih positif dibandingkan katoda dan akan padam jika jalur port
bernilai 1 (yang artinya 5 volt,sehingga anoda memilki tegangan yang sama
dengan katoda.
2.9 Register Port Masukkan/keluaran Paralel
Register port masukkan/keluaran paralele merupakan register yang
digunakan
sebagai
buffer
pada
port
masukkan/
keluaran
P0,P1,P2,P3.Register port masukkan/keluaran berada di sfr dengan alamat
seperti pada table di bawah ini.
Tabel 2.3 Alamat Port di SFR
Port
Alamat di sfr
P0
80h
P1
90H
P2
A0h
P3
B0h
Register port masukkan/keluaran parallel dapat dialamati perbit. Alamat
port P0,P1,P2 dan P3 didefenisikan di dalam file header unutk mikrokontroler
8535 yang disertakan dalam pemograman bahasa c
Universitas Sumatera Utara
Download