Anda di halaman 1dari 15

PERCOBAAN I

I/O DASAR

Daffa Dzaki Dhiya U (119130079)


Asisten : Shovyana Wulan Tika (13117007)
Tanggal Percobaan : 20/04/2021
EL2209_B-12_Praktikum_Sistem_Mikroprosesor
Laboratorium Teknik Elektro
Institut Teknologi Sumatera

`
Abstrak—Pada pratikum sistem mikroprosesor ini akan
membahas tentang proses mikrokontroler pada komponen II. LANDASAN TEORI
ATMEGA 8535 tentang bagai mana melakukan input dan
outputnya. Pada pratikum ini aknmenggunakan simulasi Mikrokontroler ATMega8535
aplikasi dari proteus dan CVAVR agar pratikan bisa lebih ATMega8535 adalah mikrokontroler CMOS 8 bit daya rendah
memahami tantang cara memasukan program kedalam berbasis arsitektur RISC. Instruksi dikerjakan pada satu
komponen ATMEGA8535. siklus clock, ATMega8535 mempunyai throughput mendekati
1 MIPS per MHz, hal ini membuat ATMega8535 dapat bekerja
Kata Kunci—Flip-flop, rangkaian, gerbang logika dengan kecepatan tinggi walaupun dengan penggunaan daya
rendah. Mikrokontroler ATmega8535 memiliki beberapa fitur
I. PENDAHULUAN atau spesifikasi yang menjadikannya sebuah solusi pengendali
yang efektif untuk berbagai keperluan. Fitur-fitur tersebut
Mikrokontroler adalah sebuah system microprocessor dimana antara lain:
didalamnya sudah terdapat CPU, ROM, RAM, I/O, Clock dan
peralatan internal lainnya yang sudah saling terhubung dan 1. Saluran I/O sebanyak 32 buah, yang terdiri
terorganisasi (teralamati) dengan baik oleh pabrik pembuatnya atas Port A, B, C dan D
dan dikemas dalam satu chip yang siap pakai. 2. ADC (Analog to Digital Converter)
Teknologi yang digunakan pada mikrokontroler AVR berbeda 3. Tiga buah Timer/Counter dengan kemampuan
dengan mikrokontroler seri MCS-51. AVR berteknologi RISC perbandingan
(Reduced Instruction Set Computer), sedangkan seri MCS-51 4. CPU yang terdiri atas 32 register
berteknologi CISC (Complex Instruction Set Computer). 5. Watchdog Timer dengan osilator internal
Mikrokontroler AVR dapat dikelompokkan menjadi empat 6. SRAM sebesar 512 byte
kelas, yaitu keluarga ATtiny, keluarga AT90Sxx, keluarga 7. Memori Flash sebesar 8kb dengan kemampuan read
ATMega, dan keluarga AT89RFxx. Pada dasarnya yang while write
membedakan masing-masing kelas adalah memori, 8. Unit Interupsi Internal dan External
kelengkapan periperal dan fungsi-fungsi tambahan yang 9. Port antarmuka SPI untuk men-download program
dimiliki. ke flash
Adapun tujuan dari percobaan modul ini ialah : 10. EEPROM sebesar 512 byte yang dapat diprogram saat
1. Praktikan memahami datasheet ATMega 8535 operasi
11. Antarmuka komparator analog
2. Praktikan mampu membuat aplikasi input dan output
12. Port USART untuk komunikasi serial.
pada AVR dengan menggunakan bahasa
(pemudaminangkabau, 2013)
pemprograman C pada WinAVR
3. Praktikan memahami pengesetan fuse yang berkaitan Konfigurasi Pin ATMega8535
dengan penggunakan besar dan jenis kristal
Secara fungsional konfgurasi ATMega8535 sebagai berikut;
1. VCC merupakan pin yang berfungsi sebagai pin
masukan catu daya.
2. GND merupakan pin Ground.
3. Port A (PA0…PA7) merupakan pin I/O dua arah dan
pin masukan catu ADC.
4. Port B (PB0…PB7) merupakan pin I/O dua arah dan
pin fungsi khusus, yaitu Timer/Counter,
Komparator analog, dan SPI.
5. Port C (PC0…PC7) merupakan pin I/O dua arah dan
pin fungsi khusus, yaitu TWI, Komparator analog, dan
Timer Oscillator
6. Port D (PD0…PD7) merupakan pin I/O dua arah dan
pin fungsi khusus,yaitu komparator analog, Interupsi
eksternal, dan komunikasi serial.
7. RESET merupakan pin yang digunakan untuk me-
reset mikrokontroller.
8. XTAL1 danXTAL2 merupakan pin masukan clock
eksternal. KONFIGURASI PIN PORT
9. AVCC merupakan pin masukan tegangan untuk ADC.
10. AREF merupakan pin masukan tegangan referensi
ADC.
Gambar berikut menunjukkkan konfigurasi pin dan blok
diagram ATMega8535

PUD PADA SFIOR

Rekomendasi untuk inisialisasi pada pin input


. (tkrakitan, 2016)
Jika ada pin yang tidak terpakai, direkomendasikan agar tiap
pin ini terdefinisikan.
Skematik I/O Walaupun kebanyakan input digital dinonaktifkan dalam mode
Semua register dan referensi bit pada bagian ini ditulis dalam deep sleep seperti yang dideskripsikan diatas, input yang
bentuk umum. Huruf ”x” merepresentasikan nomor untuk port mengambang harus dihindari untuk mengurangi konsumsi arus
dan huruf ”n” merepresentasikan nomor bit nya. pada semua mode lain di mana input digital diaktifkan (Reset,
Bagaimanapun, ketika menggunakan register atau bit yang Active mode, and Idle mode).
ditetapkan di program, maka bentuk tepatnya harus digunakan. Metode paling sederhana untuk mendefinisikan suatu pin yang
Sebagai contoh, PORTB3 untuk nomor 3 di Port B, ditulis tidak digunakan adalah untuk mengaktifkan pull-up internal
secara general sebagai PORTxn. I/O Registers dan lokasi bit pada kasus ini, pull-up akan dinonaktifkan saat reset. Jika
secara fisik terdaftar di ”Register Description for I/O-Ports” di konsumsi daya rendah ketika reset itu penting, maka disarankan
halaman 66. untuk menggunakan pull-up atau pull-down eksternal.
Tiga lokasi alamat memori I/O dialokasikan untuk tiap port, Menghubungkan pinpin yang tidak digunakan ke Vcc atau
satu untuk tiap Data Register – PORTx, Data Direction Register GND langsung tidak disarankan karena dapat mengakibatkan
– DDRx, dan Port Input Pins – PINx. I/O Port Input Pins adalah kelebihan arus jika pin secara tidak sengaja dikonfigurasikan
read only, sedangkan Data Register dan Data Direction Register sebagai output.
adalah read/write. Sebagai tambahan, bit Pull-up Disable –
PUD pada SFIOR menonaktifkan fungsi pull-up untuk semua DESKRIPSI REGISTER (UNTUK PORT A)
pin di semua port saat diaktifkan.
III. METODOLOGI

Alat dan Bahan

1. Software ISIS-PROTEUS
Ketikkan script di bawah ini ke Code Vision AVR.
2. Software CV AVR

Langkah Kerja
2. TUGAS I.A.2
Persiapan sebelum pratikum
Modifikasi program di atas sehingga menghasilkan
Siapkan alat dan bahan yang digunakan (starter-kit FASILITAS DELAY keluaran
PADAled (OUTPUT LED
AVR
AVR DT-Combo, DISLAY) sesuai dengan 3 angka terakhir NIM
USBasp, PC/Laptop). 1. TUGASsalah I.B.1 satu teman kelompok anda.
Misalkan NIM anda adalah 13116021 maka
penulisannya “DDRB = 0x15”..
Pastikan Persiapan pada 1.A telah terpenuhi.
Pelajari fasilitas delay AVR
Buka software yang digunakan (Code Vision AVR
dan Khazamma
Programmer)

Apabila kondisi OUTPUT LED DISPLAY


menyala bergantian setiap (sekitar) 500 milidetik
sesuai dengan kedua nilai PORTB di atas maka
percobaan yang dilakukan benar..
Install terlebih dahulu driver USBasp di laptop
(tanya kepada asisten)

2. TUGAS I.B.2

Modifikasi contoh program Tugas 1.B.1 sehingga


menghasilkan keluaran led (OUTPUT LED
Hubungkan USBasp pada starter-kit AVR pad port
DISLAY) secara bergantian sesuai dengan
yang disediakan,
representasi biner dari tiga angka terakhir NIM
kemudian hubungkan ke laptop.
anggota kelompok Anda.

I.C PORT B SEBAGAI OUTPUT DAN PORT D SEBAGAI


Lakukan panduan praktikum dengan hati-hati dan INPUT
teliti.
1. TUGAS I.C.1

Pastikan Persiapan pada I.A telah terpenuhi


Hubungkan PORT B (ATMega8535) pada PORT
I.A PORT B SEBAGAI OUTPUT
OUTPUT (Trainer Board)
Hubungkan PORT D (ATMega8535) pada PORT
1. TUGAS I.A.1
INPUT (Trainer Board).
Buka buku panduan cara membuat proyek baru
(new project) pada Code
Vision AVR.
START

Apabila kondisi OUTPUT LED DISPLAY sesuai DDRB = 0xFF


dengan SWITCH INPUT maka
percobaan yang dilakukan benar.

PORTB = (1<<PB6)|(1<<PB4)|(1<<PB2)|(1<<PB0)

2. TUGAS I.C.2

Buatlah program untuk membaca penekanan END


tombol saklar push-button yang merepresentasikan
biner dari tiga angka terakhir NIM anggota
kelompok. Bila terdapat penekanan pada push Sama seperti yang pertama, untuk mengeset port B
button tersebut maka Tugas I.B.2 dikerjakan sebagai output maka register DDR port B akan diset
(dengan delay 200 ms). Jika semua tombol bernilai satu atau 0xFF. Selanjutnya port B akan diset
IV. LED
dilepas maka HASIL DAN ANALISIS
padam. sesuai dengan NIM saya yang bernilai 0b01001111.
Dan didapatkan lampu yang menyala sesua dengan
I.A PORT B SEBAGAI OUTPUT NIM dimulai dengan pin 7 sampai pin 0
A.1 TUGAS I.A.1
Pada percobaan ini menggunakan Port B sebagai output dari
I.B FASILITAS DELAY PADA AVR
program yang sudah dibuat pada WinAVR. Flow chart dari
program dapat dilihat sebagai berikut.:
START

START
DDRB = 0xFF

DDRB = 0xFF

PORTB = (1<<PB6)|(1<<PB4)|(1<<PB2)|(1<<PB0)
PORTB = 0b01001111

END
END
Delay_ms(500)

Port B yang akan di set sebagai input. Oleh karena itu harus
mengatur register DDR pada port tersebut. Nilai DDRB harus PORT B = 0xFF
diisis dengan semua nikai pada bitnya jadi 0xFF. Pengisian
nilai ini pada register DDR sebuah port maka akan menjadikan
port tersebut sebagai input. Akan tetapi, jika nilai pada register Delay_ms(500)
DDR diubah menjadi nol seperti 0x00 maka akan menjadikan
nilainya menjadi input.
A.2 TUGAS I.A.2 Pasa percobaan ini kita menggunakan delay yaitu 500 ms yang
mana lampu led akan berkidip ketika masing-masing output
terkena delay, di atas terdapat 2 pengaturan delay yang mana
pengaturan pertama membuat lampu menyala selama 500m/s
dan pengatauran yang ke dua untuk mematikan lampu selama
500 m/s
Dalam percobaan yang kedua kita modifikasi menggunakan
kode biner berdasarkan nilai NIM kita yaitu (01001111) yang
mana saya masukan pada pengatauran pertama (saat lampu led
menyala) oleh karena itu aoutput yang keluar dari lampu
berdasarkan dari nilai NIM saya menjadikan pin 1,2,3,4,dan 7
tetap menyala dan pada pin yang lainnya akan mati setelah [1] Laboratorium Dasar Teknik Elektro ITERA. (2021). Modul
500m/s 1 I/O DASAR,. South Lampung: Teknik Elektro Institut
Teknologi Sumatera
I.C PORT B SEBAGAI OUTPUT DAN PORT A SEBAGAI
INPUT

Pada percobaan kalai ini sedikit mengalami masalah tentang


iniput dan outputnya sehingga harus menggunaka pin yang
berbeda disini saya menggunakan 2pin yaitu pin A dan pin B. pemudaminangkabau. (2013, february 28). Pengertian
Pin A sebagai Inputnya Dan pin B sebagai outputnya berikut ini Mikrokontroler ATMega8535. Retrieved maret 23,
adalha tampilan di proteusnya. 2020, from
https://pemudaminangkabau.wordpress.com/2013/02/
28/pengertian-mikrokontroler-
atmega8535/#comments
tkrakitan. (2016, january 28). Pengertian Mikrokontroler
ATMega8535. Retrieved from pengertian-
mikrokontroler-atmega8535:
https://tkrakitan1411878.wordpress.com/2016/01/28/
pengertian-mikrokontroler-atmega8535/

Dari gambar diatas didapatkan pin A sebagai masukan berupa


switch dan pin B sebagai outputnya berupa lampu pada
percobaan pertama. Apabila input tidak dimasukan atau switch
tidak ditekan maka aoutputnya pun tidak keluar oleh karena itu
perlu input atau switch di masukan agar lampu bisa menyala
semua
Pada percobaan kedua ditambahkan delay sebesar 200m/s yang
membuat lampu berkedip apabila kita pencet switchnya dan
juga dimodifikasi dengan NIM kita berupa biner pada masukan
di PORTA sehingga aoutputnya pada pin yang bernialai 1 akan
tetap menyala.

V. SIMPULAN

1. Pada percobaan kali ini diketahuai bahwa ATMEG8535


mempunya 4 jenis PIN yait a,b,c,d yang masing-masing
pin memiliki 8 pin sebagai input dan aoutput.
2. Untuk percobaan delaynya AVR GCC nya bisa
melakukannya sehingga bisa mengatur waktu yang
diinginkan
3. Apabila ingin mengatur port sebagai input dapat dilakukan
dengan mesakuakn 0x00 untuk bisa melakukan input
dislah satu pin
4. Apabial ingin melakukan aoutputnya tinggal memasukan
0xFF sebagai outputnya dari pin yang dimasukan pada
salah satu port nya

VI. REFERENSI
Lampiran
Vidio simulasi pratikum
Perc1.
https://drive.google.com/file/d/1c5XPEEckDGNTWYvNeOD2zEQ
H9bNnvvb2/view?usp=sharing
Perc 2.
https://drive.google.com/file/d/1BlADQEOdwEo33irMQ15Lxbu0
CGfRzF9r/view?usp=sharing
Perc 3.
https://drive.google.com/file/d/1bfO7-0v-
YFvR9c3RkCnmXBx8g4cuNTzC/view?usp=sharing
Perc 4.
https://drive.google.com/file/d/1wuPao21PPxy9a1lXPM7i5fkNF2B
GHUqu/view?usp=sharing
Perc 5.
https://drive.google.com/file/d/1C1XAQcRT-
yfAvBnjr41kqBwoEaD4xVVn/view?usp=sharing
Perc 6.
https://drive.google.com/file/d/1EVTBKqvofkKbvmfFKoTiEk7NV
YbE7YkT/view?usp=sharing

BUKU BCK

Anda mungkin juga menyukai