Rancang Bangun Kuat Sinyal Radio Pemancar Dengan Dioda Germanium Dan Atmega 8

BAB 2
LANDASAN TEORI

2.1 Dioda Germanium
Dioda adalah komponen aktif semikonduktir yang terdiri dari persambungan
(junction) P-N. Sifat dioda yaitu dapat menghantarkan arus pada tegangan maju
dan menghambat arus pada tegangan balik. Dioda berasal dari pendekatan kata
dua elektroda yaitu anoda dan katoda. Dioda semikonduktor hanya melewatkan
arus searah saja (forward), sehingga banyak digunakan sebagai komponen
penyearah arus. Secara sederhana sebuah dioda bisa kita asumsikan sebuah katup,
dimana katup tersebut akan terbuka manakala air yang mengalir dari belakang
katup menuju kedepan, sedangkan katup akan menutup oleh dorongan aliran air
dari depan katup.

Gambar 2.1 Spesifikasi Dioda Germanium
Simbol Umum Dioda

Gambar 2.2 Simbol Umum Dioda

Universitas Sumatera Utara


Dioda disimbolkan dengan gambar anak panah yang pada ujungnya terdapat garis
yang melintang. Simbol tersebut sebenarnya adalah sebagai perwakilan dari cara
kerja dioda itu sendiri. Pada pangkal anak panah disebut juga sebagai anoda (kaki
positif = P) dan pada ujung anak panah disebut sebagai katoda (kaki negatif = N).
Fungsi Dioda antara lain sebagai berikut:
1. Sebagai penyearah, untuk dioda bridge.
2. Sebagai penstabil tegangan (voltage regulator ), untuk dioda zener.
3. Pengaman/sekering.
4. Sebagai rangkaian clipper , yaitu untuk memangkas/membuang level sinya
yang ada di atas atau dibawah level tegangan tertentu.
5. Sebagai rangkaian clamper , yaitu untuk menambahkan komponen DC kepada
suatu sinya AC.
6. Sebagai pengganda tegangan.
7. Sebagai indikator, untuk LED (light emiting diode).
8. Sebagai sensor panas, contoh aplikasi pada rangkaian power amplifier .
9. Sebagai sensor cahaya, untuk dioda photo.
10. Sebagai rangkaian VCD (voltage controlled oscilator ), untuk dioda varactor

2.2 Mikrokontroler
Mikrokontroler merupakan sistem komputer yang seluruh atau sebagian besar

elemennya dikemas dalam satu chip IC, sehingga sering juga disebut dengan
single chip microcomputer . Mikrokontroler biasa dikelompokkan dalam satu

Universitas Sumatera Utara

keluarga masing-masing mikrokontroler mempunyai spesifikasi tersendiri namun
masih kompatibel dengan pemrogramannya.
Pada saat ini penggunaan mikrokontroler dapat kita temui pada berbagai
peralatan, misalnya peralatan yang terdapat dirumah, seperti telepen digital,
microwave oven, televisi, mesin cuci, sistem keamanan rumah, PDA, dll.

Mikrokontroler dapat kita gunakan untuk berbagai aplikasi misalnya untuk
pengendalian, otomasi industri, akusisi data, telekomunikasi dan lain-lain.
Keuntungan menggunakan mikrokontroler yaitu harganya murah, dapat
diprogram berulang kali, dan dapat kita program sesuai dengan keinginan kita.
Saat ini keluarga mikrokontroler yang ada dipasaran yaitu Intel 8084 dan 8051
(MCS51), Motorola 68HC11, Micochip PIC, Hitachi H8, dan Atmel AVR.
2.2.1 Sejarah Mikrokontroler
Mikrokontroler dikembangkan dari mikroprosesor. Berikut ini sejarah
perkembangan teknologi mikroprosesor dan mikrokontroler.



Tahun 1617, John Napier menemukan sistem untuk melakukan perkalian dan
pembagian berdasarkan logaritma.



Tahun 1694, Gottfriend Wilhelm Leibniz membuat mesin mekanik yang
dapat melakukan operasi +, -, *, /, dan akar kuadrat.



Tahun 1835, Charles Babbage mengusulkan computer digital pertama didunia
menggunakan punched card untuk data dan instruksi, serta program control
dengan unit aritmatika dan unit penyimpanan.



Tahun 1850, George Boole, mengembangkan symbolic logic termasuk
operasi binari (AND, OR, dll)


Universitas Sumatera Utara



Tahun 1946, Von Neuman menyarankan bahwa instruksi menjadi kode
numerik yang disimpan pada memori. Komputer dan semua desain
mikrokontroler didasarkan pada komputer Von Neuman.



Tahun 1948, Transistor ditemukan. Dengan dikembangkannya konsep
software, pada tahun 1948 mulai adanya perkembangan hardware penting

untuk transistor.




Tahun 1959, IC (Integrated Circuit) pertama dibuat.

