Anda di halaman 1dari 47

LAPORAN RESMI PRAKTIKUM ELEKTRONIKA – P4

MIKROKONTROLER
(SISTEM I/O, ADC, DAN INTERUPSI
EKSTERNAL)

Disusun Oleh :
LINGGAR HANDY SWANDANA NRP. 02 31 18 40 00 0082

Asisten :
DEAZ INDRA SETIAWAN NRP. 02 31 16 40 00 0018

PROGRAM STUDI S-1 TEKNIK FISIKA


DEPARTEMEN TEKNIK FISIKA
FAKULTAS TEKNOLOGI INDUSTRI
INSTITUT TEKNOLOGI SEPULUH NOPEMBER
SURABAYA
2019
;

LAPORAN RESMI PRAKTIKUM ELEKTRONIKA – P4

MIKROKONTROLER
(SISTEM I/O, ADC, DAN INTERUPSI
EKSTERNAL)

Disusun Oleh :
LINGGAR HANDY SWANDANA NRP. 02 31 18 40 00 0082

Asisten :
DEAZ INDRA SETIAWAN NRP. 02 31 16 40 00 0018

PROGRAM STUDI S-1 TEKNIK FISIKA


DEPARTEMEN TEKNIK FISIKA
FAKULTAS TEKNOLOGI INDUSTRI
INSTITUT TEKNOLOGI SEPULUH NOPEMBER
SURABAYA
2019

i
(Halaman
(Halamanini
inisengaja dikosongkan)
sengaja dikosongkan)

ii
ABSTRAK

Pada praktikum kali ini tentang mikrokontroler akan dubahas


tentang sistem masukan/keluaran (input/outout), ADC
(Analog to Digital Converter) dan interupsi eksternal
menggunakan mikrokontroler Atmega16. Pada sistem
masukan/keluaran, terdapat pin - pin yang akan diatur sebagai
pin maskan dan pin keluaran dimana kondisi dari pin
keluaran bergantung dari kondisi yang ada pada pin masukan.
Pada sistem masukan/keluaran tersebut diberikan program
dimana ketika pin PD0 berlogika 1 maka pin PC0 dan PC1
akan berlogika 1 pula dan sebaliknya. Pada percobaan ADC,
dibnat rangkaian yang akanmembaca resistansi dari
potensiometer yang terhubung pada pin PA0 yang berperan
sebagai pin ADC. Yang hasilnya akan ditampilkan melalui
layar LCD yang terhubung pada port C. dan yang terakhir
merupakan percobaan mengenai interupsi eksternal dimana
ketika mikrokontroler sedang menjalankan program utama
dan dipicu oleh suatu perubahan logika pada pin interusi,
maka mikrokontroler akan berhenti menjalankan program
utama dan beralih sementara untuk menjalankan program
interupsi, setelah mikrokontroler selesai menjalankan
interupsi, maka mikrokontroler akan kembali menjalankan
program utama. Pada percobaan ini diberikan program utama
dimana terdapat 4 lampu LED yang terhubung pada port C
yang akan mati secara bergantian dan program interupsi
berua seluruh lampu akan berkedip sebanyak 3 kali, ketika
interupsi dipicu dengan hilangnya tegangan pada pin PD2

iii
iv

(Halaman ini sengaja dikosongkan)

iv
yang diatur sebagai pin interupsi, maka lampu LED akan
berkedip sebanyak 3 kali.

Kata kunci : Mikrokontroler, Atmega16, Masukan/kelaran,


ADC, interupsi eksternal

v
(Halaman ini sengaja dikosongkan)

vi
ABSTRACT

In this practicum, the microcontroller will change about the


input / output system, ADC (Analog to Digital Converter) and
external interruptions using the Atmega16 microcontroller.
In the input / output system, there are pins that will be set as
input pins and output pins where the condition of the output
pin depends on the conditions present in the input pin. In the
input / output system is given a program where when the PD0
pin logic 1 then pins PC0 and PC1 will logic 1 as well and
vice versa. In the ADC experiment, the circuit will read the
resistance of the potentiometer connected to the PA0 pin
which acts as the ADC pin. The results will be displayed
through the LCD screen connected to port C. And the last is
an experiment on external interruptions where when the
microcontroller is running the main program and triggered
by a logic change on the interusion pin, the microcontroller
will stop running the main program and switch temporarily
to run interrupt program, after the microcontroller has
finished running the interruption, the microcontroller will
again run the main program. In this experiment the main
program is given where there are 4 LED lights connected to
port C that will turn off alternately and the interrupt program
starts all lights will blink 3 times, when the interruption is
triggered by the loss of voltage on the PD2 pin which is set
as an interrupt pin, then the lamp The LED will blink 3 times.

