ELEKTRONIKA II
“MIKROKONTROLER”
NIM : 11220163000024
Kelompok : 3 (Tiga)
Nama Anggota :
LABORATORIUM FISIKA
JAKARTA
2023
A. Tujuan
1. Mengidentifikasi penggunaan OLED pada arduino uno.
2. Mengidentifikasi fungsi dari mikrokontroler.
3. Mengidentifikasi fungsi daru arduino uno.
B. Dasar Teori
Mikrokontroler (bahasa Inggris: microcontroller) merupakan sistem
mikroprosesor lengkap yang terkandung di dalam sebuah chip. Mikrokontroler
berbeda dari mikroprosesor serba guna yang digunakan dalam sebuah PC, karena di
dalam sebuah mikrokontroler umumnya telah terdapat komponen pendukung sistem
minimal mikroprosesor, yakni memori dan antarmuka I/O, bahkan ada beberapa jenis
mikrokontroler yang memiliki fasilitas ADC, PLL, EEPROM dalam satu kemasan,
sedangkan di dalam mikroprosesor umumnya hanya berisi CPU. (A.kadir,2013)
Arduino adalah sebuah platform komputasi fisik open source berbasiskan
Rangkain input / output sederhana (I/O) dan lingkungan pengembangan yang
mengimplementasikan bahasa Processing. Arduino dapat digunakan untuk
mengembangkan obyek interaktif mandiri atau dapat dihubungkan ke perangkat lunak
pada komputer anda (seperti Flash, Pengolahan, VVVV, atau Max / MSP).
Rangkaiannya dapat dirakit dengan tangan atau dibeli. IDE (Integrated Development
Environment) Arduino bersifat open source. (A.kadir,2013)
Light Emitting Diode atau sering disingkat dengan LED adalah komponen
elektronika yang dapat memancarkan cahaya monokromatik ketika diberikan
tegangan maju. LED merupakan keluarga Dioda yang terbuat dari bahan
semikonduktor. Warna-warna Cahaya yang dipancarkan oleh LED tergantung pada
jenis bahan semikonduktor yang dipergunakannya. (A.kadir,2013)
Pada perancangan dan pembuatan tugas akhir ini digunakan jenis papan arduino
Uno R3. Arduino Uno adalah sebuah board mikrokontroler yang didasarkan pada
ATmega328. Seperti pada gambar 1. Spesifikasi Arduino Uno R3 :
Mikrokontroler : ATmega328
Tegangan pengoperasian : 5V Tegangan input yang disarankan: 7-12V
Batas tegangan : 6-20V
input Jumlah pin I/O digital : 14
Jumlah pin input analog : 6
Arus DC tiap pin I/O : 40 mA
Arus DC untuk pin 3.3V : 50 mA
Memori : 32 KB (ATmega328)
SRAM : 2 KB (ATmega328)
EEPROM : 1 KB (ATmega328)
Clock Speed : 16MHz
(A.Kadir,2014)
Arduino UNO dapat disuplai melalui koneksi USB atau dengan sebuah power
suplai eksternal. Sumber daya dipilih secara otomatis. Suplai eksternal (non-USB)
dapat diperoleh dari sebuah adaptor AC ke DC atau battery. Adaptor dapat
dihubungkan dengan mencolokkan sebuah center-positive plug yang panjangnya 2,1
mm ke power jack dari board. Kabel lead dari sebuah battery dapat dimasukkan dalam
header/kepala pin Ground (Gnd) dan pin Vin dari konektor POWER. Board Arduino
UNO dapat beroperasi pada sebuah suplai eksternal 6 sampai 20 Volt. Jika disuplai
dengan yang lebih kecil dari 7 V, kiranya pin 5 Volt mungkin mensuplai kecil dari 5 Volt
dan board Arduino UNO bisa menjadi tidak stabil. Jika menggunakan suplai yang lebih
dari besar 12 Volt, voltage regulator bisa kelebihan panas dan membahayakan board
Arduino UNO. Range yang direkomendasikan adalah 7 sampai 12 Volt. (A.kadir,2014)
Struktur
Setiap program Arduino (biasa disebut sketch) mempunyai dua buah fungsi yang harus
ada.
void setup( ) { }
Semua kode didalam kurung kurawal akan dijalankan hanya satu kali ketika program
Arduino dijalankan untuk pertama kalinya.
void loop( ) { }
Syntax
Berikut ini adalah elemen bahasa C yang dibutuhkan untuk format penulisan.
//(komentar satu baris)
Kadang diperlukan untuk memberi catatan pada diri sendiri apa arti dari kode-kode
yang dituliskan. Cukup menuliskan dua buah garis miring dan apapun yang kita
ketikkan dibelakangnya akan diabaikan oleh program.
/* */(komentar banyak
baris)
Jika anda punya banyak catatan, maka hal itu dapat dituliskan pada beberapa baris
sebagai komentar. Semua hal yang terletak di antara dua simbol tersebut akan
diabaikan oleh program.
{ }(kurung kurawal)
Digunakan untuk mendefinisikan kapan blok program mulai dan berakhir (digunakan
juga pada fungsi dan pengulangan).
;(titik koma)
Setiap baris kode harus diakhiri dengan tanda titik koma (jika ada titik koma yang
hilang maka program tidak akan bisa dijalankan).
Verify
Upload
Serial Monitor :Membuka serial port monitor untuk
melihat feedback/umpan balik dari board anda.
Variabel
Sebuah program secara garis besar dapat didefinisikan sebagai instruksi untuk
memindahkan angka dengan cara yang cerdas. Variabel inilah yang digunakan untuk
memindahkannya.
int (integer)
Digunakan untuk menyimpan angka dalam 2 byte (16 bit). Tidak mempunyai angka
desimal dan menyimpan nilai dari -32,768 dan 32,767.
long (long)
Digunakan ketika integer tidak mencukupi lagi. Memakai 4 byte (32 bit) dari memori
(RAM) dan mempunyai rentang dari -2,147,483,648 dan 2,147,483,647.
boolean (boolean)
Variabel sederhana yang digunakan untuk menyimpan nilai TRUE (benar) atau FALSE
(salah). Sangat berguna karena hanya menggunakan 1 bit dari RAM.
float (float)
Digunakan untuk angka desimal (floating point). Memakai 4 byte (32 bit) dari RAM dan
mempunyai rentang dari -3.4028235E+38 dan 3.4028235E+38.
char (character)
Menyimpan 1 karakter menggunakan kode ASCII (misalnya ‘A’ = 65). Hanya memakai 1
byte (8 bit) dari RAM.
Operator Matematika
Operator yang digunakan untuk memanipulasi angka (bekerja seperti matematika
yang sederhana).
= Membuat sesuatu menjadi sama dengan nilai yang lain (misalnya: x = 10 * 2, x
sekarang sama dengan 20).
% Menghasilkan sisa dari hasil pembagian suatu angka
dengan angka yang lain (misalnya: 12 % 10, ini akan
menghasilkan angka 2). + Penjumlahan
- Pengurangan * Perkalian
/ Pembagian
Operator Pembanding
Digunakan untuk membandingkan nilai logika.
== Samadengan(misalnya:12==10adalahFALSE
(salah) atau 12 == 12 adalah TRUE (benar))
!= Tidak sama dengan (misalnya: 12 != 10 adalah TRUE
(benar) atau 12 != 12 adalah FALSE (salah))
< Lebih kecil dari (misalnya: 12 < 10 adalah FALSE (salah) atau 12 < 12 adalah FALSE
(salah) atau 12 <
14 adalah TRUE (benar))
> Lebih besar dari (misalnya: 12 > 10 adalah TRUE
(benar) atau 12 > 12 adalah FALSE (salah) atau 12 > 14 adalah FALSE (salah))
Struktur Pemograman
Program sangat tergantung pada pengaturan apa yang akan dijalankan berikutnya,
berikut ini adalah elemen dasar pengaturan.
if..else, dengan format seperti berikut ini: if (kondisi) { }
else if (kondisi) { } else { }
Dengan struktur seperti diatas program akan menjalankan kode yang ada di dalam
kurung kurawal jika kondisinya TRUE, dan jika tidak (FALSE) maka akan diperiksa
apakah kondisi pada else if dan jika kondisinya FALSE maka kode pada else yang akan
dijalankan.
digitalWrite(pin, value)
Ketika sebuah pin ditetapkan sebagai OUTPUT, pin tersebut dapat dijadikan HIGH
(ditarik menjadi 5 volts) atau LOW (diturunkan menjadi ground).
digitalRead(pin)
Ketika sebuah pin ditetapkan sebagai INPUT maka anda dapat menggunakan kode ini
untuk mendapatkan nilai pin tersebut apakah HIGH (ditarik menjadi 5 volts) atau LOW
(diturunkan menjadi ground).
Analog Arduino adalah mesin digital tetapi mempunyai kemampuan untuk beroperasi
di dalam alam analog (menggunakan trik). Berikut ini cara untuk menghadapi hal yang
bukan digital.
analogWrite(pin, value)
Beberapa pin pada Arduino mendukung PWM (pulse width modulation) yaitu pin 3, 5,
6, 9, 10, 11. Ini dapat merubah pin hidup (on) atau mati (off) dengan sangat cepat
sehingga membuatnya dapat berfungsi layaknya keluaran analog. Value (nilai) pada
format kode tersebut adalah angka antara 0 ( 0% duty cycle ~ 0V) dan 255 (100% duty
cycle ~ 5V).
analogRead(pin)
Ketika pin analog ditetapkan sebagai INPUT anda dapat membaca keluaran voltase-
nya. Keluarannya berupa angka antara 0 (untuk 0 volts) dan 1024 (untuk 5 volts).
(A.kadir,2015)
1. Laptop/Pc 1 Buah
5. LED Secukupnya
6. OLED 1 Buah
D. Langkah Kerja
No Langkah kerja Gambar
E. Data Percobaan
G. Pembahasan
Pada praktikum ini menggunakan satu LED dengan merangkai terlebih dahulu satu
LED dihubungkan dengan kabel penghubung. Dimana LED yang bermuatan positif
dihubungankan ke pin 10, LED bermuatan negatif dihubungkan ke GND. Pada pin 10
merupakan pin yang digunakan untuk digital akuator, dimana mengkonversikan
besaran listrik analog menjadi besaran lainnya, sehingga data yang masuk menjadi
sebuah cahaya yang keluar.
Sebelum itu telah membuat listing program pada software arduino sehingga
membuat perintah yang diupload apabila listing program benar maka rangkaian tersebut
dapat berjalan. Pada prinsipnya LED hanya akan memancarkan cahaya apabila dialiri
tegangan maju dari anoda menuju katoda. Maka lampu LED akan menyala selama I
detik kemudian mati selama 1 detik kemudian menyala lagi. Sesuai dari fungsi void
loop akan terus membaca sebelum catu daya atau kabel penghubung dicabut.
Pada praktikum kedua praktikum ini menggunakan dua LED dengan merangkai
terlebih dahulu LED dihubungkan dengan kabel penghubung. Dimana LED I yang
bermuatan positif dihubungankan ke pin 10 dan LED 2 yang bermuatan positif
dihubungkan ke pin 9, LED 1 dan LED 2 bermuatan negatif dihubungkan ke GND.
Pada pin 10 dan pin 9 merupakan pin yang digunakan untuk digital akuator, dimana
mengkonversikan besaran listrik analog menjadi besaran lainnya,. Sebelum itu telah
membuat listing program pada software arduino sehingga membuat perintah yang
diupload apabila listing program benar maka rangkaian tersebut dapat berjalan.
Pada prinsipnya LED hanya akan memancarkan cahaya apabila dialiri tegangan
maju dari anoda menuju katoda. Maka lampu LED 1 akan menyala selama 1 detik
kemudian mati selama 1 detik kemudian menyala lagi dan lampu LED 2 akan menyala
selama 2 detik kemudian mati selama 2 detik kemudian menyala lagi. Sesuai dari fungsi
void loop akan terus membaca sebelum catu daya atau kabel penghubung dicabut.
Alat ini dibuat sesederhana mungkin sehingga mudah untuk digunakan, dan
bersifat portable sehingga dapat di pindahkan kemana saja. Alat ini hanya
membutuhkan tegangan DC dari komputer PC atau Laptop dengan menggunakan kabel
USB sebagai penghubungnya juga berfungsi sebagai pengirim data dari komputer PC
atau Laptop ke mikrokontroler Arduino Uno. Alat ini dibuat dengan suluruh komponen
tidak saling terhubung satu dengan yang lain. Ini dirancang agar saat melakukan setiap
percobaan praktikum sesuai modul, komponen yang tidak digunakan, tidak akan
berpengaruh yang dapat menyebabkan kegagalan dari hasil percobaan praktikum. untuk
dapat terhubung antara komponen satu dengan yang lain menggunakan kabel jumper.
Pengujian percobaan LED berjalan ini memberikan hasil sesuai dengan kode
perintah yang di upload ke Ardino board. Dari pengujian dan pengamatan hasil
percobaan Traffic Light (lampu lalu lintas perempatan) berjalan sesuai dengan kode
perintah yang di upload ke Arduino board dengan waktu jeda saat lampu berwarna
merah adalah 10 detik. LDR sebagai input dan LED sebagai output LDR sebagai sensor
cahaya dalam percobaan ini berfungsi sebagai saklar otomatis untuk LED. Dimana saat
LDR mendeteksi cahaya kurangnya cahaya yang masuk maka LED akan menyala,
semakin gelap atau semakin tidak ada cahaya maka LED akan semakin terang.
Jawaban:
```c
#include <avr/io.h>
int main(void) {
while (1) {
// Delay sementara
_delay_ms(1000);
// Delay sementara
_delay_ms(1000);
return 0;
```
Di atas adalah program sederhana yang mengatur pin PB0 sebagai output pada
mikrokontroler AVR dan secara bergantian menyalakan dan mematikan pin
tersebut setiap 1 detik menggunakan bahasa pemrograman C.
I. Kesimpulan
1. Penggunaan OLED pada Arduino Uno: OLED (Organic Light Emitting Diode)
adalah jenis layar kecil yang sering digunakan dalam proyek Arduino Uno untuk
menampilkan teks, grafik, atau informasi visual lainnya. OLED biasanya digunakan
sebagai tampilan output untuk menampilkan data atau pesan kepada pengguna. Arduino
Uno dapat mengontrol OLED dengan mudah menggunakan berbagai perpustakaan
(library) yang tersedia, seperti "Adafruit SSD1306" atau "U8g2," yang memungkinkan
Anda menggambar teks, gambar, grafik, dan informasi lainnya di layar OLED.
3. Fungsi dari Arduino Uno: Arduino Uno adalah salah satu jenis papan pengembangan
mikrokontroler yang didasarkan pada mikrokontroler ATMega328P. Fungsi utama
Arduino Uno adalah sebagai platform pengembangan perangkat keras dan perangkat
lunak untuk membuat berbagai proyek elektronik dan embedded systems. Arduino Uno
dilengkapi dengan input/output (I/O) digital dan analog, serta berbagai perangkat keras
lainnya (seperti USB, catu daya, dan sebagainya) yang memungkinkan pengguna untuk
membuat prototipe dan mengembangkan berbagai aplikasi, dari kontrol otomatis
hingga tampilan interaktif. Arduino Uno digunakan oleh pengembang, pemula, dan
hobiis untuk belajar dan menciptakan berbagai perangkat elektronik.
J. Komentar
Kritik : -
Saran : -
Daftar Pustaka