Tahun 1971, Intel 4004 dibuat, yang merupakan Mikroprosesor pertama.
Terdiri dari 2250 transistor. Kemudian intel membuat Intel 8008,
mikroprosesor 8 bit. Semakin besar ukuran bit berarti mikroprosesor dapat
memproses lebih banyak data.



Tahun 1972, TMS 1000, buatan Texa Instrumen, Mikrokontroler pertama
yang dibuat.



Tahun 1974, beberapa pabrikan IC menawarkan mikroprosesor dan
pengendalian menggunakan mikroprosesor yang ditawarkan pada saat itu
yaitu 8080, 8085, Motorola 6800, signetic 6502, Zilog z80, dan Texas
Instrumens 9900 (16 bit).



Tahun 1978, mikroprosesor 16 bit menjadi lebih umum digunakan yaitu Intel

8086, Motorola 68000 dan Zilog Z8000. Sejak saat itu pabrik mikroprosesor
terus mengembangkan mikroprosesor dengan berbagai keistimewaan dan
asristektur. Mikroprosesor yang dikembangkan termasuk mikroprosesor 32
bit seperti Intel Pentium, Motorola Dragon Ball, dan beberapa mikrokontroler
yang menggunakan ARM core.

Universitas Sumatera Utara

2.2.2 Mikrokontroler ATMEG 8
Atmega 8 adalah low power mikrokontroler 8 bit dengan arsitektur RISC.
Mikrokontroler ini dapat mengeksekusi perintah dalam satu periode clock untuk
setiap instruksi. Berikut ini adalah contoh gambar Atmega 8 yang terdapat pada
gambar 2.3 dibawah ini.

Gambar 2.3 AT MEGA 8
Mikrokontroler ini diproduksi oleh atmel dari seri AVR. Untuk seri AVR
ini banyak jenisnya, yaitu Atmega 8, Atmega 8535, Mega 8515, Mega 16, dan
lain-lain. Mikrokontroler Atmega 8 ini sangat murah dan mempunyai fasilitas
yang sangat memadai untuk mengembangkan berbagai aplikasi.
Keuntungan lainnya dalam menggunakan ATMEGA 8 ini, jika ada

perubahan cara kerja sistem maka kita tidak perlu merubah rangkaiannya, tetapi
hanya dengan merubah program-program yang lama dengan memasukkan
program-program atau instruksi yang baru.
2.2.3 Fitur ATMEGA 8
Beberapa fitur dari Atmega 8 adalah sebagai berikut:
1. Mikrokontroler AVR 8 bit yang memiliki kemampuan tinggi, dengan daya
rendah.
2. Arsitektur RISC dengan throughput mencapai 8 MIPS pada frekuensi 8 Mhz.

Universitas Sumatera Utara

3. Memiliki kapasitas Flash Program 8 Kbyte, EEPROM 512 Byte dan SRAM 1
Kbyte.

4. Saluran I/O sebanyak 22 buah yaitu Port B, Port C, dan Port D.
5. CPU yang terdiri dari 22 register.
6. Unit interupsi internal dan eksternal.
7. Port USART untuk komunikasi serial.
8. Fitur Peripheral
 Tiga buah Timer/Counter dengan kemampuan perbandingan

-

2 (dua) buah Timer/Counter 8 bit dengan Presculer terpisah dan Mode
Compare.

-

1 (satu) buah Timer/Counter 16 bit dengan Presculer terpisah dan
Mode Compare, dan Mode Capture.

 Real Time Counter dengan Oscilator tersendiri.
 4 chanel PWM.

 8 chanel, 10 bit ADC.

 Byte-oriented Two-wire Serial Interface
 Programmable Serial USART.

 Antarmuka SPI.


 Whatchdog Timer dengan oscilator internal.
 On-chip Analog Comparator .

Universitas Sumatera Utara

2.2.4 Pin AVR ATMEGA 8
Kaki (pin) Atmega 8 dapat dilihat pada gambar 2.4 dibawah ini :

Gambar 2.4 Kaki (pin) ATMEGA 8
ATmega 8 memiliki 28 pin, yang masing-masing pinnya memiliki fungsi
yang berbeda-beda baik sebagai port maupun sebagai fungsi lainnya. Berikut akan
dijelaskan fungsi dari masing kaki ATmega 8.
1. VCC merupakan pin yang berfungsi sebagai masukan catu daya.
2. GND merupakan pin Ground.
3. Port B (PB7...PB0)
Didalam Port B terdapat XTAL 1, XTAL 2, TOSC1, TOSC2. Jumlah Port B
adalah 8 buah pin, mulai dari pin B.0 sampai dengan B.7. Tiap pin dapat
digunakan sebagai input maupun output. Port B merupakan sebuah 8-bit bidirectional I/O dengan internal pull-up resistor. Sebagai input, pin-pin yang
terdapat pada port B yang secara eksternal diturunkan, maka akan
mengeluarkan arus jika pull-up resistor diaktifkan. Khusus PB6 dapat

digunakan sebagai input Kristal (inverting oscillator amplifier ) dan input ke

Universitas Sumatera Utara