vii
viii

(Halaman ini sengaja dikosongkan)

viii
Keywords: Microcontroller, Atmega16, Input / output, ADC,
external interruptions

ix
x

(Halaman ini sengaja dikosongkan)

x
KATA PENGANTAR

Puji syukur kehadirat Allah SWT. Atas


terselesaikannya Laporan Resmi Praktikum Elektronika P4
tentang Mikrokontroler yang disusun untuk mengetahui dan
memahami konsep masukan/keluaran, memahami konsep
ADC, dan memahami konsep interupsi eksternal dan
pemrogramannya.
Adapun penyusunan laporan ini kiranya masih jauh
dari kata sempurna. Untuk itu, Saya menghaturkan
permohonan maaf apabila terdapat kesalahan dalam laporan
resmi ini. Segala bentuk kritik dan saran akan diterima agar
dapat membuat laporan yang lebih baik lagi..
Akhir kata, Saya ucapkan terimakasih kepada Asisten
Laboratorium Pengukuran Fisis dan teman sekelompok atas
bantuannya.

Surabaya, Oktober 2019

Penulis

xi
(Halaman
(Halamanini
inisengaja
sengajadikosongkan)
dikosongkan)

xii
DAFTAR ISI
ABSTRAK .......................................................................... iii

DAFTAR ISI ..................................................................... xiii

DAFTAR GAMBAR ......................................................... xv

BAB I PENDAHULUAN .................................................... 1

1.1 Latar Belakang .............................................................. 1


1.2 Rumusan Masalah ......................................................... 2
1.3 Tujuan............................................................................ 2
1.4 Sistematika Laporan ...................................................... 2
BAB II DASAR TEORI ....................................................... 5

2.1 Mikrokontroler ATMEGA 16 ....................................... 5


2.2 Sistem I/O (Masukan/Keluaran) .................................... 6
2.3 Analog to Digital Converter (ADC) .............................. 7
2.4 Interupsi ......................................................................... 8
2.5 CodeVision AVR .......................................................... 8
BAB III METODOLOGI PERCOBAAN .......................... 11

3.1 Alat dan Bahan ............................................................ 11


3.2 Prosedur Percobaan ..................................................... 11
BAB IV ANALISA DATA DAN PEMBAHASAN.......... 17

4.1 Analisa Data ................................................................ 17


xiii
xiv

4.2 Pembahasan ................................................................. 21


BAB V KESIMPULAN DAN SARAN ............................ 25

5.1 Kesimpulan.................................................................. 25
5.2 Saran ............................................................................ 25
DAFTAR PUSTAKA ........................................................ 27

LAMPIRAN ....................................................................... 28

xiv
DAFTAR GAMBAR

Gambar 2. 1 Diagram Pin ATmega16 ............................ 6

Gambar 2. 2 Tampilan Awal CodeVision AVR ............... 9

Gambar 3. 1 Rangkaian Praktikum I/O ......................... 11

Gambar 3. 2 Rangkaian Praktikum ADC ...................... 13

Gambar 3. 3 Rangkaian Praktikum Interupsi Eksternal .. 14

Gambar 4. 1 Kondisi LED ketika PIND.0==1 dan Switch


Tersambung................................................................ 17

Gambar 4. 2 Kondisi LED ketika PIND.0==0 dan Switch


Tersambung................................................................ 18

Gambar 4. 3 Kondisi LED ketika PIND.0==1 dan Switch


Terputus ..................................................................... 18

Gambar 4. 4 Kondisi LED ketika PIND.0==0 dan Switch


Terputus ..................................................................... 19

Gambar 4. 5 Nilai Terkecil yang Ditampilkan LCD ....... 20

Gambar 4. 6 Nilai Terbesar yang Ditampilkan LCD ...... 20

xv
xvi

Gambar 4. 7 Rangkaian Interupsi................................. 21

xvi
BAB I
PENDAHULUAN

