100% menganggap dokumen ini bermanfaat (2 suara)
463 tayangan26 halaman

Latihan Pemrograman Arduino II

Dokumen ini memberikan panduan singkat tentang latihan pemrograman Arduino yang mencakup penggunaan LED dan tombol, LCD, keypad, ADC, PWM, serial, dan seven segment. Terdapat penjelasan fungsi pinMode(), digitalWrite(), digitalRead() dan delay() beserta contoh kode programnya.

Diunggah oleh

Anton
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
100% menganggap dokumen ini bermanfaat (2 suara)
463 tayangan26 halaman

Latihan Pemrograman Arduino II

Dokumen ini memberikan panduan singkat tentang latihan pemrograman Arduino yang mencakup penggunaan LED dan tombol, LCD, keypad, ADC, PWM, serial, dan seven segment. Terdapat penjelasan fungsi pinMode(), digitalWrite(), digitalRead() dan delay() beserta contoh kode programnya.

Diunggah oleh

Anton
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

ARDUINO

TRAINING ARDUINO II
Latihan Pemrograman Arduino

Agus Supanto
085716068353
E-mail : bayu.ajin088@[Link]
Latihan
Pemrograman
Arduino

1. Led dan Button


2. LCD
3. Keypad
4. ADC
5. PWM
6. Serial
7. Seven Segment
Led dan Button
ARDUINO UNO

APK-TECH | [Link]

AREF LED
13
R1
PB5/SCK
12
PB4/MISO 470
RESET 11 LED-RED
~PB3/MOSI/OC2A
10
~ PB2/SS/OC1B
9 R2
~ PB1/OC1A
8
PB0/ICP1/CLKO
ATMEGA328P-PU
1121

10k
DIGITAL (~PWM)
7
ANALOG IN

PD7/AIN1
6
A0 ~ PD6/AIN0
PC0/ADC0 5
A1 ~ PD5/T1
PC1/ADC1 4
A2 PD4/T0/XCK
PC2/ADC2 3
A3 ~ PD3/INT1
PC3/ADC3 2
A4 PD2/INT0
PC4/ADC4/SDA 1
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD

ARDUINO UNO R3
Dasar Pemrograman I/O
 pinMode()
pinMode digunakan untuk mengkonfigurasi PIN secara spesifik sebagai
INPUT/OUTPUT.
Syntax : pinMode( [pin],[mode] )
[pin] = nomor PIN
[mode] = INPUT atau OUTPUT
Contoh :
pinMode(13,OUTPUT)//PIN 13 berfungsi sebagai OUTPUT
pinMode(10,INPUT) //PIN 10 berfungsi sebagai INPUT
*) Ditulis di dalam void setup().

 digitalWrite()
digitalWrite digunakan untuk memberikan nilai (logika) pada PIN.
Syntax : digitalWrite( [pin],[logika] )
[pin] = nomor PIN
[logika] = HIGH atau LOW
Contoh :
digitalWrite(13, HIGH)//Memberi logika HIGH pada PIN 13

 digitalRead()
digitalRead digunakan untuk membaca nilai ( HIGH atau LOW ) dari PIN.
Syntax : digitalRead( [pin] )
[pin] = nomor PIN
Program Nyala Led

ARDUINO UNO

APK-TECH | [Link]
AREF LED
13
R1
PB5/SCK
12
PB4/MISO 470
RESET 11 LED-RED
~PB3/MOSI/OC2A
10
~ PB2/SS/OC1B
9 R2
~ PB1/OC1A
8
PB0/ICP1/CLKO

ATMEGA328P-PU
1121
10k

DIGITAL (~PWM)
7
ANALOG IN
PD7/AIN1
6
A0 ~ PD6/AIN0
PC0/ADC0 5
A1 ~ PD5/T1
PC1/ADC1 4
A2 PD4/T0/XCK
PC2/ADC2 3
A3 ~ PD3/INT1
PC3/ADC3 2
A4 PD2/INT0
PC4/ADC4/SDA 1
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD

ARDUINO UNO R3
Program Button