rangkaian clock internal, bergantung pada pengaturan Fuse bit yang digunakan
untuk memilih sumber clock. Sedangkan untuk PB7 dapat digunakan sebagai
output Kristal (output oscillator amplifier ) bergantung pada pengaturan Fuse
bit yang digunakan untuk memilih sumber clock. Jika sumber clock yang

dapat dipilih oscillator internal, PB7 dan PB6 dapat digunakan sebagai I/O
atau jika menggunakan Asyncronous Timer/Counter 2 PB6 dan PB7 (TOSC2
dan TOSC1) digunakan untuk saluran input timer. Fungsi-fungsi Port B dapat
dilihat lebih mudah seperti pada table di bawah ini :
Table 2.1 Fungsi Khusus Port B
Pin

Fungsi Khusus

PB7


Merupakan pin masukan clock eksternal TOSC1 (Timer Oscillator Pin 1)

PB6

Merupakan pin masukan clock eksternal TOSC2 (Timer Oscillator Pin 2)

PB5

SCK (SPI Bus Serial Clock)

PB4

MISO (SPI Bus Master Input / Slave Output)
MOSI (SPI Bus Master Output /Slave Output)
OC2 (Timer/ Counter 2 Output Compare Match Output)
ŜŜ (SPI Slave Select Input)
OCI B (Timer/Counter 1 Output Compare B Match Output)

PB3
PB2
PB1

OCI A (Timer/Counter 1 Output Compare A Match Output)

PB0 ICP (Timer/Counter 1 Input Coapture Pin)
4. Port C (PC6….PC0)
Port C merupakan sebuah 7-bit bi-directional I/O port yang di dalam masingmasing pin terdapat pull-up resistor. Jumlah pin nya hanya 7 buah mulai dari
pin C.0 sampai dengan pin C.6. Sebagai keluaran/output port C memiliki

karakteristik yang sama dalam hal menyerap arus (sink) ataupun
mengeluarkan arus (source). Jika RSTDISBL Fuse di program, maka PC6
akan berfungsi sebagai pin I/O. Pin ini memiliki karakteristik yang berbeda

Universitas Sumatera Utara

dengan pin-pin yang terdapat port C lainnya. Namun jika RSTDISBL Fuse
tidak diprogram, maka pin ini akan berfungsi sebagai input reset. Dan jika
level tegangan yang masuk ke pin ini rendah dan pulsa yang ada lebih pendek

dari pulsa minimum, maka akan menghasilkan suatu kondisi reset meskipun
clock-nya tidak berkerja.

5. Port D (PD7…PD0)
Port D merupakan 8-bit bi- directional I/O dengan Internal pull-up resistor.
Fungsi dari port ini sama dengan port-port yang lain. Hanya saja pada port ini
tidak terdapat kegunaan-kegunaan yang lain. Pada portini hanya berfungsi
sebagai masukan dan keluaran saja atau biasa disebut dengan I/O. Fungsifungsi Port D dapat dilihat lebih mudah seperti pada table di bawah ini :
Table 2.2 Fungsi Khusus Port B
Pin
PD7
PD6
PD5
PD4
PD3
PD2
PD1
PD0

Fungsi Khusus
AIN1 (Analog Comparator Negative Input)
AIN0 (Analog Comparator Positive Input)
T1 (Timer/Counter 1 External Counter Input)
XCK (USART External Clock Input/Output)
T0 (Timer/ Counter 0 External Counter Input)
INT 1 (External Interrupt 1 Input)
INT 0 (External Interrupt 0 Input)
TXD (USART Output Pin)
RXD (USART Input Pin)

6. AVcc
Pin ini berfungsi sebagai supplytegangan untuk ADC. Untuk pin ini harus
dihubungkan secara terpisah dengan VCC karena pin ini digunakan untuk
analog saja. Bahkan jika ADC pada AVR tidak digunakan tetap saja

Universitas Sumatera Utara

disarankan untuk menghubungkannya secara terpisah dengan VCC. Jika ADC
digunakan, maka AVcc harus dihubungkan ke VCC melalui low pass filter.
7. AREF
Merupakan pin masukan tegangan referensi ADC.
2.2.5 Blok Diagram ATMEGA 8

Gambar 2.5 Blok Diagram Atmega 8

Universitas Sumatera Utara

2.2.6 Arsitektur Mikrokontroler AVR RISC

Gambar 2.6 Arsitektur Mikrokontroler AVR RISC

Gambar 2.7 Arsitektur Harvard

Universitas Sumatera Utara

Dari gambar diatas AVR, menggunakan arsitektur Harvard dengan
memisahkan antara memori dan bus untuk program dan data untuk menghasilkan
kemampuan dan kecepatan. Instruksi dalam memori program dieksekusi dengan
pipelining single level. Dimana ketika satu instruksi dieksekusi, intruksi