1.1 Latar Belakang


Dewasa ini, sudah banyak sekali perangkat
elektronika yang sudah disusus agar dapat menjalankan
tugas-tugas khusus tertentu tanpa harus merakitnya dari awal.
Salah satu dari perangkat-perangkat ini adalah
mikrokontroller. Mikrokontroler adalah divais elektronika
digital yang mempunyai masukan masukan dan keluaran
serta kendali dengan program yang bisa ditulis dan dihapus
(read & write) dengan cara khusus[1]. Terdapat banyak jenis
dari mikrokontroler seperti Atmega dari keluarga Atmel, seri
ESP dari Espressif System dan lain sebagainya
Asal-usul penemuan mikrokontroler dapat ditelusuri
kembali dari penemuan MOSFET (metal-oxide-
semiconductor field-effect transistor) dimana pertamakali
ditemukan oleh Mohamed M. Atalla dan Dawon Kahng di
Bell Labs pada tahun 1959, dan didemonstrasikan pertama
kali pada tahun 1960[2]. Dengan mikrokontroler, kita dapat
membuat alat-alat elektronika tanpa harus menyusun
semuanya dari nol, kita hanya perlu menggunakan
mikrokontroler sebagai pusat sistem alat dan
memprogramnya sesuai dengan kebutuhan.
Dalam zaman modern saat ini, sangat banyak jenis
mikrokontroler yang diperuntukan untuk tugasnya masing-
masing, seperti jam digital, running text, remote, robot, dan
lain sebagainya. Dibuatnya mikrokontroler adalah salah satu
kemajuan pesat bagi perkembangan teknologi. Dengan
adanya mikrokontroler, hampir semua orang dapat membuat
alat elektronika dengan berbekal dasar dari programming dan
angkaian listrik.

1
2

1.2 Rumusan Masalah


Berikut adalah rumusan masalah dari praktikum P4.
a. Bagaimana konsep masukan/keluaran (I/O) dan
pemrogramannya pada mikrokontroler?
b. Bagaimana implementasi ADC pada mikrokontroler?
c. Bagaimana implementasi interupsi eksternal dan
pemrogamannya pada mikrokontroler?

1.3 Tujuan
Tujuan dari praktikum P4 adalah sebagai berikut.
a. Mengetahui dan memahami konsep masukan/keluaran
(I/O) dan pemrogramannya pada mikrokontroler.
b. Mengetahui dan memahami impelemtasi ADC pada
mikrokontroler.
c. Mengetahui dan memahami impelemntai interupsi
eksternal dan pemrogramannya pada mikrokontroler.

1.4 Sistematika Laporan


Sistematika penulisan laporan terdiri dari lima bab.
Penggambaran secara keseluruhan dari tiap-tiap bab adalah:
a. BAB 1 PENDAHULUAN
Pada bab ini berisi Latar Belakang, Perumusan Masalah,
Tujuan Penelitian
b. BAB II DASAR TEORI
Pada bab ini menguraikan tentang tori yang melandasi dan
berhubungan dengan elektronika digital.
c. BAB III ALAT DAN BAHAN
Pada bab ini dijelaskan alat dan bahan apa saja yang
digunakan untuk melakukan praktikum.
d. BAB IV ANALIS DATA DAN PEMBAHASAN
Pada bab ini dijabarkan data yang telah didapat dari
percobaan dan menjelaskan tentang obyek yang diteliti.
e. BAB V KESIMPULAN DAN SARAN
3

Pada bab ini berisi kesimpulan dari praktikum beserta


saran-saran yang bersifat membangun yang berkaitn
dengan praktikum ini.
4

(Halaman ini sengaja dikosongkan)


BAB II
DASAR TEORI

2.1 Mikrokontroler ATMEGA 16

Mikrokontroler merupakan perangkat elektronika


digital yang dapat menjalankan perintah tertentu yang berupa
rogram yang bisa ditlis dan dihapus (read & write) sesuai
dengan kebutuhan pengguna. ATMEGA 16 merupakan
mikrokontroler buatan Atmel keluarga AVR yang
mempunyai 32 pin untuk kegunan umum. ATMEGA 16
memiliki spesifikasi seperti berukut.

 8 Bit Mikrokontoller
 16Kb Flash
 512 Bytes EEPROM
 1Kb internal SRAM
 Clock Speed up to 16MHz
 8 Channel, 10 Bit ADC
 3 PWM Channel
 Programmable Serial USART
 External and Internal Interupt Sources
 30 I/O pin
 Operating Voltage
