JOB. 1
PIN DIGITAL
Di susun oleh:
II. Teori :
Papan sirkuit (circuit board) Arduino Uno adalah salah satu jenis produk Arduino yang
cukup popular. Beberapa versi Arduino Uno telah diproduksi dan dipasarkan. Untuk versi
yang terkahir ini, jenis mikrokontroler yang dipasang adalah ATMEGA328. Tampilan
Arduino Uno ditunjukkan dalam Gambar 1.
Sumber: components101.com
Pin Arduino Uno berjumlah 28 buah. Beberapa buah pin hanya mempunyai sebuah
fungsi. Contohnya adalah pin-pin tegangan. Board Arduiono bekerja pada level tegangan 5V.
Tetapi board ini juga menyediakan sumber tegangan 3,3V yang digunakan bagi module-
module bertegangan 3,3V seperti modul-modul transceiver dan beberapa modul sensor.
Agar bisa bekerja dan berfungsi dengan baik, board Arduino dapat diberi sumber
tegangan 5V. Sumber-sumber tegangan 5V dapat dihubungkan dengan konektor USB. Cara
lainnya adalah menghubungkan tegangan 5V power supply pada pin 5V dan tegangan 0V
power supply pada pin GND.
Untuk sumber tegangan yang lebih besar daripada 5V, tegangan positip dihubungkan
pada pin Vin, sedang tegangan 0V dihubungkan dengan pin GND. Sebuah IC regulator yang
terdapat pada board Arduino akan mengubah tegangan lebih tadi menjadi tegangan 5V. Agar
arus yang mengalir pada IC regulator tidak terlalu besar, tegangan masukan sebaiknya sekitar
3V lebih tinggi dari 5V.
Jika pin-pin tegangan umumnya hanya mempunyai satu fungsi, pin-pin lain
mempunyai lebih dari satu fungsi. Pin dengan nama PD0 misalnya, dapat berfungsi sebagai
pin digital sekaligus pin komunikasi serial. Fungsi pin dapat ditentukan pada saat proses
inisialisasi dalam program. Agar fungsi-fugsi tersebut tidak saling berbenturan, pin
multifungsi tersebut hendaknya diset pada salah satu fungsinya saja.
Pada job ini, akan disampaikan cara-cara mengatur pin-pin digital, baik sebagai
input/masukan maupun output/keluaran.
Kabel USB
2 LED
2 resistor 1k Ω
2 resistor 100 Ω
1. Hubungkan 2 saklar push button, 2 LED, dan 2 resistor pada Arduino seperti pada
Gambar 2.
Gambar 2 Rangkaian percobaan
2. Bukalah IDE Arduino, kemudian hubungkan computer dengan board Arduino dengan
menggunakan kabel USB.
3. Tuliskan program berikut pada editor IDE. Program asli terdapat dalam website
arduino.cc
void setup() {
// Inisialisasi pinLed1 sebagai output
pinMode(pinLed1, OUTPUT);
// Inisialisasi pinTombol1 sebagai input
pinMode(pinTombol1, INPUT);
}
void loop() {
// baca status pinTombol1
statusTombol1 = digitalRead(pinTombol1);
6. Tambahkan baris perintah yang menyebabkan prinsip kerja antara Tombol2 dengan
Led2 sama dengan prinsip kerja antara Tombol1 dan Led1. Tuliskan baris program
tambahannya.
7. Lakukan perubahan pada program sehingga isi tabel kebenaran menjadi seperti pada
Tabel 2.
Tabel 2
L L L H
L H L H
H L L H
H H H L
Rangkaian logika apakah yang ditunjukkan oleh tabel kebenaran pada Tabel 2?
Tuliskan programnya.
8. Lakukan perubahan pada program sehingga isi tabel kebenaran menjadi seperti pada
Tabel 3.
Tabel 3
L L H L
L H L H
H L L H
H H H L
Rangkaian logika apakah yang ditunjukkan oleh tabel kebenaran pada Tabel 3?
Tuliskan programnya.
9. Apakah fungsi dari resistor 100 ohm dan 1k ohm pada rangkaian di atas? Jelaskan.
V. Data Hasil Percobaan, Analisa, Jawaban :
V.I. Tugas 5
Pada saat program di upload ke board arduino pada software proteus,maka akan
muncul kondisi “HIGH” pada LED 1 saat tombol 1 ditekan dan pada saat tombol 1
dilepas maka akan muncul kondisi “LOW” pada LED 1. Sedangkan LED 2 tidak
terdapat perubahan ketika tombol 2 ditekan. Hal ini disebabkan karena, program yang
dibuat pada Arduino hanya untuk satu input dan output, yaitu di pin 2 sebagai input
dan pin 8 sebagai output.
V.II. Tugas 6 Prinsip Kerja Antara Tombol2 Dengan Led2 Sama Dengan
Prinsip Kerja Antara Tombol1 Dan Led1
void setup() {
pinMode(pinLed1, OUTPUT);
pinMode(pinTombol1, INPUT);
pinMode(pinLed2, OUTPUT);
void loop() {
statusTombol1 = digitalRead(pinTombol1);
statusTombol2 = digitalRead(pinTombol2);
if (statusTombol1 == HIGH) {
// hidupkan LED
digitalWrite(pinLed1, HIGH);
else {
// padamkan LED
digitalWrite(pinLed1, LOW);
statusTombol1 = digitalRead(pinTombol1);
if (statusTombol2 == HIGH) {
// hidupkan LED
digitalWrite(pinLed2, HIGH);
else {
// padamkan LED
digitalWrite(pinLed2, LOW);
}
Pada saat program di upload ke board arduino pada software proteus,maka akan
muncul kondisi “HIGH” pada LED 1 saat tombol 1 ditekan dan pada saat tombol 1
dilepas maka akan muncul kondisi “LOW” pada LED 1. Dan pada tombol 2 ditekan
maka akan muncul kondisi “HIGH” pada LED 2 dan pada saat tombol 2 dilepas maka
akan muncul kondisi “LOW” pada LED 2.
V.III. Tugas 7 Rangkaian logika yang ditunjukkan pada tabel 2 adalah Gerbang
Logika AND
void setup() {
// Inisialisasi pinLED 1 sebagai output
pinMode(pinLed1, OUTPUT);
pinMode(pinTombol1, INPUT);
pinMode(pinLed2, OUTPUT);
pinMode(pinTombol2, INPUT);
void loop() {
statusTombol1 = digitalRead(pinTombol1);
statusTombol2 = digitalRead(pinTombol2);
digitalWrite(pinLed1, HIGH);
else {
digitalWrite(pinLed1, LOW);
else {
digitalWrite(pinLed2, HIGH);
Pada saat program di upload ke board arduino pada software proteus, LED 1 akan
berkondisi “LOW” dan LED 2 akan berkondisi “HIGH”. Program ini sama seperti
tabel kebenaran 2. Dan dari tabel 2 tersebut, dapat diketahui bahwa rangkaian logika
yang digunakan adalah gerbang logika AND.
V.IV. Tugas 8 Rangkaian logika yang ditunjukkan pada tabel 3 adalah Gerbang
Logika XNOR
void setup() {
// Inisialisasi pinLED 1 sebagai output
pinMode(pinLed1, OUTPUT);
// Inisialisasi pintombol 1 sebagai input
pinMode(pinTombol1, INPUT);
// Inisialisasi pinLED 2 sebagai output
pinMode(pinLed2, OUTPUT);
// Inisialisasi pintombol 2 sebagai input
pinMode(pinTombol2, INPUT);
}
void loop() {
// baca status pintombol 1
statusTombol1 = digitalRead(pinTombol1);
// baca status pintombol 2
statusTombol2 = digitalRead(pinTombol2);
V.V. Tugas 9 Apakah fungsi dari resistor 100 ohm dan 1k ohm pada rangkaian
di atas? Jelaskan!
Fungsi resistor 100 Ohm (Ω) sebagai penahan tegangan dan arus yang akan
dikirimkan ke lampu LED 1 dan LED 2, dengan nilai tegangan kerja 1,6V sampai
3,5V dan nilai arus 10mA – 20mA. Dengan demikian LED dapat menyala dan tidak
rusak akibat kelebihan arus.
Fungsi dari resistor 1k Ohm (Ω) sebagai Pull-Down Resistor atau penarik
tegangan. Jika Tombol ditekan, arus akan mengalir dari pin input dan akan terhubung
ke resistor 1k ohm (Ω) ke 5V. Ketika Tombol tidak ditekan, maka arus terhubung ke
resistor 1k Ohm (Ω) dan ditarik (pulled) ke grounding. Bila Input tidak dihubungkan
dengan pull-down resistor maka nilai arus akan menjadi nilai ambang diantara 0-5
Volt dan pin tidak akan terhubung kemanapun. Ini dikarenakan rangkaian percobaan
yang telah dilakukan menggunakan Pull-Down resistor, maka input akan ada dalam 2
state, 0 (bila tombol tidak ditekan, arus akan ditarik ke grounding) atau 5 volt (ketika
tombol ditekan). Dengan demikian dapat dipastikan bahwa nilai tegangan adalah 0
atau 5, bukan nilai tegangan diantaranya.
VI. Kesimpulan :
Mengatur masukan maupun keluaran pada pin digital pada program arduino IDE dan
mengintergrasikannya pada board arduino.
Memahami penggunaan dan cara kerja tombol pada rangkaian arduino.
Memahami penggunaan dan cara kerja Lampu LED pada rangkaian arduino.
Mengetahui pentingnya penggunaan resistor dalam rangkaian arduino diatas.