berikutnya diambil dari dari memori program. Konsep ini mengakibatkan
instruksi dieksekusi setiap clock cycle. CPU terdiri dari 32 x 8 bit purpose register
yang dapat diakses dengan cepat dalam satu clock cycle, yang mengakibatkan
operasi Arithmetic Logic Unit (ALU) dapat dilakukan dalam satu cycle. Pada
operasi ALU, dua operand berasal dari regester, kemudian operasi dieksekusi dan
hasilnya disimpan kembali pada regester dalam satu clock cycle. Operasi
aritmatika dan logic pada ALU akan mengubah bit-bit yang terdapat pada Status
Register (SREG). Proses pengambilan instruksi dan pengeksekusian instruksi

berjalan secara parallel, dapat dilihat pada gambar dibawah ini :

Gambar 2.8 Proses pengambilan instruksi dan pengeksekusian instruksi secara
pararel

Instruksi 1 :
Instruksi 2 :

Fetching 1

Executing 1
Fetching 2

Executing 2

Gambar 2.9 Prinsip kerja Pipelining

Universitas Sumatera Utara

2.2.7 General Purpose Register AVR

Gambar 2.10 General Purpose Register AVR
Gambar diatas menunjukkan struktur 32 general purpose register yang
terdapat di dalam CPU, masing-masing register ditentukan juga dalam alamat
memori data, dipetakan kedalam 32 lokasi pertama data user . Walaupun tidak
secara fisik diimplementasikan sebagai lokasi SRAM, namun pengaturan ini
memberikan flexsibilitas dalam mengakses register , seperti register pointer X, Y,
dan Z dapat diset menuju index dari register file manapun.
2.2.8 Stack Pointer
Stack digunakan untuk menyimpan data sementara, untuk menyimpan
variable local dan untuk menyimpan return address setelah interrupt dan

pemanggilan subrutin. Stack pointer selalu menunjukkan ke puncak stack. Stack
diimplementasi mulai dari lokasi memori tertinggi ke lokasi memori terendah,
sehingga perintah PUSH akan menurangi Stack Pointer.

Gambar. 2.11 Stack Pointer

Universitas Sumatera Utara

2.2.9 Peta Memori AVR ATmega 8

Gambar 2.12 Peta Memori AVR ATmega 8

Memori atmega terbagi menjadi tiga yaitu :
1. Memori Flash
Memori flash Adalah memori ROM tempat kode-kode program berada.
Kata flash menunjukkan jenis ROM yang dapat ditulis dan dihapus secara
elektrik. Memori flash terbagi menjadi dua bagian yaitu bagian aplikasi
dan bagian boot. Bagian aplikasi adalah bagian kode-kode program
aplikasi berada. Bagian boot adalah bagian yang digunakan khusus untuk
booting awal yang dapat diprogram untuk menulis bagian aplikasi tanpa
melalui programmer/downloader , misalnya melalui USART.
2. Memori data
Memori data adalah memori RAM yang digunakan untuk keperluan
program. Memori data terbagi menjadi empat yaitu: 32 GPR (General
Purphose Register ) adalah register khusus yang bertugas untuk membantu

eksekusi program oleh ALU (Arithmatich Logic Unit), dalam instruksi

Universitas Sumatera Utara

assembler setiap instruksi harus melibatkan GPR. Dalam bahasa C
biasanya digunakan untuk variabel global atau nilai baik fungsi dan nilainilai yang dapat memperingan kerja ALU. Dalam istilah processor
komputer sehari-hari GPR dikenal sebagai “chace memory”, I/O register
dan Aditional I/O register yang difungsikan khusus untuk mengendalikan
berbagai pheripheral dalam mikrokontroler seperti pin port, timer/counter ,
usart dan lain-lain. Register ini dalam keluarga mikrokontroler MCS51

dikenal sebagai SFR (Special Function Register )
3. EEPROM
EEPROM adalah memori data yang dapat mengendap ketika chip mati
(off), digunakan untuk keperluan penyimpanan data yang tahan terhadap

gangguan satu daya.
2.2.10 Status Register (SREG)
Pada AVR status register mengandung beberapa informasi mengenai hasil
dari kebanyakan hasil eksekusi instruksi aritmatik. Informasi ini digunakan untuk
altering arus program sebagai kegunaan untuk meningkatkan performa
pengoperasian. Register ini di-update setelah operasi ALU (Arithmetic Logic
Unit) hal tersebut seperti yang tertulis dalam datasheet khususnya pada bagian
Instruction Set Reference. Dalam hal ini untuk beberapa kasus dapat membuang

penggunaan kebutuhan instrukasi perbandingan yang telah didedikasikan serta
dapat menghasilkan peningkatan dalam hal kecepatan dank ode yang lebih
sederhana dan singkat. Register ini tidak secara otomatis tersimpan ketika
memasuki sebuah rutin interupsi dan juga ketika menjalankan sebuah perintah

Universitas Sumatera Utara

setelah kembali dari interupsi. Namun hal tersebut harus dilakukan melalui
software. Berikut adalah gambar status register.

Gambar 2.13 Status Register Atmega 8