2.7V – 5.5V (ATMega 16L)
3.5V - 5.5V (ATMega 16)

5
6

Gambar 2. 1 Diagram Pin ATmega16

2.2 Sistem I/O (Masukan/Keluaran)


Pada ATMEGA 16 terdapat 32 port yang dapat
difungsikan sebagai maskan ataupun keluaran (input/output)
yang mana keluarannya dapat diatur sebagai high atau low.
7

Untuk mengatur pin-pin tersebut, terdapat beberapa metode


yaitu sebagai berikut.

2.1.1 Data Register (PORTx)


PORTx digunakan padasaat ingin mengatur suatu
port sebagai keluaran.
Contoh :
PORTB=0xff artinya semua pin pada port B bernilai high
(11111111)
PORTB=0xa3 artinya pin 0, 1, 5, dan 7 bernilai high dan pin
lainnya bernilai low (10100011)

2.1.2 Data Direction Register (DDRx)


DDRx digunakan untuk mendefinisikan suatu
port berperan sebagai port masukan atau kelauran, dimana
sebuah port akan bernilai 1 jika disetting sebagai keluaran
dan bernilai 0 jika disetting sebagai masukan.
\0
\/\
2.1.3 Port Masukan Pin (PINx)
PINx digunakan untuk membaca data masukan
dari suatu port yang dikonfigurasikan sebagai masukan.

2.3 Analog to Digital Converter (ADC)


ADC merupakan rangkaian yang dapat
mengubah sinyal analog menjadi sinyal digital. Dengan
menggunakan ADC, maka kita dapat menampilkan sinyal
analog sepeti temperatur, tekanan udara, kelembapan, dan
8

lain sebagainya pada sebuah interface digital yang mana


hanya dapat membaca sinyal digital.
Pada rangkaian ADC terdapat resolusi, yaitu
besar sinyal analog terkecil yang dapat diubah menjadi sinyal
digital. Resolusi biasanya dinyatakan dalam bit (binary digit).
Rumus ADC n-bit yaitu sebagai berikut.
𝑽𝒊𝒏
𝑨𝑫𝑪 = ( × 𝟐𝒏 ) (4.1)
𝑽𝒓𝒆𝒇
Atmega memiliki resolusi ADC 10bit (dapat juga
menggunakan ADC 8 bit) dengan 8 channel (PA0 – PA7)
masukan ADC dan mendukung 16 macam penguat beda.
ADC ini bekerja dengan teknik succecive approximation.
Rangkaian internal ADC memiliki catu daya tersendiri yaitu
pin AVCC.

2.4 Interupsi
Interupsi merupakan sebuah fitur dimana
mikrokontroler akan berhenti menjalankan program utama
untuk sementara lalu menjalankan program interupsi, dan
setelah program interupsi selesai dijalankan maka
mikrokontroler akan kembali menjalankan program
utamanya. Pada Atmega 16 terdapat 3 pin untuk memicu
interupsi eksternal yaitu INT0 (PD2), INT1 (PD3), dan INT2
(PB2)

2.5 CodeVision AVR


CodeVision AVR atau CVAVR merupakan compiler bahasa
C untuk memprogram mikrokontroler keluarga Atmel AVR.
CVAVR dapat mengimplementasikan hampir semua intruksi
bahasa C yang sesuai dengan bahasa C. CVAVR juga
9

mempunyai Automatic Program Generator bernama


CodeWizardAVR.

Gambar 2. 2 Tampilan Awal CodeVision AVR


(Halaman ini sengaja dikosongkan)

10
11

BAB III
METODOLOGI PERCOBAAN

3.1 Alat dan Bahan


Pada Praktikum P4 mengenai mikrokontoroler ini
dibutuhkan alat dan bahan sebagai berikut:
a. Breadboard
b. Minimum Sistem Atmega 16
c. Downloader
d. LED
e. Kabel Jumper
f. LCD
g. Potentiometer/trimpot
h. Resistor

3.2 Prosedur Percobaan


Prosedur percobaan untuk Praktikum P4 ini adalah
sebagai berikut:
3.2.1 Digital Masukan/Keluaran (I/O)
a. Dibuat rangkaian berikut. VCC dan PD0 dihubungkan
dengan jumper.

