Anda di halaman 1dari 7

Nama Anggota Kelompok :

1. Andini Widya K (193304016)


2. Dimas Wahyu A (193304040)
3. Eryandhi Putro N (193304015)
4. Tri Handoko (193304067)

PRAKTIKUM MIKROKONTROLER 1

A. Judul : Konfigurasi Pin Output Arduino


B. Tujuan
1. Mahasiswa dapat memahami konfigurasi pin output Arduino
2. Mahasiswa dapat memahami fungsi setbit, bitwise OR dan left shift

C. Dasar Teori
Register port memungkinkan manipulasi tingkat yang lebih rendah dan lebih cepat dari
pin I/O mikrokontroler pada papan Arduino. Chip yang digunakan pada papan Arduino
( ATmega8 dan ATmega168 ) memiliki tiga port:
• B (pin digital 8 hingga 13)
• C (pin input analog)
• D (pin digital 0 hingga 7)
Setiap port dikendalikan oleh tiga register, yang juga merupakan variabel yang
ditentukan dalam bahasa arduino. Register DDR, menentukan apakah pin tersebut
INPUT atau OUTPUT. Register PORT mengontrol apakah pin TINGGI atau
RENDAH, dan register PIN membaca status pin INPUT yang disetel ke input dengan
pinMode(). Peta chip ATmega8 dan ATmega168 menunjukkan porta. Chip
Atmega328p yang lebih baru mengikuti pinout dari Atmega168 persis.
Register DDR dan PORT dapat ditulis dan dibaca. Register PIN sesuai dengan status
input dan hanya dapat dibaca.
PORTD memetakan ke pin digital Arduino 0 hingga 7
• DDRD - Register Arah Data Port D - baca / tulis
• PORTD - Register Data Port D - baca / tulis
• PIND - Daftar Pin Input Port D - hanya baca
PORTB memetakan ke pin digital Arduino 8 hingga 13 Dua bit tinggi (6 & 7)
dipetakan ke pin kristal dan tidak dapat digunakan
• DDRB - Register Arah Data Port B - baca / tulis
• PORTB - Register Data Port B - baca / tulis
• PINB - Daftar Pin Input Port B - hanya baca
Peta PORTC ke pin analog Arduino 0 hingga 5. Pin 6 & 7 hanya dapat diakses di
Arduino Mini
• DDRC - Register Arah Data Port C - baca / tulis
• PORTC - Register Data Port C - baca / tulis
• PINC - Daftar Pin Input Port C - hanya baca
Setiap bit dari register ini sesuai dengan satu pin; misalnya bit rendah dari DDRB,
PORTB, dan PINB mengacu pada pin PB0 (pin digital 8). Untuk pemetaan lengkap
nomor pin Arduino ke port dan bit, lihat diagram untuk chip Anda: ATmega8 ,
ATmega168 . (Perhatikan bahwa beberapa bit port dapat digunakan untuk hal-hal
selain I/O; berhati-hatilah untuk tidak mengubah nilai bit register yang sesuai
dengannya.)
D. Peralatan yang digunakan :
1. Tinkercad
2. Arduino Uno
3. Breadboard
4. 2 LED (Merah dan Kuning)
5. Laptop atau Komputer

E. Rangkaian Percobaan
F. Langkah Percobaan
1. Siapkan peralatan
2. Rangkai sesuai dengan rangkaian percobaan
3. Konfigurasi Arduino menggunakan Tinkercad

G. Program Percobaan
Program 1
void setup()
{
pinMode(2,OUTPUT);
}
void loop()
{
digitalWrite(2,HIGH);
}
Program 2
void setup()
{
DDRD=0xFF; //0b11111111
}
void loop()
{
PORTD=0x06; //0b00000110
}
Program 3
#define setbit(PORT,BIT) (PORT|=(1<<BIT))
void setup()
{
DDRD=0xFF;
}
void loop()
{
setbit(PORTD,2);
setbit(PORTD,1);
}
H. Hasil

Program 1

Pada program 1 ini menggunakan syntax yang umum digunakan yaitu pinMode
dan digitalWrite. pinMode mendefinisikan pin sebagai output dan digitalWrite
memberikan nilai HIGH pada pin yang didefinisikan.
Program 2

Pada program 2 menggunakan syntax DDRD dan PORTD. DDRD digunakan


untuk mendefinisikan PORTD sebagai input atau output. PORTD digunakan
memberi nilai HIGH / LOW sesuai dengan jumlah hexa / binary.
Program 3

Pada program 3 menggunakan fungsi setbit. Fungsi setbit digunakan untuk mengatur
PORTD dengan logika OR dan bitwise << yang digunakan untuk menggeser nilai – nilai
bit ke kiri.

Anda mungkin juga menyukai