Bit 7 (I)
Merupakan bit Global Interrupt Enable. Bitini harus di-set agar semua
perintah interupsi dapat dijalankan. Untuk perintah interupsi individual akan
di jelaskan pada bagian yang lain. Jika bit ini di-reset, maka semua perintah
interupsi baik yang individual maupun yang secara umum akan di abaikan.
Bit ini akan dibersihkan atau cleared oleh hardware setelah sebuah interupsi
di jalankan dan akan di-set kembali oleh perintah RETI. Bit ini juga dapat diset dan di-reset melalui aplikasi SEI dan CLL.



Bit 6(T)
Merupakan bit Copy Storage. Instruksi bit Copy Instructions BLD (Bit Load)
and BST (Bit Store) menggunakan bit ini sebagai asal atau tujuan untuk bit
yang telah dioperasikan. Sebuah bit dari sebuah register dalam RegisterFile
dapat disalin ke dalam bit ini dengan menggunakan instruksi BST, dan
sebuah bit di dalam bit ini dapat disalin ke dalam bit di dalam register pada
Register File dengan menggunakan perintah BLD.



Bit 5 (H)
Merupakan bit Half Carry Flag.Bit ini menandakan sebuah Half Carry dalam
beberapa operasi aritmatika. Bit ini berfungsi dalam aritmatika BCD.

Universitas Sumatera Utara



Bit 4 (S)
Merupakan Signbit. Bit ini selalu merupakan sebuah ekslusif di antara
Negative Flag (N) dan two’s Complements Overflow Flag (V)



Bit 3 (V)
Merupakan bitTwo’s Complement Overflow Flag. Bit ini menyediakan fungsi
aritmatika dua komplemen.



Bit 2 (N)
Merupakan bitNegative Flag. Bit ini mengindikasikan sebuah hasil negative
di dalam sebuah fungsi logika atai aritmatika.



Bit 1(Z)
Merupakan bit Zero Flag. Bit ini mengindikasikan sebuah hasil nol “0” dalam
sebuah fungsi aritmatika atau logika.



Bit 0 (C)
Merupakan bit Carry Flag. Bit ini mengindikasikan sebuah Carry atau sisa
dalam sebuah aritmatika atau logika.

2.2.11 Timer/Counter 0
Timer/counter 0 adalah sebuah Timer/counter yang dapat mencacah

sumber pulsa/clock dari dalam chip (timer ) ataupun dari luar chip (counter )
dengan kapasitas 8-bit atau 256 cacahan. Timer/counter dapat digunakan untuk:
1. Timer/counter biasa
2. Clear timer on compare match (selain atmega 8)
3. Generator frekuensi (selain atmega 8)
4. Counter pulsa eksternal

Universitas Sumatera Utara

2.2.12 Komunikasi Serial pada Atmega 8
Komunikasi

serial

merupakan

komunikasi

yang

relative

lambat

dibandingkan dengan komunikasi parallel. Oleh karena itu, komunikasi serial
sering melibatkan interupsi untuk mengetahui apakah pengiriman mampu
menerima data yang telah selesai atau yang belum selesai dikirim.
Metode yang paling aman untuk proses pengiriman dan penerimaan saat
serial adalah dengan menyediakan buffer untuk kedua proses tersebut. Data yang
akan dikirim tidak secara langsung diberikan kepada SBUF, melainkan diberikan
kepada buffer. Demikian juga dengan pengambilan data yang tidak langsung dari
SBUF, melainkan diambil dari buffer, perpindahan keduanya diserahkan kepada
prosedur dalam intrupsi serial.
Pada mikrokontroler AVR Atmega 8 memiliki Port USART yang terdapat
pada pin 2 dan pin 3 untuk melakukan komunikasi data antara mikrokontroler
dengan mikrokontroler ataupun mikrokontroler dengan komputer. USART dapat
difungsikan sebagai transmisi data sinkron, dan asinkron. Sinkron berarti clock
yang digunakan antara transmiter dan receiver satu sumber clock. Sedangkan
asinkron berarti transmiter dan receiver mempunyai sumber clock sendirisendiri.USART terdiri dalam tiga blok yaitu clock generator, transmiter , dan
receiver.

Universitas Sumatera Utara

Gambar 2.14 Blok USART


Clock generator
Clock generator berhubungan dengan kecepatan transfer data (baud rate)

register yang bertugas menentukan baud rate adalah register pasangan.


USART transmiter
Usart transmiter berhubungan dengan data pada Pin TX. Perangkat yang
sering digunakan seperti register UDR sebagai tempat penampungan data
yang akan ditransmisikan. Flag TXC sebagai akibat dari data yang
ditransmisikan telah sukses (complete), dan flag UDRE sebagai indikator jika
UDR kosong dan siap untuk diisi data yang akan ditransmisikan lagi.



USART receiver
Usart receiver berhubungan dengan penerimaan data dari Pin RX. Perangkat

yang sering digunakan seperti register UDR sebagai tempat penampung data
yang telah diterima, dan flag RXC sebagai indikator bahwa data telah sukses
(complete) diterima.