Gambar 3. 1 Rangkaian Praktikum I/O


12

b. CodeVision AVR dijalankan dan dibuat project baru.


c. Pada CodeWizard dipilih Atmega16 pada tab chip dan,
diisikan frekuensi clock sebesar 12.000000 Mhz.
d. Pada tab port, port D diinisiasikan sebagai keluaran dan
port D diinisiasikan sebagai masukan.
e. Generate program di klik lalu diisikan script seperti
dibawah ini pada program utama
While (1)
{
If (PIND.0==1)
{
PORTC.0=1;
PORTC.1=1;
}
Else
{
PORTC.0=0;
PORTC.1=0;
}
}
f. Program dicompile dengan mengklik “compile the
project”., lalu file yang bereksensi .hex yang berada pada
folder “bin/Exe” diasukan ke mikrokontroller dengan
menggunakan software progisp.
g. VCC dan pin PD0 dihubungkan dengan kabel jumper
lalu Perubahan pada LED diamati.
h. Langkah-langkah diatas diulangi dengan mengganti
masukan pada program dari (PIND.0==1) menjadi
(PIND.0==0).
i. Perubahan yang terajdi diamati dan disimpulkan.

3.2.2 Analog to Digital Converter (ADC)


13

a. Dibuat rangkaian dengan LCD dan


Potentiometer/trimpot seperti berikut.

Gambar 3. 2 Rangkaian Praktikum ADC


b. Code Vision AVR dijalankan dan dibuat project baru.
c. Pada CodeWizard dipilih Atmega16 pada tab chip dan,
diisikan frekuensi clock sebesar 12.000000 Mhz.
d. ADC enabled diaktifkan pada tab ADC dan Volt Ref
pada pin AVCC.
e. Pada tab Alphanumeric LCD, port C disetting sebagai
port keluaran untuk LCD.
f. Generate program, lalu ditambahkan library
#include<stdlib.h> pada program dan dideklarasikan int
ADC dan char temp [6];
g. Script di bawah ini ditambahkan pada program utama.
while(1)
{
lcd_clear();
ADC = read_adc(0);
lcd_gotoxy(0,0);
lcd_putsf(“Praktikum ADC”);
14

ftoa(ADC,1,temp);
lcd_gotoxy(0,1);
lcd_puts(temp);
delay_ms(500);
}
h. Program dicompile dengan mengklik “compile the
project”., lalu file yang bereksensi .hex yang berada
pada folder “bin/Exe” diasukan ke mikrokontroller
dengan menggunakan software progisp.
i. Potensiometer/trimpot diputar dan perubahan yang
terjadi diamati.

3.2.3 Interupsi Eksternal


a. Rangkaian dengan LED dan push button dibuat seperti
berikut.

Gambar 3. 3 Rangkaian Praktikum Interupsi


Eksternal

b. Code Vision AVR dijalankan dan dibuat project baru.


c. Pada CodeWizard dipilih Atmega16 pada tab chip dan,
diisikan frekuensi clock sebesar 12.000000 Mhz.
d. Port C disetting sebagai keluaran pada tab Port.
15

e. Pada tab external IRQ, bagian INT0 Enabled diberi


tanda centang lalu dipilih mode falling edge.
f. Generate program, lalu ditambahkan library #include
<delay.h>
g. Pada bagian interupt ditambahkan script berikut.
ext_int0_isr(void)
{
PORTC=0XFF;
Delay_ms(1000);
PORTC=0X00;
Delay_ms(1000);
PORTC=0XFF;
Delay_ms(1000);
PORTC=0X00;
Delay_ms(1000);
PORTC=0XFF;
Delay_ms(1000);
}
h. Lalu script berikut ditambahkan pada program
utama.
while (1)
{
PORTC(0X0F);
delay_ms(500);
PORTC(0X07);
delay_ms(500);
PORTC(0X03);
delay_ms(500);
PORTC(0X01);
delay_ms(500);
PORTC(0X00);
delay_ms(500);
}
16

i. Program dicompile dengan mengklik “compile the


