MODUL 1
I/O DASAR
TUJUAN
Gambar dan table berikut ini dikutipkan dari datasheet ATMega 8535:
Rekomendasi untuk inisialisasi pada pin input (Datasheet ATMega8535 Hal. 56)
TUGAS PENDAHULUAN
Persiapan
TUGAS I.A.1
1. Buka buku panduan cara membuat proyek baru (new project) pada Code
Vision AVR.
2. Ketikkan script di bawah ini ke Code Vision AVR.
#include <mega8535.h>
void main(void)
{
DDRB = 0xFF; // Seluruh Port B dikonfigurasi sebagai OUTPUT
PORTB = 0x00; // Seluruh Port B bernilai ‘0’, maka LED akan
menyala
}
Apabila kondisi OUTPUT LED DISPLAY sesuai dengan nilai PORTB maka
percobaan yang dilakukan benar.
TUGAS I.A.2
Persiapan
TUGAS I.B.1
#include <mega8535.h>
#include <delay.h>
void main(void)
{
DDRB = 0xFF; //Seluruh Port B dikonfigurasi sebagai OUTPUT
PORTB = 0xFF; // Semua Port B mengeluarkan logika ‘1’
Sehingga LED tidak menyala.
while(1)
{
PORTB = 0x00; // LED menyala
delay_ms(500);
PORTB = 0xFF; // LED mati
delay_ms(500);
}
}
Apabila kondisi OUTPUT LED DISPLAY menyala bergantian setiap (sekitar) 500
milidetik sesuai dengan kedua nilai PORTB di atas maka percobaan yang dilakukan
benar.
TUGAS I.B.2
Persiapan
TUGAS I.C.1
#include <mega8535.h>
#include <delay.h>
void main(void)
{
DDRB = 0xFF; // Seluruh port B dikonfigurasi sebagai output
PORTB = 0xFF;
DDRD = 0x00; // Port D dikonfigurasi sebagai input
PORTD = 0x00;
#asm(“nop”)
while(1){
PORTB = PIND ;// Membaca penekanan push-button di port D
// dan outputnya dikeluarkan di port B.
}
}
Apabila kondisi OUTPUT LED DISPLAY sesuai dengan SWITCH INPUT maka
percobaan yang dilakukan benar.
TUGAS I.C.2
PERTANYAAN ANALISIS
APENDIKS A
KIT PRAKTIKUM
AVR Microcontroller
Informasi Pin