Universitas Sumatera Utara

2.3 Analog to Digital Converter (ADC)
ADC adalah suatu alat yang mampu untuk mengubah sinyal atau tegangan
analog menjadi informasi digital. Resolusi ADC selalu dinyatakan sebagai jumlah
bit-bit dalam kode keluaran digitalnya. Misalnya, ADC dengan resolusi n-bit
memiliki 2n kode digital yang mungkin dan berarti juga memiliki 2n step level.
Jika resolusi ADC semakin tinggi, maka semakin banyak kemungkinan nilai-nilai
analog yang bisa disajikan.Misalnya ADC dengan resolusi 8 bit menghasilkan
bilangan 0 samapi 225 (256 bilangan 255 step), dengan demikian tidak mungkin
menyajikan semua kemungkinan nilai-nilai analog. Jika sekarang resolusinya menjadi

10 bit maka akan menghasilkan bilangan 0 dengan 1023 (1024 bilangan dan 1023
step).

VADC =

� ��

Nilai Digital =

� ��


x VREF
x 256

Fitur-fitur pada arsitektur ADC mikrokontroler AVR adalah sebagai berikut :
 Resolusi maksimum 10 bit (dapat dipilih resolusi 8 bit)

 0.5 LSB Integral Non Linearity

 Akurasi mutlak ± 2 LSB

 Waktu konversi 13 – 260 µs

 Pengambilan sampel sampai 15 kilo sampel per detik pada resolusi
maksimum

 8 kanal masukan single ended termultipleks

Universitas Sumatera Utara

 7 kanal masukan differensial dan 2 kanal masukan differential dengan opsi
penguatan 10 x dan 200x
 Jangkauan tegangan masukan ADC 0-VCC

 Tegangan refrensi 2,56 V internal yang dipilih

 Mode konversi tunggal

Ada banyak cara yang dapat digunakan untuk mengubah sinyal analog
menjadi sinyal digital yang nilainya proposional. Jenis ADC yang biasa
digunakan dalam perancangan adalah jenis successive approximation convertion
atau pendekatan bertingkat yang memiliki waktu konveksi jauh lebih singkat dan
tidak tergantung pada nilai masukan analognya atau sinyal yang akan diubah.
Diagram blok pengubah sinyak analog ke dalam digital ditunjukkan pada gambar
2.21 berikut ini :

Gambar 2.15 Diagram blok ADC

Prinsip kerja rangkaian pada gambar 2.21 tersebut adalah jika sinyal
masukan mulai konversi dari unit kendali diberi logika “0”, maka register SAR
(successive approximation register ) akan direset. Sehingga keluaran Vout unit

Universitas Sumatera Utara

DAC (Digital to Analog) menjadi nol. Pada waktu sinyal “mulai konversi”
kembali menjadi tinggi operasi konversi segera dimulai.
Proses konversi diawali dengan pengesetan bit paling berarti (MSB)
register SAR oleh kendali. Selanjutnya data digital dalam register SAR di
konversi ke analog oleh DAC. Hasil konversi Vout oleh unit dibandingkan dengan
sinyal masukan Vin oleh unit pembanding. Bila Vout lebih besar dari pada Vin
maka unti pembanding akan mengirimkan sinyal negative ke unit kendali. Dengan
adanya sinyal negative ini, unit kendali akan mereset bit paling berarti (MSB)
register SAR. Sebaliknya, jika Vout lebih kecil dari Vin, unit pembanding akan
mengirimkan sinyal positif ke unit kendali. Dengan sinyal positif ini, unit kendali
tetap mengeset bit paling berarti (MSB).
Pada pulsa clock berikutnya uit terkendali akan mengeset bit yang lebig
rendah yaitu bit ke 7 register SAR. Kemudian data dikonversikan oleh unit DAC
dan hasil konversi Vout dibandingkan dengan sinyal masukan Vin. Sinyal hasil
perbandingan akan menentukan unit kendali untuk mengeset dan mereset register
SAR. Demikian proses ini berlangsung sampai diperoleh nilai Vin sama dengan
nilai Vout . Apabila konversi telah selesai, unit kendali mengirimkan sinyal ‘selesai
konversi’ yang berlogika rendah.

2.4 Pemrograman Mikrokontroler Menggunakan Code Vision Avr
(Bahasa C)
Penggunaan mikrokontroler yang diterapkan berbagai rumah tangga,
otomotif, sampai dengan kendali, membuat mikrokontroler mulai masuk didunia

Universitas Sumatera Utara