project”., lalu file yang bereksensi .hex yang berada
pada folder “bin/Exe” diasukan ke mikrokontroller
dengan menggunakan software progisp.
j. LED akan mati bergiliran saat program dijalankan, dak
ketika push button ditekan dan terjadi interupsi, maka
LED akan berkedip sebanyak 3 kali. Setelah itu, maka
program utama akan kembali dijalankan.
BAB IV
ANALISA DATA DAN PEMBAHASAN

4.1 Analisa Data


Setelah dilakukan percobaan praktikum P4
terkait dengan didapatkan data dari masing-masing
percobaan sebagai berikut.

A. Digital Masukan/Keluaran (Digital


Input/Output)
Pada percobaan pertama tentang sistem digital
I/O, didapatkan hasil ketika switch menyambungkan pin
VCC dengan pin Pin D0 (PD0), lampu led menyala. Dan
ketika switch diputus, lampu LED mati. Lalu denagn
diubahnya program pada bagian (PIND.0==1) menjadi
(PIND.0==0), didapatkan hasil sebaliknya, ketika switch
menyambungkan VCC dengan PD0, lampu LED tidak
menyala dan ketika switch terputus lampu LED menyala.

Gambar 4. 1 Kondisi LED ketika PIND.0==1 dan Switch


Tersambung
17
18

Gambar 4. 3 Kondisi LED ketika PIND.0==1 dan Switch


Terputus

Gambar 4. 2 Kondisi LED ketika PIND.0==0 dan Switch


Tersambung
19

Gambar 4. 4 Kondisi LED ketika PIND.0==0 dan Switch


Terputus

B. Analog to Digital Converter (ADC)


Pada percobaan kedua tentang ADC, didapatkan hasil
ketika resistansi tadi trimpot ditambahkan, maka nilai yang
terpampang di LCD akan membesar dan ketika resistansi
trimpot dikecilkan, maka nilai yang terpampang di LCD
akan mengecil.
20

Gambar 4. 6 Nilai Terbesar yang Ditampilkan LCD

Gambar 4. 5 Nilai Terkecil yang Ditampilkan LCD


21

C. Interupsi Eksternal
Pada percobaan ketiga tentang interupsi eksternal
didapatkan hasil lampu LED mati satu persatu disaat
program utama berjalan. Saat kabel jumper yang
menghubungkan VCC dengan pin PD2 dihilangkan, pola
nyala lampu LED berubah mejadi berkedip-kedip
sebanyak tiga kali secara bersamaan. Setelah sesesai
berkedip sebanyak 3 kali, pola nyala lampu LED akan
menjadi seperti sedia kala yaitu mati satu persatu.

Gambar 4. 7 Rangkaian Interupsi


4.2 Pembahasan
Pada percobaan digital I/O dimasukan program yg
artinya jika pin D0 tersambung dengan pin VCC dengan cara
menghubungkan kedua pin ersebut dengan kabel jumper (if
(PIND.0==1)) maka pin C0 dan C1 akan mendapatkan
tegangan dan bernilai 1 (PORTC.0=1; PORTC.1=1;)
22

sehingga lampu LED yang tersambung pada kedua port


tersebut akan menyala. Namun ketika pin D0 tidak
tersambung dengan VCC yang diwakili dengan logika else,
maka lampu LED yg tersambung pada pin C0 dan C1 tidak
akan menyala (PORTC.0=1; PORTC.1=1;). Dengan logika
pemrograman tersebut, maka hasil sebaliknya akan diperoleh
ketika baris if (PIND.0==0) yang mana itu berarti jika pin D0
tersambung dengan VCC maka lampu LED yang terhubung
dengan pin C0 dan C1 tidak akan menyala (pin C0 dan C1
bernilai 0).

Pada percobaan selanjutnya tentang analog and


digital converter (ADC) terdapat LCD 16x2 yang
tersambung pada port C dan menampilkan kalimat
“Praktikum ADC” pada baris kedua dan suatu nilai pada baris
kedua. Pada program utama terdapat variabel ADC yang
berupa interger dan temp[6] yang merupakan array char.
Nilai dari variabel ADC bergantung pada nilai yang
terdeteksi pada pin PA0 yang bekerja sebagai pin ADC0
(ADC = read_adc(0);). Kalimat “Praktikum ADC”
ditempilkan dengan perintah lcd_putsf(“Praktikum ADC”);
pada baris ke 1 (ldc_gotoxy(0,0);) agar lcd dapet
menampilkan nilai yang terdeteksi pada pin ADC0 pada baris
kedua (lcd_gotoxy(0,1);), nilai dari variabel ADC yang
berupa interger harus diubah dahulu menjadi karakter dengan
menggunakan perintah ftoa(ADC,1,temp); lalu nilai dari
variabel ADC tersebut ditampilkan dari variabel temp dengan
menggunakan perintah lcd_puts(temp);. Ketika nilai
resistansi dari trimpot diperbesar, maka nilai pada lcd akan
23