Jika Tombol ditekan maka Led akan Nyala


Pemrograman Delay

 delay()
delay atau jeda digunakan untuk menghentikan program dalam jumlah
waktu tertentu / sesuai dengan nilai yang tertulis dalam
parameternya, dengan satuan waktu dalam milidetik.
Syntax : delay( [value] )
[value] = nilai parameter
Contoh :
delay(1000)//program akan berhenti selama 1000 milidetik

 delayMicroseconds()
delayMicroseconds sama dengan delay hanya saja satuan waktunya
dalam mikrodetik.
Syntax : delay( [value] )
[value] = nilai parameter
Contoh :
delayMicroseconds(1000)//program akan berhenti selama 1000
mikrodetik
Program Blink

Led akan Nyala Mati setiap 1 detik


LCD 16x2

ARDUINO UNO LCD 16X2


LM016L

APK-TECH | [Link]

AREF

VDD
VSS

VEE

RW
RS

D0
D1
D2
D3
D4
D5
D6
D7
E
13
PB5/SCK
12
PB4/MISO

1
2
3

4
5
6

7
8
9
10
11
12
13
14
RESET 11
~PB3/MOSI/OC2A
10
~ PB2/SS/OC1B
9
~ PB1/OC1A
8
PB0/ICP1/CLKO
ATMEGA328P-PU
1121

DIGITAL (~PWM)

7
ANALOG IN

PD7/AIN1
6
A0 ~ PD6/AIN0
PC0/ADC0 5
A1 ~ PD5/T1
PC1/ADC1 4
A2 PD4/T0/XCK
PC2/ADC2 3
A3 ~ PD3/INT1
PC3/ADC3 2
A4 PD2/INT0
PC4/ADC4/SDA 1
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD

ARDUINO UNO R3
Dasar Pemrograman LCD
#include <LiquidCrystal.h>// menginputkan library LiquidCrystal.h
LiquidCrystal lcd(5,4,3,2,1,0)//Rs,En,D4,D5,D6,D7(mendeklarasikan pin lcd)
 [Link]()
[Link] digunakan untuk menginisialisasi jumlah kolom dan jumlah baris
dari lcd.
Syntax : [Link]( [kolom],[baris] )
Contoh : [Link](16,2) //LCD dengan 16 Kolom dan 2 Baris
*) Ditulis di dalam void setup().
 [Link]()
[Link] digunakan untuk menentukan posisi awal penulisan di lcd.
Syntax : [Link]( [x],[y] )
[x] = nomor Kolom [y] = nomor Baris
Contoh : [Link](2,1) //Penulisan dimulai dari Kolom 2 dan Baris 1
 [Link]()
[Link] digunakan untuk menampilkan karakter (string) pada lcd.
Syntax : [Link](“[karakter/string]”)
Contoh : [Link](“TES LCD”) //lcd akan menampilkan TES LCD
 [Link]()
[Link] digunakan untuk membersihkan tampilan pada lcd.
Syntax : [Link]()
 [Link]()
[Link] digunakan untuk menampilkan satu karakter.
Syntax : [Link](„[char]‟) contoh : [Link](„A‟)
Program LCD

ARDUINO UNO LCD 16X2


LM016L

APK-TECH | [Link]
AREF

VDD
VSS

VEE

RW
RS

D0
D1
D2
D3
D4
D5
D6
D7
E
13
PB5/SCK
12
PB4/MISO

1
2
3

4
5
6

7
8
9
10
11
12
13
14
RESET 11
~PB3/MOSI/OC2A
10
~ PB2/SS/OC1B
9
~ PB1/OC1A
8
PB0/ICP1/CLKO
ATMEGA328P-PU
1121

DIGITAL (~PWM)
7
ANALOG IN

PD7/AIN1
6
A0 ~ PD6/AIN0
PC0/ADC0 5
A1 ~ PD5/T1
PC1/ADC1 4
A2 PD4/T0/XCK
PC2/ADC2 3
A3 ~ PD3/INT1
PC3/ADC3 2
A4 PD2/INT0
PC4/ADC4/SDA 1
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD

