analog input output

7
ANALOG IO A. Analog Input 1. Hubungkan pin A0 dengan potensiometer 20K ohm sebagai simulasi sensor seperti pada gambar 3.1 2. Buatlah sketch seperti berikut : int sensorPin = A0; int val = 0; void setup() { Serial.begin(9600); } void loop() { val = analogRead(sensorPin); Serial.println(val);

Upload: puti-andini

Post on 30-Jul-2015

46 views

Category:

Data & Analytics


0 download

TRANSCRIPT

Page 1: Analog Input Output

ANALOG IO

A. Analog Input

1. Hubungkan pin A0 dengan potensiometer 20K ohm sebagai simulasi sensor seperti pada

gambar 3.1

2. Buatlah sketch seperti berikut :

int sensorPin = A0;

int val = 0;

void setup()

{

Serial.begin(9600);

}

void loop()

{

val = analogRead(sensorPin);

Serial.println(val);

}

3. Verify, upload dan buka Serial Monitor.

Page 2: Analog Input Output

4. Putar potensiometer, dan perhatikan nilai pada Serial Monitor.

No Posisi Potensiometer Nilai Yang Terbaca Serial

Monitor

1 Minimum ( 0 ohm) 0

2 Tengah (10 Kohm) 538

3 Maksimum (20 Kohm) 1023

B. Membaca Tegangan

1. Masih dengan rangkaian pada Gambar 3.1, buatlah sketch berikut :

int sensorPin = A0;

int val = 0;

float voltage;

void setup()

{

Serial.begin(9600);

}

void loop()

{

val = analogRead(sensorPin);

voltage = (5.0/1023.0)* val;

Serial.print("Data:");

Serial.print(val);

Page 3: Analog Input Output

Serial.print(" ");

Serial.print("Vin:");

Serial.println(voltage);

}

2. Verify, upload dan buka Serial Monitor.

3. Putar potensiometer, dan perhatikan nilai pada Serial Monitor.

No Posisi Potensiometer Nilai yang terbaca di serial monitor

Data (decimal) Vin(volt)

1 Minimum ( 0 ohm) 0 0 V

2 Tengah (10 Kohm) 536 2.62 V

3 Maksimum (20 Kohm) 1023 5 V

Page 4: Analog Input Output

C. Analog Output

1. Hubungkan pin A0 dengan potensiometer 20K ohm sebagai simulasi sensor dan LED pada pin

9

2. Buatlah sketch seperti berikut :

int ledPin = 9;

int analogPin = A0;

int val = 0;

void setup()

{

pinMode(ledPin, OUTPUT);

}

void loop()

{

val = analogRead(analogPin);

analogWrite(ledPin, val / 4);

}

Page 5: Analog Input Output

4. Verify dan upload jika program sudah benar.

5. Putar potensiometer, dan perhatikan intensitas cahaya pada LED.

No Posisi Potensiometer Intensitas cahaya LED

1 Minimum ( 0 ohm) Mati

2 Tengah (10 Kohm) Redup

3 Maksimum (20 Kohm) Cerah

TUGAS DAN PERTANYAAN

1. Dengan menggunakan rangkaian pada Gambar 3.1, buatlah sketch dengan ketentuan sebagai

berikut :

· Baca input analog dari pin A0, simpan nilainya pada sebuah variable.

· Nyalakan dan padamkan LED pin 13 dengan interval waktu sesuai nilai variable diatas.

Jawab :

int led=9;

int analog=A0;

int val=0;

void setup()

{

pinMode(led, OUTPUT);

Serial.begin(9600);

}

Page 6: Analog Input Output

void loop()

{

val=analogRead(analog);

digitalWrite(led, HIGH);

delay(val);

digitalWrite(led, LOW);

delay(val);

Serial.print("delay:");

Serial.println(val);

}

2. Buatlah kesimpulan dari percobaan ini !

o Nilai Val = 0, diberi nilai 0 agar outputnya dimulai dari 0 maka nilai outputnya presisi, jika

dimulai dari val = 10, maka nilai yang dihitung dari 10, 0 sampai 10nya tidak terbaca.

o Nilai analogRead adalah dari 0 sampai 1023

o Nilai analgWrite adalah dari 0 sampai 255

o 9600 baud adalah kecepatan transfer datanya . jadi dia mengirim 9600 bit per second. Jika

diprogramnya ditulis 9600 sedangkan serial monitornya bukan 9600, maka datanya tidak

sampai. Kecepatan data dengan kecepatan nerimanya harus sama.

o Maksud dari analogWrite(lePin, val / 4), untuk mengatur kecerahan cahaya lednya. Dibagi

4 agar terlihat perbedaan kecerahan cahayanya ketika potensio ditekan.

o Delay digunakan ntuk membuat led berkedip.

o Delay(val), artinya lama delaynya sesuai dengan nilai val nya, yaitu antara 0-1023.

Semakin besar nilai valnnya, maka delaynya semakin lama.