bertambah dan ketika resistensi dari trimpot diperkecil, maka


nilai yang ditampilkan lcd akan berkurang.

Pada percobaan terakhir tentang interupsi


eksternal ketika program utama dijalankan, maka keempat
lampu LED yang masing masing terhubung ke pin PC0, PC1,
PC2, dan PC3 akan mati sesuai prerintah dari program utama
dimana ke empat pin tersebut mewakili bilangan biner 4 bit.
ketika perintah PORTC=0x0F; dijalankan, bilangan
heksadesimal 0F sama dengan 00001111 pada bilangan biner
yang berarti pin 0, 1, 2, dan 3 pada port C bernilai 1 dan pin
4,5,6, dan7 pada port C bernilai 0. Sehingga ketika program
utama terus dijalankan makaperintah selanjutnya akan
menunjukan bilangan heksadesimal 07 (00000111 dalam
bilangan biner), 05 (00000011 dalam bilangan biner), 01
(00000001),dan 00 (00000000) sehingga satu persatu lampu
LED pada pin 0, 1, 2, dan 3 akan mati secara berurutan.
Namun ketika interupsi dijalankan, yaitu ketika logika pin
INT0 atau PD2 berubah dari 1 menjadi 0 (falling edge)
seluruh lampu LED akan berkedip 3 kali. Hal tersebut
dikarenakan ketika interupsi terpicu, maka mikrokontroler
akan menjalankan program pada script interupt yang berisi
PORTC = 0xFF yang artinya semua pin pada port C bernilai
high (11111111) dan PORTC = 0x00 yang artinya semua pin
pada port C bernilai low (00000000) secara berulang
sebanyak 3 kali sehingga semua lampu LED yang terhubung
ke port C akan berkedip-kedip. Setelah perinta interupt
selesai dijalankan, maka mikrokontroler akan kembali
24

menjalankan program utamanya dimana lampu LED akan


mati satu per satu.
BAB V
KESIMPULAN DAN SARAN

5.1 Kesimpulan
Pada praktikum P4 tentang Mikrokontroler ini, ditarik
kesimpulan sebagai berikut.

a. Sistem masukan/keluaran (I/O) pada Atmega16 dapat


diatur dengan cara menentukan pin yang akan menjadi
pin masukan dan pin yang akan menjadi pin keluaran lalu
memprogramnya dengan logika “ketika ada input dari
pin masukan, maka kondisi pin keluaran adalah sebagai
berikut”.
b. Terdapat 7 pin ADC (PA0 – PA7) pada Atmega16 yang
dapat diatur sebagai masukan sinyal analog agar dapat
diterjemahkan menjadi sinyal digital yang dapat dibaca
oleh perangkat elektronika.
c. Terdapat 2 pin interupsi (PD2 dan PD3) pada Atmega16
yang dapat diatur untuk memicu mikrokontroler untuk
menjalankan program interupsi.

5.2 Saran
Sebaiknya alat penunjang praktikum yang
disediakan oleh laboratorium di jaga agar dapat digunakan
untuk praktikum selanjutnya.

25
26

(Halaman ini sengaja dikosongkan)


DAFTAR PUSTAKA

[1] Tim Asisten Laboratorium Pengukuran Fisis Teknik


Fisika ITS, Praktikum Elektronika Edisi 2, 2nd ed.
Surabaya: Laboratorium Pengukuran Fisis Teknik
Fisika ITS, 2019.
[2] S. L. Moskowitz, Advanced Materials Innovation:
Managing Global Technology in the 21st century.
Wiley, 2016.

27
LAMPIRAN

Rangkaian Simulai I/O pada Proteus 8

Rangkaian Simulasi ADC pada Proteus 8

28
29

Rangkaian Simulasi Interupsi Eksternal pada Proteus

Anda mungkin juga menyukai