ARDUINO UNO R3
Keypad
ARDUINO UNO LCD 16X2
LM016L

APK-TECH | [Link] AREF

VDD
VSS

VEE

RW
13

RS

D0
D1
D2
D3
D4
D5
D6
D7
PB5/SCK

E
12
PB4/MISO R4
RESET 11
~PB3/MOSI/OC2A R3

1
2
3

4
5
6

7
8
9
10
11
12
13
14
10
~ PB2/SS/OC1B R2
9
~ PB1/OC1A R1
8
PB0/ICP1/CLKO C3
ATMEGA328P-PU
1121

DIGITAL (~PWM)
7
ANALOG IN

PD7/AIN1 C2
6
A0 ~ PD6/AIN0 C1
PC0/ADC0 5
A1 ~ PD5/T1
PC1/ADC1 4
A2 PD4/T0/XCK
PC2/ADC2 3
A3 ~ PD3/INT1
PC3/ADC3 2
A4 PD2/INT0
PC4/ADC4/SDA 1
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD

C1

C2

C3
ARDUINO UNO R3

3
R1 A 1 2 3
R2 B 4 5 6
R3 C 7 8 9
R3 D 0 #
Pemrogramman Keypad

Pengetahuan Dasar yang Dibutuhkan


 Pembuatan Variable
 Pemrograman Input / Output
 Pemrograman Delay
 Pemrograman LCD
 Alias (#define)
 Function

Langkah-langkah Pembuatan Program Keypad


1. Membuat alias (#dafine) dari Pin-pin yang akan
digunakan
2. Membuat Function Penekanan Keypad
3. Menginisialisasi LCD dan Pin-pin yang digunakan
4. Membuat Program Utama
ADC

ARDUINO UNO LCD 16X2


LM016L

APK-TECH | [Link]
AREF

VDD
VSS

VEE

RW
13

RS

D0
D1
D2
D3
D4
D5
D6
D7
PB5/SCK

E
12
PB4/MISO
RESET 11
~PB3/MOSI/OC2A

1
2
3

4
5
6

7
8
9
10
11
12
13
14
10
~ PB2/SS/OC1B
9
~ PB1/OC1A
8
RVARIABLE PB0/ICP1/CLKO
ATMEGA328P-PU
1121

DIGITAL (~PWM)
7
ANALOG IN

PD7/AIN1
6
A0 ~ PD6/AIN0
PC0/ADC0 5
53%

A1 ~ PD5/T1
PC1/ADC1 4
A2 PD4/T0/XCK
PC2/ADC2 3
A3 ~ PD3/INT1
PC3/ADC3 2
A4 PD2/INT0
1k PC4/ADC4/SDA 1
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD

ARDUINO UNO R3
Dasar Pemrograman ADC

 analogRead()
analogRead digunakan untuk membaca nilai dari PIN analog.
Syntax : analogRead( [pin] )
[pin] = nomor PIN Analog
Contoh :
analogRead(A1) //Membaca nilai Analog pada PIN A1
Program ADC

ARDUINO UNO LCD 16X2


LM016L

APK-TECH | [Link]
AREF

VDD
VSS

VEE

RW
13

RS

D0
D1
D2
D3
D4
D5
D6
D7
PB5/SCK

E
12
PB4/MISO
RESET 11
~PB3/MOSI/OC2A

1
2
3

4
5
6

7
8
9
10
11
12
13
14
10
~ PB2/SS/OC1B
9
~ PB1/OC1A
8
RVARIABLE PB0/ICP1/CLKO
ATMEGA328P-PU
1121

DIGITAL (~PWM) 7
ANALOG IN

PD7/AIN1
6
A0 ~ PD6/AIN0
PC0/ADC0 5
52%

A1 ~ PD5/T1
PC1/ADC1 4
A2 PD4/T0/XCK
PC2/ADC2 3
A3 ~ PD3/INT1
PC3/ADC3 2
A4 PD2/INT0
1k PC4/ADC4/SDA 1
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD

ARDUINO UNO R3
PWM

ARDUINO UNO

APK-TECH | [Link]
AREF

PB5/SCK
13 R1
12 470
PB4/MISO
RESET 11
~PB3/MOSI/OC2A
10 D?
~ PB2/SS/OC1B
9
~ PB1/OC1A
8
RVARIABLE PB0/ICP1/CLKO

ATMEGA328P-PU
1121
LED-RED

DIGITAL (~PWM)
7
ANALOG IN

PD7/AIN1
6
A0 ~ PD6/AIN0
PC0/ADC0 5
40%

A1 ~ PD5/T1
PC1/ADC1 4
A2 PD4/T0/XCK
PC2/ADC2 3
A3 ~ PD3/INT1
PC3/ADC3 2
A4 PD2/INT0
1k PC4/ADC4/SDA 1
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD

ARDUINO UNO R3
Dasar Pemrograman PWM

 analogWrite()
analogWrite digunakan untuk mengeluarkan sinyal analog PWM (Pada
Arduino UNO nilai sinyal PWM dari 0-255).
Syntax : analogWrite( [pin],[nilai PWM] )
[pin] = nomor PIN
[nilai PWM] = besarnya PWM
Contoh :
analogWrite(3,255)//menghasilkan PWM 255 di PIN D3
Program PWM

ARDUINO UNO

APK-TECH | [Link]
AREF

PB5/SCK
13 R1
12 470
PB4/MISO
RESET 11

Nyala Led
~PB3/MOSI/OC2A
10 D?
~ PB2/SS/OC1B
9
~ PB1/OC1A

Berdasarkan
8
RVARIABLE PB0/ICP1/CLKO

ATMEGA328P-PU
1121
LED-RED

DIGITAL (~PWM)
ANALOG IN 7
PD7/AIN1

Nilai dari
6
A0 ~ PD6/AIN0
PC0/ADC0 5
35%

A1 ~ PD5/T1
PC1/ADC1 4

Variable Resistor
A2 PD4/T0/XCK
PC2/ADC2 3
A3 ~ PD3/INT1
PC3/ADC3 2
A4 PD2/INT0
1k PC4/ADC4/SDA 1
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD

ARDUINO UNO R3
Serial

ARDUINO UNO

APK-TECH | [Link]

AREF
13
PB5/SCK
12
PB4/MISO
RESET 11
~PB3/MOSI/OC2A
10
~ PB2/SS/OC1B
9
~ PB1/OC1A
8
PB0/ICP1/CLKO
ATMEGA328P-PU
1121

DIGITAL (~PWM)

7
ANALOG IN

PD7/AIN1
6
A0 ~ PD6/AIN0
PC0/ADC0 5
A1 ~ PD5/T1
PC1/ADC1 4
A2 PD4/T0/XCK RXD
PC2/ADC2 3
A3 ~ PD3/INT1
PC3/ADC3 2
A4 PD2/INT0 TXD
PC4/ADC4/SDA 1
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD RTS

CTS
ARDUINO UNO R3

Perangkat Lain (PC, ARduino, Shield, dll)


Dasar Pemrogramman Serial

 [Link]()
[Link] digunakan untuk menentukan nilai BaudRate.
Syntax : [Link]( [nilai baudrate] )
Contoh :
[Link](9600) //Komunikasi Serial dengan baudrate
9600
*) Ditulis di dalam void setup().

 [Link]()
[Link] digunakan untuk mengirimkan data string dari Arduino
ke PC atau perangkat lain dengan menggunakan jalur TX (PIN 1).
Syntax : [Link](“[data]”)
Contoh :
[Link](“Latihan Serial”)

 [Link]()
[Link] hampir sama dengan [Link], tetapi dalam
pengiriman datanya [Link] menambahkan karakter ½ Enter pada
setiap akhir data.
Syntax : [Link](“[data]”)
Contoh :
[Link](“Latihan Serial”)
Dasar Pemrogramman Serial

 [Link]()
[Link] digunakan untuk mengirimkan data dalam bentuk biner,
satu byte data dalam setiap pengiriman.

 [Link]
[Link] digunakan untuk mendapatkan jumlah karakter atau
byte yang telah diterima oleh serial port.

 [Link]()
[Link] digunakan untuk membaca data yang masuk ke Arduino
melalui jalur Rx (PIN 0).
Syntax : [tipe data][variable] = [Link]()
Contoh :
char Data = [Link]();
Program Serial
7 SEGMENT

ARDUINO UNO

OUTA2 OUTA1
APK-TECH | [Link]

OUTB2 OUTB1
OUTC2 OUTC1
OUTD2 OUTD1
AREF OUTE2 OUTE1
OUTF2 OUTF1
13
PB5/SCK OUTG2 OUTG1
12
PB4/MISO
RESET 11
~PB3/MOSI/OC2A U2
10
~ PB2/SS/OC1B
9 7 13
~ PB1/OC1A INA2 A QA OUTA2
8 1 12
PB0/ICP1/CLKO INB2 B QB OUTB2
2 11
ATMEGA328P-PU
1121

DIGITAL (~PWM)

INC2 C QC OUTC2
7 6 10
ANALOG IN

PD7/AIN1 IND2 IND2 D QD OUTD2


6 4 9
A0 ~ PD6/AIN0 INC2 BI/RBO QE OUTE2
PC0/ADC0 5 5 15
A1 ~ PD5/T1 INB2 RBI QF OUTF2
PC1/ADC1 4 3 14
A2 PD4/T0/XCK INA2 LT
U1 QG OUTG2
PC2/ADC2 3
A3 ~ PD3/INT1 IND1
PC3/ADC3 2 7 74LS47 13
A4 PD2/INT0 INC1 INA1 A QA OUTA1
PC4/ADC4/SDA 1 1 12
A5 TX PD1/TXD INB1 INB1 B QB OUTB1
PC5/ADC5/SCL 0 2 11
RX PD0/RXD INA1 INC1 C QC OUTC1
6 10
IND1 D QD OUTD1
4 9
BI/RBO QE OUTE1
ARDUINO UNO R3 5 15
RBI QF OUTF1
3 14
LT QG OUTG1
74LS47
Program 7Segment I

ARDUINO UNO

OUTA2 OUTA1

APK-TECH | [Link]
OUTB2 OUTB1
OUTC2 OUTC1
OUTD2 OUTD1
AREF OUTE2 OUTE1
OUTF2 OUTF1
13
PB5/SCK OUTG2 OUTG1
12
PB4/MISO
RESET 11
~PB3/MOSI/OC2A U2
10
~ PB2/SS/OC1B
9 7 13
~ PB1/OC1A INA2 A QA OUTA2
8 1 12
PB0/ICP1/CLKO INB2 B QB OUTB2
2 11
ATMEGA328P-PU
1121

DIGITAL (~PWM)
INC2 C QC OUTC2
7 6 10
ANALOG IN

PD7/AIN1 IND2 IND2 D QD OUTD2


6 4 9
A0 ~ PD6/AIN0 INC2 BI/RBO QE OUTE2
PC0/ADC0 5 5 15
A1 ~ PD5/T1 INB2 RBI QF OUTF2
PC1/ADC1 4 3 14
A2 PD4/T0/XCK INA2 LT
U1 QG OUTG2
PC2/ADC2 3
A3 ~ PD3/INT1 IND1
PC3/ADC3 2 7 74LS47 13
A4 PD2/INT0 INC1 INA1 A QA OUTA1
PC4/ADC4/SDA 1 1 12
A5 TX PD1/TXD INB1 INB1 B QB OUTB1
PC5/ADC5/SCL 0 2 11
RX PD0/RXD INA1 INC1 C QC OUTC1
6 10
IND1 D QD OUTD1
4 9
BI/RBO QE OUTE1
ARDUINO UNO R3 5 15
RBI QF OUTF1
3 14
LT QG OUTG1
74LS47
Program 7Segment II

Anda mungkin juga menyukai