• Tidak ada hasil yang ditemukan

LAPORAN AKHIR PRAKTIKUM MIKROKONTROLER

N/A
N/A
Sunang Suryaning Praja

Academic year: 2024

Membagikan "LAPORAN AKHIR PRAKTIKUM MIKROKONTROLER"

Copied!
9
0
0

Teks penuh

(1)

PRAKTIKUM MIKROKONTROLER

UNIT 5 KOMUNIKASI I2C

Nama : Fatahillah Furqon Abdulaziz NPM / Kelas : 10420475 / 3IB03

Hari / Tanggal : Selasa / 30 Mei 2023 PJ Shift / Shift : Kevin Warizky / IV Rekan Kerja : -

(2)

Praktikum Daring Mikrokontroler Unit 5 - 1 / 6

Data Percobaan Unit 5 Komunikasi I2C

Data Pengamatan Unit 5

Nama/NPM Paraf Asisten

Shift/Tanggal

Rekan Kerja

( )

Sebelum melakukan simulasi, harap untuk menambahkan library LCD khusus i2c dan pastikan juga ada library keypad.

A. Kalkulator sederhana menggunakan Arduino, LCD 12c, dan Keypad Langkah Kerja:

1. Rangkailah rangkaian berikut menggunakan software simulasi

2. Simulasikan rangkaian dengan listing program sesuai tabel di bawah.

3. Lengkapi tabel di bawah dengan penjelasan pada setiap line program.

PROGRAM PENJELASAN

(3)

Praktikum Daring Mikrokontroler Unit 5 - 2 / 6

#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 20, 2);

#include <Keypad.h> const byte ROWS = 4;

const byte COLS = 4;

char keys [ROWS] [COLS] = { {'7', '8', '9', '/'},

{'4', '5', '6', '*'}, {'1', '2', '3', '-'}, {'C', '0', '=', '+'}

(4)

Praktikum Daring Mikrokontroler Unit 5 - 3 / 6 };

byte rowPins[ROWS] = {2, 3, 4, 5}; byte colPins[COLS] = {6, 7, 8, 9};

Keypad myKeypad = Keypad(

makeKeymap(keys), rowPins, colPins, ROWS, COLS );

float presentValue = false; float next = false; float final = false;

String num1, num2; int answer = 0; char op;

void setup() { lcd.init();

lcd.backlight();

lcd.setCursor(5,0); lcd.print("UNIT 5");

lcd.setCursor(3,1);

lcd.print("Calculator"); delay(1000);

lcd.clear();

} void loop() {

char key = myKeypad.getKey();

if (key != NO_KEY && (key == '1' || key

== '2' || key == '3' || key == '4' || key == '5'

|| key == '6' || key == '7' || key == '8' || key

== '9' || key == '0')) { if (presentValue !=

true)

{ num1 = num1 + key; int numLength = num1.length();

lcd.setCursor(0, 0); lcd.print(num1);

} else

{ num2 = num2 + key; int numLength = num2.length(); int numLength1 = num1.length();

lcd.setCursor(1 + numLength1, 0);

lcd.print(num2); final = true;

} }

(5)

Praktikum Daring Mikrokontroler Unit 5 - 4 / 6

else if (presentValue == false && key !=

NO_KEY && (key == '/' || key == '*' || key

== '-' || key == '+')) { if (presentValue ==

false)

{ int numLength = num1.length();

presentValue = true; op = key;

lcd.setCursor(0 + numLength, 0);

lcd.print(op);

} }

else if (final == true && key != NO_KEY

&& key == '=') {

if (op == '+') {

answer = num1.toInt() + num2.toInt();

}

else if (op == '-') {

answer = num1.toInt() - num2.toInt();

}

else if (op == '*') {

answer = num1.toInt() * num2.toInt();

}

else if (op == '/') {

answer = num1.toInt() / num2.toInt();

}

lcd.clear(); lcd.setCursor(16, 1);

lcd.autoscroll(); lcd.print(answer);

lcd.noAutoscroll();

} else if (key != NO_KEY && key ==

'C')

{ lcd.clear();

presentValue = false; final = false; num1 = ""; num2 = "";

answer = 0; op = ' '; } }

(6)

Praktikum Daring Mikrokontroler Unit 5 - 5 / 6 Jelaskan bagaimana kesimpulan dari keluaran program setelah disimulasi?

Coba lakukan pengurangan, penjumlahan, perkalian dan pembagian sederhana, apakah hasilnya sudah sesuai?

Coba melakukan pembagian sederhana dengan hasil pecahan (cnth : 0.5 , 0.7 , ..), pastinya hasil hanya akan menunjukan angka 0. Kenapa hanya menampilkan 0, jelaskan?

Jika benar seperti itu, line koding yang mana sajakah yang harus diganti? Tulis semua line yang harus diganti dan jelaskan!

(7)

Praktikum Daring Mikrokontroler Unit 5 - 6 / 6

*hint : coba baca materi tentang Tipe data pada arduino

(8)
(9)

Referensi

Dokumen terkait

Laporan Mingguan Praktikum BIOLOGI UMUM OLEH: Nama : NIM : Kelompok : Unit :. Asisten Meja : Dosen

Maksud dari praktikum kimia dasar adalah menunjang teori yang telah didapatkan atau sedang diberikan oleh dosen pada saat kuliah.Tujuan umum penulisan Laporan Akhir Praktikum

Halaman Asisten Lab merupakan halaman bagi Asisten Lab untuk mengubah data mata kuliah, mengunci folder serta mendownload semua data praktikum berdasarkan mata

Diajukan Untuk Memenuhi Salah Satu Syarat Kelulusan Praktikum Kimia

Halaman Asisten Lab merupakan halaman bagi Asisten Lab untuk mengubah data mata kuliah, mengunci folder serta mendownload semua data praktikum berdasarkan mata

LAPORAN PRAKTIKUM BIOLOGI UMUM PENGENALAN ALAT GELAS DAN INSTRUMEN LABORATORIUM NAMA AISYAH MIFTAHURRAHMAH NIM 215100300111022 KELOMPOK F-1 KELAS F ASISTEN GUSTI CAHYA RIZKY

Tiara Servita Dewi, selaku asisten dosen pada mata kuliah Hidrolika yang telah memberikan pengarahan dan bimbingan serta motivasi selama praktikum berlangsung dan dalam penyusunan

LAPORAN PRAKTIKUM ANALISA PERANCANGAN KERJA PRODI TEKNIK INDUSTRI UNIVERSITAS