0% menganggap dokumen ini bermanfaat (0 suara)
71 tayangan3 halaman

Tugas 7

Dokumen ini membahas tentang input dan output digital serta analog pada Arduino. Secara default, semua pin pada Arduino berada pada mode input. Untuk input digital, gunakan fungsi digitalRead(). Untuk output digital, gunakan digitalWrite() setelah mengatur pin ke mode output. Pin analog dapat mendeteksi nilai voltase antara 0-5V dan mengubahnya menjadi nilai digital 0-1023 menggunakan analogRead().

Diunggah oleh

Diki Farenhain
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
71 tayangan3 halaman

Tugas 7

Dokumen ini membahas tentang input dan output digital serta analog pada Arduino. Secara default, semua pin pada Arduino berada pada mode input. Untuk input digital, gunakan fungsi digitalRead(). Untuk output digital, gunakan digitalWrite() setelah mengatur pin ke mode output. Pin analog dapat mendeteksi nilai voltase antara 0-5V dan mengubahnya menjadi nilai digital 0-1023 menggunakan analogRead().

Diunggah oleh

Diki Farenhain
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 3

Tugas 7

Digital berarti sinyal yang dikirimkan/diterima bernilai 1 atau 0, on atau off, HIGH
atau LOW, ada atau tidak ada sinyal. Berbeda dengan sinyal analog yang nilainya bersifat
kontinyu, yakni nilai antara 0 dan 1 dipertimbangkan. Pin digital berarti pin dapat
menerima/mengirim sinyal digital.
Biasanya pin pada Arduino dapat dikonfigurasi ke dalam dua mode, yaitu mode input
dan output. Mode input berarti mengeset pin agar dapat digunakan untuk menerima masukan
sinyal. Mode output berarti mengeset pin agar dapat mengirimkan sinyal.

Digital Input
Pada dasarnya semua pin yang ada pada Arduino berada pada mode input secara
default. Jadi ketika kita ingin menggunakan suatu pin sebagai input, maka kita tidak mesti
menuliskan pinMode(nomorPin, INPUT);.
Untuk menerima input digital yang masuk ke pin, kita gunakan
fungsi digitalRead(nomorPin). Fungsi ini menerima satu parameter, yaitu nomor pin mana
yang akan dibaca nilai inputnya. Fungsi ini akan mengembalikan nilai 1 dan 0, atau HIGH
dan LOW (HIGH adalah konstanta dengan nilai 1 dan LOW adalah konstanta dengan nilai 0).
Berikut contoh baris pemrogramannya:
// kita buat variabel untuk nomor pin supaya lebih mudah merujuknya
const int pinButton = 2;
const int pinLed = 13;

// variabel untuk menyimpan nilai input pin button


int nilaiButton = 0;

void setup() {
// set mode input pada pin untuk button, ga wajib
pinMode(pinButton, INPUT);

// set pin untuk LED ke mode output


pinMode(pinLed, OUTPUT);
}

void loop() {
// baca nilai pin untuk button
nilaiButton = digitalRead(pinButton);

// cek apakah button ditekan


if (nilaiButton == HIGH) {

// nyalakan LED
digitalWrite(pinLed, HIGH);

} else { // kalo nilai pin LOW


// matikan LED
digitalWrite(pinLed, LOW);
}
}
Digital Output
Untuk mengirimkan sinyal digital, kita gunakan fungsi digitalWrite(nomorPin,
nilaiDigital). Fungsi ini dapat digunakan pada pin yang sebelumnya sudah diset ke mode
OUTPUT. Parameter kedua adalah set nilai HIGH atau LOW. Apabila pin diset dengan nilai
HIGH, maka voltase pin tersebut akan diset ke 5V (atau 3.3V pada board bertipe 3.3V) dan
bila pin diset ke LOW, maka voltase pin tersebut akan diset ke 0V. Berikut contoh kode
pemrogramannya:
const int pinButton = 2;
const int pinLed = 3;

// variabel untuk menyimpan nilai input pin button


int nilaiButton = 0;

void setup() {
// set mode input pada pin untuk button, ga wajib

pinMode(pinButton, INPUT);

// set pin untuk LED ke mode output


pinMode(pinLed, OUTPUT);
}

void loop() {
// baca nilai pin untuk button
nilaiButton = digitalRead(pinButton);

// cek apakah button ditekan


if (nilaiButton == HIGH) {
// buat LED berkedip
digitalWrite(pinLed, HIGH);
delay(100);
digitalWrite(pinLed, LOW);
delay(100);

} else { // kalo nilai pin LOW


// matikan LED
digitalWrite(pinLed, LOW);
}
}
Analog Input dan Analog Output
Pin analog pada Arduino (dan mikrokontroller lain pada umumnya) dapat digunakan
untuk input dan output digital. Hanya saja pin analog memiliki fitur untuk dapat mengubah
sinyal analog yang masuk menjadi nilai digital yang mudah diukur. Pin digital hanya dapat
mengenali sinyal 0 volt sebagai nilai LOW dan 5 volt sebagai nilai HIGH. Sedangkan Pin
analog dapat mengenali sinyal pada rentang nilai voltase tersebut. Hal ini sangat berguna
ketika kita hendak mengukur sesuatu dari sensor dan menggunakan nilai masukan tersebut
untuk keperluan lain.
Pin analog ini terhubung dengan converter pada mikrokontroller yang dikenal dengan
istilah analog-to-digital converter (disingkat ADC atau A/D). Converterini mengubah nilai
analog berbentuk sinyal voltase ke dalam bentuk digital/angka supaya nilai analog ini dapat
digunakan dengan lebih mudah dan aplikatif. Pada Arduino (mikrokontroller
ATMega) converter ini memiliki resolusi 10 bit, artinya nilai hasil konversi berkisar dari 0
hingga 1023. Pada Arduino UNO, pin analog ditandai dengan label A0 sampai A5. Pada
board lainnya, pin-pin yang diberi tanda A, Analog, ADC adalah pin analog. Fungsi yang kita
gunakan untuk membaca nilai analog pada Arduino adalah analogRead([nomorPin]). Berikut
contoh pemrogramannya:
int pinPot = A5; // pin untuk menerima sinyal analog dari potensiometer
int val = 0; // variabel untuk menyimpan nilai konversi analog ke digital

void setup()
{
Serial.begin(9600); // setup koneksi serial
}

void loop() {
val = analogRead(pinPot); // baca nilai analog dari potensiometer
Serial.println(val); // kirim nilai val ke koneksi serial
delay(100); // beri jeda hingga pengulangan selanjutnya
}

Sumber Refrensi

 https://www.codepolitan.com/digital-input-output-pada-arduino
 https://www.codepolitan.com/analog-input-pada-arduino
 https://www.proyekrumahan.id/2016/06/mengenal-digital-input-output-pada-arduino.html

Anda mungkin juga menyukai