pendidikan. Banyak varian dan type dari mikrokontroler yang dipelajari dan
digunakan di dunia pendidikan.
Akar dari bahas C adalah dari bahasa BCPL yang dikembangkan oleh
Martin Richhards pada tahun 1967. Bahasa ini memberikan ide kepada Ken
Thompson yang kemudian mengembangkan bahasa yang disebut dengan B pada
tahun 1970. Perkembangan selanjutnya dari bahasa B adalah bahasa C oleh
Dennis Ricthie sekitar 1970-an di Bell Telephone Laboratories Inc (sekarang
adala AT & T Bell Laboratories). Bahasa C pertama kali digunakan di computer
Digital Equipment Corporation PDP-11 yang menggunakan system operasi
UNIX.
C adalah bahasa yang standar, artinya satuan program yang tertulis dengan
versi bahas C tertentu akan dapat dikoompilasi dengan versi bahasa C yang lain
dengan sedikit modifikasi. Standar bahasa C yang asli adalah standar dari UNIX.
Patokan standar UNIX ini diambil dari buku yang ditulis oleh Brian Kerninghan
dan Dennis Ritehiie yang berjudul “The C Programming Language”, diterbitkan
oleh Prentice Hall tahun 1978.
Beberapa alasan mengapa bahasa C banyak digunakan, diantaranya adalah
sebagai berikut:
1. Bahasa C hampir tersedia di semua jenis komputer
Bahasa C ini merupakan bahasa komputer yang tersedia baik di komputer
mikro, mini maupun komputer besar

Universitas Sumatera Utara

2. Kode bahasa C sifatnya portable.
Aplikasi yangditulis dengan bahasa C untuk suatu computer tersebut dapat
digunakan di computer lain hanya dengan modifikasi yang sedikit saja.
3. Bahasa C hanya menyediakan sedikit kata-kata kunci.
Semakin sedikit kata-kata kunci yang digunakan disuatu bahasa, semakin
mudah bagi pemakai untuk mempelajari dan menggunakan bahasa
tersebut.
4. Proses executable program bahasa Ctebih cepat.
Karena philosopi dari bahasa C yang menyediakan sedikit kata-kata kunci,
maka konsekuensinya program hasil dari kompilasi bahasa C relativeakan
lebih cepat prosesnya dibandingkan dengan hasil dari bahasa lain.
5. Dukungan pustaka yang banyak.
Telah disebut bahwa keandalan bahasa C dicapai dengan fungsi-fungsi
pustakanya. Fungsi-fungsi pustaka ini disediakan oleh versi-versi bahasa C
masing-masing atau dapat dibeli dari sumber yang lain.
6. C adalah bahasa yang terstruktur.
Bahasa. C mempunyai struktur yang baik sehingga mudah untuk
dipahami. C disebut bahasa yang terstruktur karena menggunakan fungsifungsi sebagai program-program bagiannya.
7. Selain bahasa tingkat tinggi, C juga dianggap sebagai bahasa tingkat
menengah.
Pada awalnya, bahasa C sudah digunakan untuk membuat programprogram perangkat lunak sistem, Yang termasuk program-program

Universitas Sumatera Utara

perangkat

lunak

sistem

diantaranya

adalah

sistem

operasi,

interpreter,compiler , bahasa perakit, bahasa pemrograman dan DBMS
(Database Management System).

Untuk mempunyai kemapuan seperti ini, bahasa C menggunakan
kemapuan bahasa tingkat tinggi dan bahasa tinggkat rendah yang
menghasilkan

bahasa tingkat

menengah.

Sebagai bahasa tingkat

menengah,C menyediakan kemampuan seperti yang disediakan oleh
bahasa perakitan untuk operasi-operasi bit,byte, alamat-alamat memori,
register, BIOS (Basic Input Ouput System), DOS (DiskOperating System)
dan lain sebagainya.
8. Bahasa C adalah compiler.
Karena bahasa C sifatnya adalah compiler, maka akan menghasilkan
executable program yang banyak dibutuhkan oleh program-program
komersial.
Ada beberapa program yang dapat digunakan sebagai editor dan compiler
untuk mikrokontroler AVR, salah satunya yaitu CodeVision. CodeVision AVR
adalah salah satu alat bantu pemrograman yang bekerja dalam lingkungan
pengembangan perangkat lunak yang terintegrasi. Code vision AVR ini
merupakan cross-compiler C, Integrated Development Errvirontment (IDE), dan
Automatic Program Generator yang didesain untuk mikrokontroler buatan Atmel
seri AVR. Cross-compiler C mampu menerjemahkan hampir semua perintah dari
bahasa ANSI C, sejauh yang diijinkan oleh arsitektur dari AVR, dengan tambahan

Universitas Sumatera Utara

beberapa fitur untuk mengambil kelebihan khusus dari arsitektur AVR dan
kebutuhan dari sistem embedded.
CodeVisionAVR juga mempunyai Automatic Program Generator bernama
CodeWizardAVR, yang mengizinkan anda untukmenulis, dalam hitungan menit,
semua instruksi yang diperlukan untuk membuat beberapa fungsi-fungsi tertentu.
Dengan fasilitas ini mempermudah para Programmer pemula untuk belajar
pemograman mikrokontroler menggunakan CVAVR. Seperti aplikasi IDE
lainnya, CodeVision AVR dilengkapi dengan sourcecode editor, compiler, linker,
dan dapat memanggil Atmel AVR Studio untuk debugger nya.
Untukmemulai menjalankan CodeVision, buka program CodeVision
melalui menu Start/All Program/CodeVision/GodeVision AVR C Compiler
atau melalui desktop klik lambang codevision.

