You are on page 1of 6

JOB SHEET P1 :

ANTARMUKA PORT SERIAL ARDUINO

1 Tujuan Praktek :
Mahasiswa mampu membuat program pemantauan dan pengendalian Arduino melalui
Serial Monitor.

2 Daftar Perangkat/Komponen :
No Perangkat/Komponen Jumlah No Perangkat/Komponen Jumlah
1 Komputer/Laptop 1 7 Resistor 470 untuk RGB LED 3
2 Board Arduino Uno 1 8 Sensor suhu LM35 1
3 Kabel USB A-B 1 9 Sensor cahaya LDR 1
4 Potensiometer 10k 1 10 Protoboard 1
5 Push Button 1 11 Kabel jumper Secukupnya
6 RGB LED 1

Page 1 of 6 | Job Sheet P1 : Antarmuka Port Serial Arduino


3 Kegiatan Praktek Uji Coba dan Analisis Sketch

P1.1 Pemantauan PBS P1.2 Pemantauan Potensio

// Sketch P1.1 : Pemantauan PBS dari sermon // Sketch P1.2 : Pemantauan potensio dari sermon

void setup() void setup()


{ {
Serial.begin(9600); Serial.begin(9600);
digitalWrite(2,HIGH); //enable r pull-up }
}
void loop()
void loop() {
{ int pot = analogRead(A0);
int pbs = digitalRead(2); float potV = pot * 5.0 / 1023;
if (pbs == LOW) float potP = (potV / 5.0) * 100;
{ Serial.print("Nilai pot (desimal) = ");
Serial.println("PBS = closed"); Serial.println(pot);
} Serial.print("Nilai pot (volt) = ");
else Serial.println(potV);
Serial.println("PBS = open"); Serial.print("Nilai pot (%) = ");
delay(500); Serial.println(potP);
} delay(500);
Serial.println();
}

Page 2 of 6 | Job Sheet P1 : Antarmuka Port Serial Arduino


P1.3 Pemantauan PBS dan potensio. P1.4 Pengendalian LED
// Sketch P1.3 : Pemantauan PBS dan pot.dr. // Sketch P1.4 : Pengendalian LED dari sermon
// sermon

String pbsPos = " "; void setup()


{
void setup() Serial.begin(9600);
{ pinMode(13,OUTPUT);
Serial.begin(9600); }
digitalWrite(2,HIGH);
} void loop()
{
void loop() if (Serial.available() > 0)
{ {
int pbs = digitalRead(2); //baca data serial sebagai integer
if (pbs == LOW) int dataLed = Serial.read();
{ if (dataLed == 49) // 49 = ASCII "1"
pbsPos = "closed"; {
} digitalWrite(13,HIGH);
else }
pbsPos = "open"; else if (dataLed == 48) // 48 = ASCII "0"
{
int pot = analogRead(A0); digitalWrite(13,LOW);
float potV = (pot * 5.0) / 1023; }
float potP = (potV / 5.0) * 100; else (Serial.flush());
}
Serial.print ("H"); // kode Header }
Serial.print(",");
Serial.print(pbsPos);
Serial.print(",");
Serial.print(potP);

Page 3 of 6 | Job Sheet P1 : Antarmuka Port Serial Arduino


Serial.println(",");
Serial.println();
delay(500);
}

P1.5 Pengendalian RGB LED v.1 P1.6 Pengendalian RGB LED v.2

// Sketch P1.5 : Pengendalian RGB LED dr. sermon // Sketch P1.6 : Kendali RGB LED dari sermon
// Copyright 2013 Jeremy Blum
void setup()
{ //Sending Multiple Variables at once exp.255,0,0
pinMode(2,OUTPUT);
pinMode(3,OUTPUT); //Define LED Pins
pinMode(4,OUTPUT); const int RED =11;
Serial.begin(9600); const int GREEN =10;
} const int BLUE =9;

void loop () //Variables for RGB levels


{ int rval = 0;
if (Serial.available() > 0) int gval = 0;
{ int bval = 0;
//baca data serial sebagai karakter
char dataSer = Serial.read(); void setup()
{
switch (dataSer) Serial.begin(9600); // 9600 baud
{
case '2': //Set pins as outputs
blinkPin(2); pinMode(RED, OUTPUT);
break; pinMode(GREEN, OUTPUT);
case '3': pinMode(BLUE, OUTPUT);
blinkPin(3); }

Page 4 of 6 | Job Sheet P1 : Antarmuka Port Serial Arduino


break;
case '4': void loop()
blinkPin(4); {
break; //Keep working as long as data is in the buffer
} while (Serial.available() > 0)
} {
} rval = Serial.parseInt();//first valid int
gval = Serial.parseInt();//second valid int
void blinkPin(int pin) bval = Serial.parseInt();//third valid int
{
digitalWrite(pin, HIGH); //display RGB value
delay(250); Serial.println(rval);
digitalWrite(pin, LOW); Serial.println(gval);
delay(250); Serial.println(bval);
} Serial.println();

//set LED
analogWrite(RED, rval);
analogWrite(GREEN, gval);
analogWrite(BLUE, bval);
}
}

Page 5 of 6 | Job Sheet P1 : Antarmuka Port Serial Arduino


4 Do-It-Yourself (DIY) :
a. Buatlah sendiri aplikasi pemantauan atau pengendalian melalui serial monitor.
Presentasikan hasilnya.
b. Buatlah gambar skematik dan analisis sketch untuk P1.1 sampai P1.6 (Log Book).

awagyana@gmail.com

Page 6 of 6 | Job Sheet P1 : Antarmuka Port Serial Arduino

You might also like