Modul 1 – Pengenalan Arduino IDE dan Flowchart Pemrograman 1.1 Tujuan Praktikum 1. Praktikan dapat memahami tentang definisi Arduino dan Mikrokontroler. 2. Praktikan dapat memahami alur program Arduino. 3. Praktikan dapat mengerti tentang sintaks dasar pemrograman Arduino serta perbedaan dan persamaannya dengan C++. 1.2 Alat dan Bahan 1. Software Arduino IDE 2. Arduino Uno A. Pengenalan Arduino, Microcontroller dan Microprocessor Pada bab ini akan dijelaskan pengenalan dan pemahaman mengenai Arduino, mikrokontroler, dan mikroprosesor seperti sebagai berikut : Microprocessor Microprocessor atau biasa disebut sebagai Central Processing Unit (CPU) merupakan unit proses pusat pengendali. Gambar 1. Asitektur Microprocessor dan Contohnya, Intel Core i7
19
Embed
Modul 1 – Pengenalan Arduino IDE dan Flowchart …...Sintaks Dasar Pemrograman Arduino Serial.begin(), Serial.print() & Serial.println() Digunakan untuk menampilkan hasil pemrograman
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Modul 1 – Pengenalan Arduino IDE dan Flowchart Pemrograman
1.1Tujuan Praktikum
1. Praktikan dapat memahami tentang definisi Arduino dan Mikrokontroler.
2. Praktikan dapat memahami alur program Arduino.
3. Praktikan dapat mengerti tentang sintaks dasar pemrograman Arduino serta
perbedaan dan persamaannya dengan C++.
1.2Alat dan Bahan
1. Software Arduino IDE
2. Arduino Uno
A. Pengenalan Arduino, Microcontroller dan Microprocessor
Pada bab ini akan dijelaskan pengenalan dan pemahaman mengenai Arduino,
mikrokontroler, dan mikroprosesor seperti sebagai berikut :
Microprocessor
Microprocessor atau biasa disebut sebagai Central Processing Unit (CPU)
merupakan unit proses pusat pengendali.
Gambar 1. Asitektur Microprocessor dan Contohnya, Intel Core i7
Beberapa contoh microprocessor yang terdapat pada pasaran sekarang ini:
● Keluarga Intel Core (i3, i5, i7, dll.)
● AMD seri Ryzen, Athlon, Phenom, dll.
● Seri Qualcomm Snapdragon
Seiring berkembangnya dunia komputer digital, microprocessor juga disebut
sebagai MPU (Microprocessor Unit). Microprocessor terdiri dari :
a. ALU (Arithmetic Logic Unit), yang bekerja melaksanakan operasi
aritmatika (penjumlahan, pengurangan, perkalian, dan pembagian) dan
operasi logika (AND, OR, XOR, dll).
b. RU (Register Unit), sebagai tempat menyimpan data dan menyimpan
hasil operasi. Register khusus untuk menyimpan hasil operasi ALU
adalah Akumulator.
c. CU (Control Unit), sebagai pengendali aliran data pada bus data dan
bus alamat.
Mikrokontroler
Microcontroller merupakan komputer mikro dalam chip tunggal yang memadukan
data peripheral I/O untuk berkomunikasi dengan alat luar.
Gambar 2. Arsitektur Microcontroller dan Contohnya, Atmel AVR
Arduino Arduino adalah sebuah prototyping platform bersifat open-source (sumber terbuka)
yang mudah digunakan baik secara hardware dan software.
Gambar 3. Logo Arduino
Arduino merupakan framework yang dapat digunakan untuk berbagai macam board
mikrokontroler maupun sistem minimum, diantaranya yang sering digunakan adalah:
● Arduino Uno (Mikrokontroler: ATMEGA328)
● NodeMCU (Mikrokontroler: ESP-12E)
● Bluepill (Mikrokontroler: STM32F103C8T6)
Untuk informasi lebih spesifik terkait Arduino Uno dapat dilihat pada datasheet
berikut ini https://www.farnell.com/datasheets/1682209.pdf.
Selain kemudahan hardware seperti yang disebutkan di atas, Arduino juga
menawarkan kemudahan dalam software dengan adanya paket pengembangan
(IDE) yang bersifat universal dan dapat digunakan untuk berbagai macam jenis
Pemrograman arduino menggunakan bahasa pemrograman Arduino yang struktur
bahasanya mirip dengan C++. Berikut adalah beberapa sintaks dasar pada Arduino.
#include
Untuk memanggil atau memasukkan sebuah library kedalam program.
#include <[nama_library]>
#define
Untuk memberikan nama dan nilai pada sebuah konstanta.
#define [nama konstanta] [nilai]
setup() dan loop()
Dalam pemrograman melalui Arduino IDE saat pertama kali halaman kode
baru dibuat akan tampil seperti dibawah ini:
void setup()
Blok kode yang hanya dijalankan sekali selama mikrokontroler menyala. Contoh
aplikasinya adalah untuk inisialisasi mode pin (output/input), pemilihan baudrate, dll.
void loop()
Blok kode yang dijalankan secara berulang-ulang selama mikrokontroler menyala.
Contoh dasarnya adalah menyala-matikan LED secara berulang-ulang (blink).
1. Sintaks Dasar Pemrograman Arduino
Serial.begin(), Serial.print() & Serial.println()
Digunakan untuk menampilkan hasil pemrograman pada serial monitor di
Arduino IDE, data yang ditampilkan melalui Serial.print() dan
Serial.println() dapat berupa karakter atau angka. Perbedaannya
adalah pada Serial.print() akan menampilkan hasil kedalam satu baris,
sedangkan Serial.println akan menampilkan hasil dalam bentuk baris baru.
Sebelum melakukan Serial.print() atau Serial.println(),
baudrate harus diatur terlebih dahulu baik di setup() atau loop() dengan
perintah Serial.begin() dengan baudrate tertentu.
Baudrate yang sering digunakan:
● 9600
● 115200
● 57600
● 38400
Serial.begin(9600);
Serial.print(“Hello world!”);
Serial.println(“Hello world!”);
Berikut ini merupakan contoh gambar dalam menampilkan pada serial
monitor
Gambar 4.1 Output Serial.print() pada Serial Monitor
Gambar 4.2 Tampilan Serial Monitor Serial.println()
delay() Digunakan untuk menjeda waktu dalam mengeksekusi program. Satuan yang digunakan dalam delay yaitu milisekon(ms) yang memiliki artian 1000 ms sama dengan 1 detik.
delay(miliseconds);
pinMode() Digunakan untuk konfigurasi peran pin pada mikrokontroler menjadi INPUT atau OUTPUT.
pinMode(pin, mode);
digitalWrite() Digunakan untuk menuliskan nilai HIGH (1) atau LOW (0) pada pin digital mikrokontroler yang dikonfigurasi menjadi OUTPUT. digitalWrite() menghasilkan tegangan 3.3V - 5V untuk HIGH dan 0V untuk LOW.
digitalWrite(pin, value);
Tipe Data Beberapa tipe data pada pemrograman Arduino terdiri dari:
1. Integer, digunakan untuk tipe data bilangan bulat numerik (2- bytes); Struktur: int var = val; Contoh:
2. Float, digunakan untuk tipe data bilangan pecahan desimal. Struktur: float var = val; Contoh:
3. Char, digunakan untuk menyimpan data dalam bentuk nilai karakter.
Nilai karakter dalam char disimpan dalam bentuk ASCII. Contoh di bawah inimenyimpan karakter ‘A’ dalam bentuk nominalnya, yaitu 65. Untuk referensi tabel ASCII bisa dilihat di tautan berikut: https://qph.fs.quoracdn.net/main-qimg-872d4ec96b0ba435ccde292b6d65fd03 Struktur: char A = 65; Contoh:
4. Boolean, digunakan untuk menyimpan nilai TRUE (benar/1) atau FALSE (salah/0).
Struktur: bool var; Contoh:
Fungsi Trigonometri Digunakan untuk trigonometri dalam radian yang terbagi dalam cos(), sin(), dan tan(). Perhatian! Arduino menggunakan radian untuk pi (3.14) dan bukan sudut (180) dalam fungsi trigonometrinya, jadi sudut harus dikalikan dengan 2 pi (2 * 3.14) jika ingin fungsi trigonometri bekerja dengan baik.
Random Number Arduino memiliki fungsi untuk mendapatkan nilai acak pada pemrograman Arduino yang terdiri dari berikut ini : random() Untuk menampilkan nilai acak pada Arduino.
random(min,max); // batas bawah, batas atas random(max); // hanya batas atas saja
randomSeed() Untuk menghasilkan nilai random berdasarkan nilai awal yang disebut seed.
randomSeed(nilai_seed);
Format Angka Format angka dalam pemrograman terdiri dalam biner, decimal, hexadecimal, dan okta. Pembuktian dapat dilakukan dengan menggunakan tabel ASCII. https://qph.fs.quoracdn.net/main-qimg-872d4ec96b0ba435ccde292b6d65fd03
int var = 10; int varBiner = 0b1010; // angka biner diawali dengan 0b int varHex = 0xa; // angka heksadesimal diawali dengan 0x int varOkt = 012; // angka oktal diawali dengan 0
Serial.println(var, HEX); //untuk heksadesimal Serial.println(var, DEC); //untuk desimal Serial.println(var, BIN); // untuk binary Serial.println(var, OCT); // untuk oktal
Time Menentukan waktu pemrograman pada Arduino. Salah satunya millis() seperti dibawah ini yang berfungsi menghitung waktu dari program berjalan hingga saat fungsi tersebut dipanggil. Setelah kurun waktu 50 hari, millis akan kembali ke nilai awal yaitu 0.
millis();
Langkah-langkah Praktikum Modul 1:
1. Menampilkan “Hello world (name)” satu kali.
1. Buka Software Arduino IDE pada laptop yang telah terinstal.
2. Sambungkan USB Arduino Uno ke PC/Laptop kalian.
3. Pada tools, ubah board menjadi “Arduino/Genuino UNO”, lalu pilih port
yang tersambung pada Arduino IDE.
4. Buat pemrograman seperti di bawah ini:
5. Lalu, di compile dan upload program tersebut. Tunggu hingga proses
upload program selesai hingga bertuliskan “Done Uploading”.
Berikut ini hasil dari program diatas:
2. Menampilan “Hello World (name)” berulang-ulang dengan delay 1 detik
1. Buka Software Arduino IDE pada laptop yang telah terinstal.
2. Sambungkan USB Arduino Uno ke PC/Laptop kalian.
3. Pada tools, ubah board menjadi “Arduino/Genuino UNO”, lalu pilih port
yang tersambung pada Arduino IDE.
4. Buat pemrograman seperti di bawah ini:
5. Lalu, di compile dan upload proram tersebut. Tunggu hingga proses
upload program selesai hingga bertuliskan “Done Uploading”.
Berikut ini merupakan hasil dari pemrograman diatas:
3. Nyala-Mati LED dengan delay 2 detik
1. Buka Software Arduino IDE pada laptop yang telah terinstal.
2. Sambungkan USB Arduino Uno ke PC/Laptop kalian.
3. Pada tools, ubah board menjadi “Arduino/Genuino UNO”, lalu pilih port
yang tersambung pada Arduino IDE.
4. Buat pemrograman seperti di bawah ini:
5. Pasangkan LED pada pin 13 pada Arduino Uno.
6. Lalu, di compile dan upload proram tersebut. Tunggu hingga proses
upload program selesai hingga bertuliskan “Done Uploading”.
4. Membuat Program Nilai Mutlak
Pada bab ini akan dibuatkan program sederhana pada Arduino IDE untuk membuat
nilai mutlak pada suatu angka negatif dan ditampilkan pada serial monitor.
1. Buka Software Arduino IDE pada laptop yang telah terinstal.
2. Sambungkan USB Arduino Uno ke PC/Laptop kalian.
3. Pada tools, ubah board menjadi “Arduino/Genuino UNO”, lalu pilih port
yang tersambung pada Arduino IDE.
4. Buat pemrograman seperti di bawah ini:
5. Lalu, di compile dan upload program tersebut. Tunggu hingga proses
upload program selesai hingga bertuliskan “Done Uploading”.
6. Berikut ini merupakan hasil dari pemrograman diatas, pada Serial Monitor
menampilkan angka hasil pengubahan nilai inputan dari -5 menjadi 5.
5. Menampilkan Angka Acak pada Serial Monitor Angka yang ditampilkan pada Serial Monitor merupakan angka random atau acak, dengan
menggunakan fungsi random(). Berikut ini merupakan langkah-langkah pembuatan
program Arduino tersebut :
1. Buka Software Arduino IDE pada laptop yang telah terinstal.
2. Sambungkan USB Arduino Uno ke PC/Laptop kalian.
3. Pada tools, ubah board menjadi “Arduino/Genuino UNO”, lalu pilih port
yang tersambung pada Arduino IDE.
4. Buat pemrograman seperti di bawah ini:
5. Lalu, di compile dan upload program tersebut. Tunggu hingga proses
upload program selesai hingga bertuliskan “Done Uploading”.
6. Berikut ini merupakan hasil dari pemrograman diatas, pada Serial Monitor
menampilkan angka random atau acak :
6. Menampilkan nilai sinusoidal pada Serial Monitor dan membentuk plot nya.
Pada bab ini kita akan menggunakan fungsi cos() atau yang termasuk dalam
trigonometry. Berikut ini merupakan langkah-langkahnya :
1. Buka Software Arduino IDE pada laptop yang telah terinstal.
2. Sambungkan USB Arduino Uno ke PC/Laptop kalian.
3. Pada tools, ubah board menjadi “Arduino/Genuino UNO”, lalu pilih port yang
tersambung pada Arduino IDE.
4. Buat pemrograman seperti di bawah ini:
5. Lalu, di compile dan upload proram tersebut. Tunggu hingga proses upload
program selesai hingga bertuliskan “Done Uploading”.
6. Berikut ini merupakan hasil dari pemrograman diatas, pada Serial Plotter
menampilkan grafik cosinus :
7. Berikut ini merupakan hasil dari pemrograman cosinus yang ditampilkan pada