Disusun Oleh :
AGUS EFENDI
Daftar ISI
MODUL TEORI
BAB I Pengantar Teknologi Mikrokontroler …………………… 2
BAB II Mikrokontroler Platform Arduino ……………………… 7
BAB III Pemrograman Arduino ………………………………… 15
MODUL PRAKTIKUM
1. Percobaan POTENTIOMETER ……………..…………… 20
2. Percobaan RELAY ………………………………………. 21
3. Percobaan LED (Traffic Light) ………………………….. 22
4. Percobaan MOTOR SERVO …………………………….. 23
5. Percobaan Sensor ULTRASONIC HCSR04 …………… 24
6. Percobaan LCD ……………………………….…………. 25
D. Ringkasan
1. Mikrokontroler (microcontroller) adalah pengendali yang merupakan suatu komputer kecil
yang terletak di dalam sebuah chip atau IC (integrated circuit) yang berisikan inti prosesor,
memori, dan komponen input/output yang dapat diprogram.
2. Ditinjau dari segi arsitekturnya, mikroprosesor hanya merupakan single chip CPU,
sedangkan mikrokontroler dalam IC-nya selain CPU juga terdapat device lain yang
memungkinkan mikrokontroler berfungsi sebagai suatu single chip computer.
– 12V
6 channel
3. Analog Input.
Arduino memiliki 6 pin analog input, berfungsi membaca sinyal masukan analog seperti
sensor analog. Meskipun demikian pin analog input dapat pula digunakan untuk keperluan
digital I/O. Tabel 2.3. menunjukkan nomor dan fungsi pin input analog.
Tabel 2.3. Konfigurasi Pin Analog Input
Arduino memberikan kemudahan bagi penggunanya untuk membuat berbagai proyek berbasis
mikrokontroler. Contohnya yang dapat dibuat dengan Arduino antara lain, untuk membuat
simulasi lampu, membuat robot, mengontrol motor dc, mengontrol motor stepper, pengatur
suhu, display LCD, dan masih banyak yang lainnya. Gambar 2.3 adalah contoh produk alat
menggunakan Arduino.
Pilih Board yang digunakan dengan memilih entri dalam menu Tools > Board
yang sesuai dengan Arduino. Misalnya dipilih Arduino Uno (Gambar 2.7).
C. Ringkasan
1. Arduino merupakan papan-tunggal mikrokontroler serba guna yang bisa diprogram
dan bersifat open-source.
2. Arduino Uno adalah salah satu kit mikrokontroler yang berbasis pada ATmega328.
Modul ini sudah dilengkapi dengan berbagai hal yang dibutuhkan untuk mendukung
mikrokontroler untuk bekerja.
3. Arduino IDE menggunakan bahasa pemrograman C++ dengan versi yang telah
disederhanakan, sehingga lebih mudah dalam belajar pemrograman.
4. Software Arduino IDE (Integrated Development Environment) adalah sebuah perangkat
lunak yang memudahkan dalam mengembangkan aplikasi mikrokontroler mulai
dari menuliskan source program, kompilasi, upload hasil kompilasi, dan uji coba secara
terminal serial.
5. Hubungan komunikasi data antara IDE arduino dengan board Arduino digunakan
komunikasi secara serial dengan protokol RS232. Jika board arduino sudah dilengkapi
dengan komunikasi serial RS232 (biasanya USB),maka dapat langsung ditancapkan ke
USB komputer.
Code Program Arduino biasa disebut sketch dan dibuat menggunakan bahasa
pemrograman C. Program atau sketch yang sudah selesai ditulis di Arduino IDE dapat langsung
di-compile dan di-upload ke Arduino Board.
Pembahasan Sketch
// Project 1 - LED Flasher
Ini adalah komentar baris yang berguna untuk dokumentasi program, kompiler akan
mengabaikan bagian ini. Baris komentar berguna bagi programmer agar bisa mengerti maksud
program.
int ledPin = 10;
Inisialisasi variable, dalam hal ini inisialisasi variable bernama ledPin dengan type data integer
dan nilai 10.
void setup() {
pinMode(ledPin, OUTPUT);
}
Setiap sketch Arduino wajib memiliki fungsi setup() dan loop(). Fungsi setup() dipanggil hanya
sekali saat pertama kali program berjalan. Fungsi setup() biasanya tempat untuk men-setup hal-
hal umum agar program siap dijalankan, seperti setup pin modes, setting serial baud rates, dan
lainnya. Pada sketch Led Blink, fungsi setup hanya memiliki 1 baris perintah yaitu
pinMode(ledPin, OUTPUT);
pinMode fungsi yang berguna untuk memberitahu arduino bahwa pin pada board akan
digunakan sebagai input atau output. Dalam baris program di atas, memberitahu arduino untuk
menset pin 10 (nilai ledPin adalah 10) sebagai Output.
void loop() {
digitalWrite(ledPin, HIGH);
delay(1000);
DAFTAR BACAAN
1. John Crisp, 2004, Introduction Microprocessors and Microcontrollers (2 Edition), an
imprint of Elsevier, ISBN: 0-7506-5989-0
2. Jack Purdum, 2012, Beginning C for Arduino, Published by by Springer Science,
ISBN: 978-1-4302-4777-7
3. Michael Margolis, 2011, Arduino Cookbook, ISBN: 978-0-596-80247-9
4. John Boxall, 2013, Arduino Workshop a Hands-on Introduction with 65 Projects, No
Starch Press, Inc, ISBN: 978-1-59327-448-1.
5. Sumber internet lainnya : https://www.arduino.cc/ http://www.arduino.web.id/
http://elektrokita.com/mengenal-arduino-uno/
http://panduanbelajarmicrocontroller.blogspot.co.id/2013/04/pengantar-belajar-
arduino.html http://aozon.blogspot.co.id/2014/03/perkenalanmengenal-arduino-dari-
pemula.html http://bsiswoyo.lecture.ub.ac.id/2012/06/belajar-arduino-pengantar/
http://arduino-elektro-robotik.blogspot.co.id/2014/01/05-project-led-blink.html
http://www.rustamaji.net/id/component/arduino-uno
1. void setup() {
2. Serial.begin(9600);
3.
4. }
5.
6. void loop() {
7. Serial.println(analogRead(A5));
8.
9. }
1. void setup(){
2. pinMode(10, OUTPUT);
3. }
4.
5. void loop() {
6. digitalWrite(10, HIGH);
7. delay(5000);
8. digitalWrite(10, LOW);
9. delay(5000);
10. }
1. #include <Servo.h>
2.
3. Servo myservo;
4.
5. int pos = 0;
6.
7. void setup() {
8. myservo.attach(9);
9. }
10.
11. void loop() {
12. for (pos = 0; pos <= 180; pos += 1) {
13. myservo.write(pos);
14. delay(15);
15. }
16. for (pos = 180; pos >= 0; pos -= 1) {
17. myservo.write(pos);
18. delay(15);
19. }
20. }
1. #include <NewPing.h>
2.
3. #define TRIGGER_PIN 7.
4. #define ECHO_PIN 6
5. #define MAX_DISTANCE 200
6.
7. NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);
8.
9. void setup() {
10. Serial.begin(9600);
11. }
12.
13. void loop() {
14. delay(50);
15. Serial.print("Ping: ");
16. Serial.print(sonar.ping_cm());
17. Serial.println("cm");
18. }
1. #include <LiquidCrystal.h>
2.
3. /*
4. * LCD RS pin to digital pin 12
5. * LCD Enable pin to digital pin 11
6. * LCD D4 pin to digital pin 5
7. * LCD D5 pin to digital pin 4
8. * LCD D6 pin to digital pin 3
9. * LCD D7 pin to digital pin 2
10. * LCD R/W pin to ground
11. * LCD VSS pin to ground
12. * LCD VCC pin to 5V
13. * 10K resistor:
14. * ends to +5V and ground
15. * wiper to LCD VO pin (pin 3)
16. */
17.
18. LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
19.
20. void setup() {
21. lcd.begin(16, 2);
22. lcd.print("hello, world!");
23. }
24.
25. void loop() {
26.
27. }