I – XV PRAKTIKUM
DOSEN :
DISUSUN OLEH :
KELOMPOK II ( D U A )
Dasar Teori
Digital berarti sinyal yang dikirimkan/diterima bernilai 1 atau 0, on atau off, HIGH atau
LOW. Berbeda dengan sinyal analog yang nilainya bersifat kontinyu, yakni nilai antara 0 dan 1
dipertimbangkan atau terdapat rentangan nilai dari 0 sampai 1. Secara umum 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 dari komponen yang terhubung ke board arduino.
Mode output berarti mengeset pin agar dapat mengirimkan sinyal dari arduino ke komponen lain atau
ke rangkaian digital. Untuk mengeset mode pin, kita gunakan fungsi pinMode(). Fungsi ini biasanya
digunakan di dalam fungsi setup(). fungsi ini memerlukan dua parameter, pinMode([nomorPin],
[mode]). Parameter pertama diisi oleh nomor pin, dan parameter kedua diisi oleh konstanta INPUT
atau OUTPUT, sesuai dengan mode yang ingin kita gunakan. Sebagai contoh, jika ingin membuat
LED berkedip, LED tersebut bisa dipasang pada salah satu pin digital dari arduino dan ground.
Karena kita ingin membuat led menyala berkedip jadi kita konfigurasi pin yang terhubung ke LED
menjadi output.
BLINK INTERNAL
Coding :
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin LED_BUILTIN as an output.
int LED = ;
pinMode(LED_BUILTIN, OUTPUT);
}
Coding :
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin LED_BUILTIN as an output.
int LED = 9;
pinMode(LED_BUILTIN, OUTPUT);
}
FADING LED
Coding :
TRAFIC LIGHT
Coding :
int merah = 8;
int kuning = 9;
int hijau = 10;
// the setup routine runs once when you press reset:
void setup()
// initialize the digital pin as an output
{
pinMode(merah, OUTPUT);
pinMode(kuning, OUTPUT);
pinMode(hijau, OUTPUT);
}
// the loop routine runs over and over again forever:
void loop()
{
digitalWrite(merah, HIGH);
digitalWrite(kuning, LOW);
digitalWrite(hijau, LOW);
delay(5000);
digitalWrite(merah, LOW);
digitalWrite(kuning, HIGH);
digitalWrite(hijau, LOW);
delay(5000);
digitalWrite(merah, LOW);
digitalWrite(kuning,LOW);
digitalWrite(hijau, HIGH);
delay(5000);
digitalWrite(merah, LOW);
digitalWrite(kuning, HIGH);
digitalWrite(hijau, LOW);
delay(5000);
}
PRAKTIKUM V
Coding :
{ 0,1,1,0,0,0,0 }, // = 1
{ 1,1,0,1,1,0,1 }, // = 2
{ 1,1,1,1,0,0,1 }, // = 3
{ 0,1,1,0,0,1,1 }, // = 4
{ 1,0,1,1,0,1,1 }, // = 5
{ 1,0,1,1,1,1,1 }, // = 6
{ 1,1,1,0,0,0,0 }, // = 7
{ 1,1,1,1,1,1,1 }, // = 8
{ 1,1,1,0,0,1,1 } // = 9
};
void setup() {
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
digitalWrite(9, dot);
byte pin = 2;
digitalWrite(pin, seven_seg_digits[digit][segCount]);
++pin;
void loop() {
delay(1000);
sevenSegWrite(count - 1);
delay(4000);
}
PRAKTIKUM VI
KNIGHT RIDER
Coding :
int count = 0;
void setup(){
for (count=0;count<6;count++) {
pinMode(pinArray[count], OUTPUT);
void loop() {
for (count=0;count<6;count++) {
digitalWrite(pinArray[count], HIGH);
delay(timer);
digitalWrite(pinArray[count], LOW);
delay(timer);
for (count=5;count>=0;count--) {
digitalWrite(pinArray[count], HIGH);
delay(timer);
digitalWrite(pinArray[count], LOW);
delay(timer);
}
PRAKTIKUM VII
LED RGB
Coding :
int count = 0;
void setup(){
for (count=0;count<6;count++) {
pinMode(pinArray[count], OUTPUT);
void loop() {
for (count=0;count<6;count++) {
digitalWrite(pinArray[count], HIGH);
delay(timer);
digitalWrite(pinArray[count], LOW);
delay(timer);
for (count=5;count>=0;count--) {
digitalWrite(pinArray[count], HIGH);
delay(timer);
digitalWrite(pinArray[count], LOW);
delay(timer);
}
PRAKTIKUM VIII
Coding :
int dataterkirim = 0;
void setup()
{ Serial.begin(9600);}
void loop()
if (Serial.available() > 0)
dataterkirim = Serial.read();
Serial.println(dataterkirim, DEC);
}
PRAKTIKUM IX
LDR
Coding :
int sensorValue = 0;
void setup()
Serial.begin(9600);
void loop()
delay(100);
if(sensorValue>=200) //Jika nilai resistansi sama dengan atau lebih besar dari 200
Serial.println(“ON”);
Serial.println();
delay(500);
else
Serial.println(“OFF”);
Serial.println();
delay(500);
}
PRAKTIKUM X
Coding :
int sensorPin = A0; // select the input pin for the potentiometer
int sensorValue = 0; // variable to store the value coming from the sensor
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
sensorValue = analogRead(sensorPin);
digitalWrite(ledPin, HIGH);
delay(sensorValue);
digitalWrite(ledPin, LOW);
delay(sensorValue);
}
PRAKTIKUM XI
RELAY
Coding :
void setup(){
pinMode(PIN10, OUTPUT);
void loop() {
digitalWrite(PIN10, HIGH);
delay(5000);
digitalWrite(PIN10, LOW);
delay(5000);
}
PRAKTIKUM XII
Coding :
byte tombol= 2;
int nilai;
void setup(){
pinMode(led, OUTPUT);
pinMode(tombol, INPUT);
void loop(){
nilai= digitalRead(tombol);
if(nilai == 1){
digitalWrite(led, HIGH);
}
else{
digitalWrite(led, LOW);
}
PRAKTIKUM XIII
DHT 11/22
Coding :
#include "DHT.h"
#define pinDHT 2
float h, t;
void setup() {
Serial.begin(9600);
Serial.println("Inisialisasi");
for(int i = 0; i < 10; i++){
Serial.print("==");
delay(500);
Serial.println();
Serial.println("Mulai!");
delay(2000);
void loop() {
float h = sensorDHT.readHumidity();
float t = sensorDHT.readTemperature();
if (isnan(h) || isnan(t)) {
return;
Serial.print(h);
Serial.println(" %");
Serial.println(" C");
delay(500);
}
PRAKTIKUM XIV
STEP MOTOR
Coding :
#include <Servo.h>
void setup() {
}
void loop() {
for (pos = 0; pos <= 180; pos += 1) { // goes from 0 degrees to 180 degrees
// in steps of 1 degree
for (pos = 180; pos >= 0; pos -= 1) { // goes from 180 degrees to 0 degrees
}
PRAKTIKUM XV
Coding :
#include <LiquidCrystal.h>
void setup()
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(led, OUTPUT);
lcd.begin(16, 2);
lcd.setCursor(0, 1);
delay (5000);
long duration, r;
float distance;
void loop()
lcd.clear();
lcd.print("Distance in cm");
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
lcd.setCursor(0, 1);
lcd.print(distance);
delay (300);
if(distance<10)
{
digitalWrite(led,HIGH);
else
digitalWrite(led,LOW);
delay(300);