Gambar 2.16Tampilan Pertama Kali CodeVision dijalankan

Universitas Sumatera Utara

2.5 SOFTWARE DESAIN PCB (Printed Circuit Board) Proteus Profesional
7.7 SP2 Pro
Proteus professional merupakan kelompok software yang digunakan untuk
membantu para desainer dalam merancang dan mensimulasikan suatu rangkaian
elektronika. Software ini memiliki dua fungsi sekaligus dalam satu paket, paket
yang pertama sebagai software untuk menggambar skematik dan dapat
disimulasikan yang diberi nama ISIS. Paket kedua digunakan sebagai merancang
gambar Printed CircuitsBoard (PCB) yangdiberi nama ARES. Secara langsung,
pengubahan dari skematik ke PCB dapat dilakukan dalam software Proteus Prof
7.7 ini.
Proteus Prof ISIS memiliki versi yang selalu diperbarui, mulai dari versi
7.0 sampai dengan 7.10. setiap kenaikan versi memiliki penambahan akan library
komponen yang dapat diambil dan digunakan dalam penggambaran atau
perancangan. Sebagai perancangan rangkaian elektronik terlebih dahulu
menggunakan ISIS sebagai media yang memudahkan dalam perancangan dan
simulasi. Banyaknya library dari Proteus Prof 7:7. ISIS membuat software ini
dikatakan software simulasi lengkap, yaitu dari komponen-komgonen pasif,
Analog, Trasistor, SCR, FET, jenis button atau tombol, jenis saklar atau relay, IC
digital IC penguat, IC programmable (mikrokontroler) dan IC memory. Selain
didukung dengan kelengkapan komponen, juga didukung dengan kelengkapan
alat ukur seperti volumeter, Ampere meter, Oscilloscope, signal Analyzers, serta
pembangkit frekuensi. Kelengkapan fitur yang disediakan ini menjadi Proteus
Prof ISIS menjadi satu software elektronik terbaik.

Universitas Sumatera Utara

2.5.1 Fungsi Tiap Fitur Proteus Prof 7.7
Tampilan window proteus professional ISIS 7 seperti di bawah ini, dan
memiliki fungsi difitur-fiturnya yang sering digunakan sebagai berikut :

Universitas Sumatera Utara

Center at Cursor
Zoom in
Zoom out
Zoom to view sheet
Zoom to area
Mini View
Component List
Pick From Library

Componen Mode Meliputi
Selection Mode
Component Mode
Terminal Mode

Generator Mode
Voltage Probe

Current Probe

Virtual Instrument Mode

Drawing Tool and Text meliputi
2D Graphic line Mode
2D Graphic box Mode
2D Graphic Circle Mode
2D Graphic Arc Mode
2D Graphic Text Mode

Rotate and Mirror
Rotate Clockwise
Rotate anticlockwise

Membuat area tengah tampilan gambar
dengan bertumpu pada cursor
Memperbesar gambar
Memperkecil gambar
Menampilkan keseluruhan gambar
Memperbesar gambar dengan memilih
area yang dikehendaki
Menampilkan gambar dalam bentuk
tampilan kecil seluruh area gambar
Daftar komponen yang telah diuambil
dari Library
Mengambil komponen pada library
yang akan diletakkan pada component
list
Memilih dan melakukan aksi pada
komponen yang dipilih.
Mengambil komponen pada library
Mengambil dan menggunakan terminal
yang dibutuhkan dalam rangkaian
(VCC, Gnd, Input, Output).
Memilih pembangkit pulsa yang akan
digunakan.
Terminal dengan tampilan nilai dari
jalur koneksi komponen dengan
menampilkan besaran tegangan
Terminal dengan tampilan nilai dari
jalur koneksi komponen dengan
menampilkan besaran arus.
Mengambil alat ukur yang akan
digunakan (CRO, Volmeter, Ampere
meter, AFG, Signal Analyyzer).
Membuat garis jalur rangkaian 2D
Membuat gambar kotak atau persegi 2D
pada area gambar.
Membuat gambar lingkaran 2D area
gambar.
Membuat gambar Arc atau garis
lengkung 2D pada area gambar.
Menambahkan tulisan text 2D pada area
gambar.
Merotasi obyek searah jarum jam
Merotasi obyek berlawanan dengan
arah jarum jam

Universitas Sumatera Utara

X Mirror
Y Mirror
Play and Simulation Operaion
Play
Step
Pause
Stop

Mencerminkan obyek kearah X
Mencerminkan obyek kearah Y
Menjalankan simulasi rangkaian yang
telah dibuat
Menjalankan simulasi secara tahap
pertahap
Memberhentikan simulasi rangkaian
Menghentika simulasi rangkaian

Universitas Sumatera Utara