Anda di halaman 1dari 10

14/03/2019

PROGRAMMING DIO, ADC,


DAC WITH ARDUINO
Pertemuan 2

PIN ARDUINO
 Pin pada Arduino dapat dikonfigurasi ke dalam
dua mode, yaitu mode input (menerima masukan
sinyal) dan output (mengirimkan/mengeluarkan
sinyal).
 Untuk mengeset mode pin, kita gunakan fungsi
pinMode(). Fungsi ini biasanya dipanggil di
dalam fungsi setup(). fungsi ini memerlukan dua
parameter, pinMode([nomorPin], [mode])

1
14/03/2019

DIGITAL I/O

 Semua pin pada Arduino, baik pin digital


maupun pin analog, dapat digunakan sebagai pin
digital.
 DIO bernilai 1 atau 0, on atau off, HIGH atau
LOW, 0 volt atau 5 volt.

INISIALISASI PIN DIO

 Pin sebagai input, pinMode(nomorPin, INPUT);


 Input digital, digitalRead(nomorPin);

 Pin sebagai output, pinMode(nomorPin, OUTPUT);

 Ouput digital, digitalWrite(nomorPin);


PERSIAKAN
 Lampu LED
 Kabel jumper
 1 buah resistor 10K ohm
 Breadboard
 Switch / tombol

2
14/03/2019

LATIHAN 1

int nilaiTombol=0;
void setup() {
pinMode(2,INPUT);
pinMode(3, OUTPUT);
}

void loop() {
nilaiTombol = digitalRead(2);
if (nilaiTombol == HIGH) {
digitalWrite(3, HIGH);
delay(200);
digitalWrite(3, LOW);
delay(200);
digitalWrite(3, HIGH);
delay(200);
digitalWrite(3, LOW);
delay(200);
} else {
digitalWrite(13, LOW);
}
}

3
14/03/2019

ADC
 ADC = analog to digital converter, converter ini
memiliki resolusi 10 bit, artinya nilai hasil
konversi berkisar dari 0 hingga 1023
 ADC pin analog in, untuk menerima input analog
yang masuk ke pin, gunakan fungsi
analogRead(nomorPin).
 Pada Arduino UNO, pin analog ditandai dengan
label A0 sampai A5. Pada board lainnya, pin-pin
yang diberi tanda A

PEMBAGI TEGANGAN (PRINSIP KERJA)

4
14/03/2019

PEMBAGI TEGANGAN (INPUT SENSOR)

PEMBAGI TEGANGAN (INPUT MANUAL)

5
14/03/2019

LATIHAN 1

RUN PROGRAM
 Potensiometer adalah hambatan variabel, 3 kaki
dihubungkan dengan 5V dan GND, dan kaki
tengah yang menghasilkan keluaran nilai analog
(pin A5).
 Pin A5 akan menerima sinyal analog (volt) yang
besarannya sesuai dengan putaran kenop
potensiometer.
 Sinyal tersebut akan dikonversi ke nilai angka
dan ditampilkan pada jendela Serial Monitor.
 Tools > Serial Monitor atau mengklik tombol
Serial Monitor

6
14/03/2019

SCRIPT PROGRAM 1-1


int val = 0;
void setup()
{
pinMode(A5,INPUT);
Serial.begin(9600);
}

void loop() {
val = analogRead(A5);
Serial.println(val);
delay(100);
}

DAC
 DAC = digital to anlog converter, dengan teknik
manipulasi lebar pulsa (PWM)
 Intensitas cahaya LED atau mengatur kecepatan
putaran motor
 Untuk mengatur nilainya, gunakan fungsi
analogWrite([nomorPin], [nilai]). Nilai
manipulasi berkisar antara 0 hingga 255.
 Manipulasi 0%, maka set nilai analog ke 0, dan
manipulasi 100%, maka set nilai parameter ke
255. Jika nilai manipulasi yang dikehendaki
50%, berarti nilai yang harus diset adalah 127
(50% x 255).

7
14/03/2019

PWM
 PWM ( Pulse Width Modulation) : modulasi
dengan mengubah lebar pulsa (duty cylce)
dengan nilai amplitudo dan frekuensi yang tetap.

LATIHAN 2

8
14/03/2019

SCRIPT PROGRAM 2-1


void setup(){
pinMode(3, OUTPUT);
}
void loop() {
analogWrite(3, 80);
delay(300);
analogWrite(3, 160);
delay(300);
analogWrite(3, 250);
delay(300);

SCRIPT PROGRAM 2-2


int pinLed = 3;
void setup(){
pinMode(3, OUTPUT);
}
void loop() {

for (int nilai = 0; nilai <= 255; nilai += 5) {


analogWrite(pinLed, nilai);
delay(30);
}
for (int nilai = 255; nilai >= 0; nilai -= 5) {
analogWrite(pinLed, nilai);
delay(30);
}
}

9
14/03/2019

END THIS SEASONS…..

10

Anda mungkin juga menyukai