Anda di halaman 1dari 23

UNIT 8 - 9

Pulse Width Modulation (PWM) & Serial Komunikasi

NAMA :

1. SURYA RASA SEJATI surya.r.s@mail.ugm.ac.id


2. YUNITA NUR CAHYANI yunita.n.c@mail.ugm.ac.id

NIM :
1. 18/426329/SV/15471
2. 18/426331/SV/15473

Laboratorium Instrumentasi dan Kendali


Teknik Elektro dan Informatika
Sekolah Vokasi
Universitas Gadjah Mada
2019
PENDAHULUAN
A. Latar Belakang
Seiring berkembangnya teknologi yang semakin pesat terciptanya
teknologi yang lebih modern sehingga penggunaan suatu sistem atau
komponen menjadi lebih efisien dan praktis. Hal ini menunjukan pada
sebuah sistem dimana terdapat beberapa sistem dan komponen dapat
diringkas atau efisien dengan sebuah sistem yang telah dikembangkan
sehingga menjadi sebuah sistem atau komponen yang simple dan lebih
efisien. Mendorong terwujudnya sistem digital, munculah Arduino.
Dimana Arduino dapat diprogram dan di atur pada pengaplikasian suatu
sistem.
Pada praktikum kali ini kami menggunakan Arduino Atmega 2560
untuk percobaan dengan menggunakan LCD (Liquid Crystal Display),
menggunakan pin PWM, menggunakan sensor suhu LM35 dan
menggunakan potensiometer untuk mengatur besar kecilnya putaran pada
motor yang sudah tersedia pada trainer. Sehingga kami dapat
menampilkan sebuah program yang nantinya akan ditampilkan pada LCD
(Liquid Crystal Display) hasil putaran kekan, kekiri, dan stop beserta besar
putaran pada motor tersebut.
B. Tujuan

a. Mampu membuat program mengatur kecepatan putar motor


dengan indicator dari suhu menggunakan sensor suhu LM35.
b. Membuat mengatur kecepatan putar motor dengan menggunakan
potensio sebagai input.
c. Membuat program untuk membaca suhu ruangan dengam LM35
yang ditampilkan pada serial monitor
DASAR TEORI

Pulse Width Modulation (PWM) secara umum adalah sebuah


cara memanipulasi lebar sinyal yang dinyatakan dengan pulsa dalam suatu
perioda, untuk mendapatkan tegangan rata-rata yang berbeda. Beberapa
contoh aplikasi PWM adalah pemodulasian data untuk telekomunikasi,
pengontrolan daya atau tegangan yang masuk ke beban, regulator
tegangan, audio effect dan penguatan, serta aplikasiaplikasi lainnya.
Aplikasi PWM berbasis mikrokontroler biasanya berupa pengendalian
kecepatan motor DC, pengendalian motor servo, pengaturan nyala terang
LED dan lain sebagainya. Sinyal PWM pada umumnya memiliki
amplitudo dan frekuensi dasar yang tetap, namun memiliki lebar pulsa
yang bervariasi. Lebar Pulsa PWM berbanding lurus dengan amplitudo
sinyal asli yang belum termodulasi. Artinya, Sinyal PWM memiliki
frekuensi gelombang yang tetap namun duty cycle bervariasi (antara 0%
hingga 100%).
Analog input dihasilkan oleh teknik yang dikenal dengan istilah
PWM atau Pulse Width Modulation. PWM memanipulasi keluaran digital
sedemikian rupa sehingga menghasilkan sinyal analog. Mikrokontroler
mengeset output digital ke HIGH dan LOW bergantian dengan
porsi waktu tertentu untuk setiap nilai keluarannya. Durasi waktu untuk
nilai HIGH disebut pulse width atau panjang pulsa. Variasi nilai output
analog didapatkan dari perubahan panjang pulsa yang diberikan pada satu
periode waktu dan dilakukan berulang-ulang.

Analog input dihasilkan oleh teknik yang dikenal dengan istilah


PWM atau Pulse Width Modulation. PWM memanipulasi keluaran digital
sedemikian rupa sehingga menghasilkan sinyal analog. Mikrokontroler
mengeset output digital ke HIGH dan LOW bergantian dengan
porsi waktu tertentu untuk setiap nilai keluarannya. Durasi waktu untuk
nilai HIGH disebut pulse width atau panjang pulsa. Variasi nilai output
analog didapatkan dari perubahan panjang pulsa yang diberikan pada satu
periode waktu dan dilakukan berulang-ulang.

(Serial Komunikasi)

Komunikasi serial adalah komunikasi yang pengiriman datanya per-bit


secara berurutan dan bergantian. Komunikasi ini mempunyai suatu
kelebihan yaitu hanya membutuhkan satu jalur dan kabel yang sedikit
dibandingkan dengan komunikasi paralel. Pada prinsipnya komunikasi
serial merupakan komunikasi dimana pengiriman data dilakukan per bit
sehingga lebih lambat dibandingkan komunikasi parallel, atau dengan kata
lain komunikasi serial merupakan salah satu metode komunikasi data di
mana hanya satu bit data yang dikirimkan melalui seuntai kabel pada suatu
waktu tertentu. Pada dasarnya komunikasi serial adalah kasus khusus
komunikasi paralel dengan nilai n = 1, atau dengan kata lain adalah suatu
bentuk komunikasi paralel dengan jumlah kabel hanya satu dan hanya
mengirimkan satu bit data secara simultan.Hal ini dapat disandingkan
dengan komunikasi paralel yang sesungguhnya di mana n-bit data
dikirimkan bersamaan, dengan nilai umumnya 8 ≤ n ≤ 128.

Komunikasi serial ada dua macam, asynchronous serial dan synchronous


serial.  
=>  Synchronous serial adalah komunikasi dimana hanya ada satu pihak
(pengirim atau penerima) yang menghasilkan clock dan mengirimkan
clock tersebut bersama-sama dengan data.
Contoh pengunaan synchronous serial terdapat pada transmisi data
keyboard.
=>  Asynchronous serial adalah komunikasi dimana kedua pihak
(pengirim dan penerima) masing-masing menghasilkan clock namun
hanya data yang ditransmisikan, tanpa clock. Agar data yang dikirim sama
dengan data yang diterima, maka kedua frekuensi clock harus sama dan
harus terdapat sinkronisasi. Setelah adanya sinkronisasi, pengirim akan
mengirimkan datanya sesuai dengan frekuensi clock pengirim dan
penerima akan membaca data sesuai dengan frekuensi clock penerima.
Contoh penggunaan asynchronous serial adalah pada Universal
Asynchronous Receiver Transmitter (UART) yang digunakan pada serial
port (COM) komputer
Untuk mengirim data dari arduino ke PC dan menerima data dari
PC kita bisa menggunakan berbagai cara salah satunya yg paling
sederhana adalah komunikasi Serial yg terdapat pada setiap board
Arduino. Perlu kita ketahuai pemrograman sketch arduino menggunakan
gaya bahasa C tapi pada pembuatan librarynya menggunakan C++ yg
menerapkan pemrograman Objek (Class). Untuk itu sy sarankan anda
sebaiknya mengetahuai sedikit dasar-dasar pemrograman berorientasi
objek. Pemrograman code arduino (sketch) untuk komunikasi serial
menjadi mudah karena fungsi fungsi sudah tersedia dlm class yg tersedia
untuk komunikasi Serial . Instance dari class untuk komunikasi serial
(objek) sudah dibuatkan namanya Serial . Untuk arduino yg mempunyai
lebih dari 1 port serial misal arduino mega256 nama objek untuk
komunikasi serialnya adalah Serial1, Serial2, Serial3. Penulisan objek
dan fungsi pada library arduino adalah : namaobjek.namafungsi contoh :
Serial.read() , artinya kita memanggil fungsi read() dari objek bernama
Serial . Data yg dikirim ke serial port akan dikirim ke buffer pengirim
(Tx buffer) begitupun data yg diterima adalah data yg diambil dari
buffer penerima (RX buffer).
 if (Serial) : Untuk mengecek apakah Port sudah siap
 Serial.available() : Untuk mengecek apakah data sudah ada di buffer
penerima
 Serial.begin() : untuk mengeset kecepatan transmisi data
 serial.end() : Untuk menon-aktifkan pin rx dan tx sbg fungsi serial dan
kembali sbg pin I/O
 Serial.find() : mencari string dlm buffer data
 Serial.findUntil(): mencari buffer data sampai data dgn panjang/terminator
nya yg diberikan ditemukan
 Serial.flush(): menunggu data terkirim semua
 Serial.parseFloat(): mengambil data float pertama dari data di buffer serial.
 serial.parseInt(): mengambil data integer pertama dari data di buffer serial.
 Serial.peek(): mengambil data berikutnya di bufer penerima
 Serial.print() : mengirim data ASCII
 Serial.println() : mengirimdata ASCII + CR,LF (kode enter)
 Serial.read(): membaca data yg diterima
 Serial.readBytes(): membaca data byte yg diterima
 Serial.readBytesUntil()
 Serial.setTimeout(): mengeset batas maksimum waktu  tunggu(timeout)
transmisi data.
 Serial.write() : mengirim data byte (numerik)
 Serial.serialEvent(): fungsi ini akan dipanggil jika data
datang/diterima.berlaku spt interupsi serial.

LCD (Liquid Crystal Display)


Pada praktikum yang telah dilakukan kami melakukan percobaan
dengan menggunakan LCD yang sudah tersedia pada modul. Dalam
kamus besar bahasa ke wikepedia, arti dari LCD (Liquid Crystal Display)
adalah suatu jenis media tampilan yang menggunakan kristal cair sebagai
penampil utama.
LCD bisa memunculkan gambar atau tulisan (berwarna juga bisa)
dikarenakan terdapat banyak sekali titik cahaya (piksel) yang terdiri dari
satu buah kristal cair sebagai sebuah titik cahaya. Walau disebut sebagai
titik cahaya, namun kristal cair ini tidak memancarkan cahaya sendiri.
Sumber cahaya di dalam sebuah perangkat LCD adalah lampu neon
berwarna putih di bagian belakang susunan kristal cair tadi.
Titik cahaya yang jumlahnya puluhan ribu bahkan jutaan inilah yang
membentuk tampilan citra. Kutub kristal cair yang dilewati arus listrik akan
berubah karena pengaruh polarisasi medan magnetik yang timbul dan oleh
karenanya akan hanya membiarkan beberapa warna diteruskan sedangkan
warna lainnya tersaring.
Dalam menampilkan karakter untuk membantu menginformasikan
proses dan control yang terjadi dalam suatu program robot kita sering
menggunakan LCD juga. Yang sering digunakan dan paling murah adalah
LCD dengan banyak karakter 16x2. Maksudnya semacam fungsi tabel di
ms office. 16 menyatakan kolom dan 2 menyatakan baris.

Dibawah ini merupakan konfigurasi LCD


KELEBIHAN ARDUINO
Tidak perlu perangkat chip programmer karena didalamnya sudah ada
bootloadder yang akan menangani upload program dari komputer.
Sudah memiliki sarana komunikasi USB, Sehingga pengguna laptop yang
tidak memiliki port serial/RS323 bisa menggunakannya.
Memiliki modul siap pakai ( Shield ) yang bisa ditancapkan pada board
arduino. Contohnya shield GPS, Ethernet,dll.
SOKET
Soket USB adalah soket kabel USB yang disambungkan kekomputer atau
laptop. Yang berfungsi untuk mengirimkan program ke arduino dan juga
sebagai port komunikasi serial.

INPUT/OUTPUT
Input/output digital atau digital pin adalah pin pin untuk menghubungkan
arduino dengan komponen atau rangkaian digital. contohnya , jika ingin
membuat LED berkedip, LED tersebut bisa dipasang pada salah satu pin
input atau output digital dan ground. komponen lain yang menghasilkan
output digital atau menerima input digital bisa disambungkan ke pin pin
ini.
Input analog atau analog pin adalah pin pin yang berfungsi untuk
menerima sinyal dari komponen atau rangkaian analog. contohnya ,
potensiometer, sensor suhu, sensor cahaya, dll.

Catu Daya
pin pin catu daya adalah pin yang memberikan tegangan untuk komponen
atau rangkaian yang dihubungkan dengan arduino. Pada bagian catu daya
ini pin Vin dan Reset. Vin digunakan untuk memberikan tegangan
langsung kepada arduino tanpa melalui tegangan pada USB atau adaptor,
sedangkan Reset adalah pin untuk memberikan sinyal reset melalui tombol
atau rangkaian eksternal.

Baterai Adaptor
Soket baterai atau adaptor digunakan untuk menyuplai arduino dengan
tegangan dari baterai/adaptor 9V pada saat arduino sedang tidak
disambungkan kekomputer. Jika arduino sedang disambungkan
kekomputer dengan USB, Arduino mendapatkan suplai tegangan dari
USB, Jika tidak perlu memasang baterai/adaptor pada saat memprogram
arduino.
PROSEDUR PERCOBAAN

A. Alat dan Bahan


1. Trainer
2. Kabel usb
3. Computer dan software Arduino
B. Langkah Percobaan :
1. Siapkan trainer yang sudah terpasang Arduino AT mega 2560
2. Sambungkan kabel USB dari trainer ke computer
3. Buka aplikasi software Arduino pada computer
4. Pastikan port sesuai dengan COM Arduino yang di pakai
5. Masukkan program untuk menampilkan outputan pada display LCD
6. Dan uji Pulse Width Modulation (PWM) menggunakan sensor suhu
LM35 dan menampilkan serial monitor menggunakan serial
komunikasi.
7. ‘’Verify’’ kemudian ‘’upload’’
DATA PERCOBAAN

A. Coding kecepatan putar motor dengan indicator dari suhu


menggunakan sensor suhu LM35 dan menggunakan potensiometer
sebagai input

Menggunakan Potensiometer sebagai Input


#include <LiquidCrystal.h>
LiquidCrystal lcd(36, 34, 32, 30, 28, 26);
int state = 2;
void setup() {
int I;
for (I = 47; I <= 53; I += 2) {
pinMode(I, INPUT);
digitalWrite(I, HIGH);
}
lcd.begin(16, 2);
pinMode(0, OUTPUT);
pinMode(1, OUTPUT);
pinMode(10, INPUT);
pinMode(13, OUTPUT);
pinMode(24, OUTPUT);
analogWrite(13, 10);
digitalWrite(24, LOW);
}
void loop() {
int vel = analogRead(10) / 4;
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(vel);
lcd.setCursor(0, 1);
lcd.print(state == 0 ? "Right" : state == 1 ? "Left" : "Stop");
switch (readOneButton()) {
case 51: state = 2; analogWrite(13, 0); break;
case 47: state = 0; if (0)
case 49: state = 1;
digitalWrite(0, state);
digitalWrite(1, !state);
analogWrite(13, vel);
}
delay(100);
}
int readOneButton() {
int I;
for (I = 47; I <= 53; I += 2) {
if (digitalRead(I) == LOW) {
while (digitalRead(I) == LOW)
delay(5);
return I;
}
}
return 0;
}

Menggunakan Sensor Suhu LM35


#define SEGMENT_DELAY 1
#define SEGMENT_NUM 4
void setup() {
Serial.begin(9600);
int I;
for (I = 14; I <= 17; I++) {
pinMode(I, OUTPUT);
digitalWrite(I, LOW);
}
pinMode(8, OUTPUT);
for (I = 0; I <= 7; I++)
pinMode(I, OUTPUT);
for (I = 10; I <= 12; I++)
pinMode(I, INPUT);
}
void loop() {
int I, pattern;
pattern = analogRead(13) / 2.0479;
showNumber7Segment(pattern);
Serial.println(pattern);
Serial.print("Iki Suhune Lur");
Serial.print("\t");
digitalWrite(8, pattern);
}
void turnOff7Segment() {
int I;
for (I = 14; I <= 17; I++)
digitalWrite(I, LOW);
}
void showNumber7Segment(int num) {
int I, f = 1;
for (I = 17; I >= 14; I--) {
if (f) {
turnOff7Segment();
digitalWrite(I, HIGH);
showNumber(num % 10);
num /= 10;
}
delay(SEGMENT_DELAY);
if (num == 0)
f = 0;
}
}
void showNumber(int num) {
int I;
int num_map[][8] = {
{1, 1, 1, 1, 1, 1, 0, 0}, // 0
{0, 1, 1, 0, 0, 0, 0, 0}, // 1
{1, 1, 0, 1, 1, 0, 1, 0}, // 2
{1, 1, 1, 1, 0, 0, 1, 0}, // 3
{0, 1, 1, 0, 0, 1, 1, 0}, // 4
{1, 0, 1, 1, 0, 1, 1, 0}, // 5
{1, 0, 1, 1, 1, 1, 1, 0}, // 6
{1, 1, 1, 0, 0, 0, 0, 0}, // 7
{1, 1, 1, 1, 1, 1, 1, 0}, // 8
{1, 1, 1, 1, 0, 1, 1, 0} // 9
};
for (I = 0; I <= 7; I++)
digitalWrite(I, num_map[num][I] ? HIGH : LOW);
}
ANALISIS DAN PEMBAHASAN

Menggunakan Potensiometer sebagai Input

Dari hasil pemrograman diatas didapat hasil untuk


Menggunakan Sensor Suhu LM35

Pada praktikum ini membuat program mengatur kecepatan putar motor


dengan indicator dari suhu menggunakan sensor suhu LM35, mengatur kecepatan
putar motor dengan menggunakan potensio sebagai input, dan program untuk
membaca suhu ruangan dengam LM35 yang ditampilkan pada serial monitor. di
dalam script program terdapat beberapa komponen dan fungsi yang digunakan
dengan fungsinya masing –masing, fungsi - fungsi tersebuat memiliki fungsinya
masing – masing yaitu, sebagau berikut :

 pinMode ()
pinMode Berfungsi untuk mengkonfigurasi pin tertentu agar dapat
digunakan sebagai input atau output, pada program ini outputnya di alamatkan
sesuai dengan fungsi pin yang dibutuhkan.
pinMode(I, OUTPUT);

pinMode(8, OUTPUT); //Pin 8 untuk Motor Dc

 Int ()
   int() adalah variable yang difungsikan sebagai sebuah penyimpan nilai
yang dapat di gunakan dalam program. Variable dapat di rubah sesuai dengan
instruksi yang kita buat. Ketika mendeklarisikan variable harus di ikut sertakan
type variable serta nilai awal variable. 

int I;
int I, pattern;

 digitalWrite ()
digitalWrite() Berfungsi untuk memberi nilai HIGH atau LOW ke pin
digital. Jika pin telah dikonfigurasi sebagai OUTPUT.
digitalWrite(I, LOW);

digitalWrite(8, pattern); //Motor akan bekerja pada nilai


yang dihasilkan pattern

digitalWrite(I, HIGH);

 analogRead ()
analogRead berfungsi untuk membaca nilai dari pin analog yang
ditentukan, pada arduino mega 2560 berisi konverter multichannel, 10-bit analog
ke digital, ini berarti bahwa arduino akan memetakan tegangan input antara 0 dan
tegangan operasi (5V atau 3.3V) ke dalam nilai integer antara 0 dan 1023.
pattern = analogRead(13) / 2.0479; //rumus untuk menentukan
berapa derajat temperature yang terbaca
pattern = analogRead(12) / 4; //Rumus untuk menentukan nilai
PWM dari putaran potensiometer (12 = A12 pin analog)

 for
for digunakan untuk mengulangi blok pernyataan yang dilampirkan dalam
kurung kurawal, penghitung kenaikan biasanya digunakan untuk menambah dan
mengakhiri loop, pernyataan for berguna untuk operasi berulang.
int I;
for(I = 14; I <=17; I++) {
pinMode(I, OUTPUT);
digitalWrite(I, LOW);
}
for(I = 0; I <= 7; I++)
pinMode(I, OUTPUT);
for(I = 10; I <= 12; I++)
pinMode(I, INPUT);
}
for(I = 14; I <=17; I++) {
pinMode(I, OUTPUT);
digitalWrite(I, LOW);
}
pinMode(8, OUTPUT); //Pin 8 untuk Motor Dc
for(I = 0; I <= 7; I++)
pinMode(I, OUTPUT);
for(I = 10; I <= 12; I++)
pinMode(I, INPUT);
}

 Serial.begin
Serial.begian merupakan fungsi serial yang digunakan untuk komunikasi
antara papan Arduino dan komputer atau perangkat lain yang ditambah kan fungsi
begin, fungsi begin di sini berfungsi untuk mengatur kecepatan data dalam bit per detik
(baud) untuk transmisi data serial dan dapat di tampilkan pada serial monitor.
Serial.begin(9600);

 Serial.println
Serial.println merupakan fungsi serial yang digunakan untuk komunikasi
antara papan Arduino dan komputer atau perangkat lain yang ditambah kan fungsi
println, fungsi println di sini berfungsi untuk mencetak data ke port serial sebagai teks
ASCII yang dapat dibaca manusia yang diikuti oleh karakter carriage return (ASCII 13,
atau '\ r') dan karakter baris baru (ASCII 10, atau '\ n') dan dapat di tampilkan pada serial
monitor. Pada program ini menampilkan nilai dari perhitungan pada variable pattern.
Serial.println(pattern);

 Serial.print
Serial.print merupakan fungsi serial yang digunakan untuk komunikasi
antara papan Arduino dan komputer atau perangkat lain yang ditambah kan fungsi print,
fungsi print pada program ini berfungsi untuk mencetak data ke port serial sebagai teks
ASCII yang dapat dibaca manusia. Perintah ini dapat mengambil banyak bentuk. Angka
dicetak menggunakan karakter ASCII untuk setiap digit. Mengapung juga dicetak sebagai
angka ASCII, default ke dua tempat desimal. Bytes dikirim sebagai karakter tunggal.
Karakter dan string dikirim apa adanya. Parameter kedua opsional menentukan basis
(format) yang akan digunakan; nilai yang diizinkan adalah BIN (biner, atau basis 2), OCT
(oktal, atau basis 8), DEC (desimal, atau basis 10), HEX (heksadesimal, atau basis 16).
Untuk angka floating point, parameter ini menentukan jumlah tempat desimal yang
akan digunakan dan dapat ditampilkan pada serial monitor.
Serial.print("Iki Suhune Lur");
Serial.print("\t");

Salah satu jenis penampil yang sering digunakan ialah LCD (Liquid
Crystal Display), yang memiliki banyak kelebihan dibandingkan seven
segment display. Salah satu kelebihan LCD ialah menampilkan pesan text.
Jenis LCD yang banyak digunakan untuk project microcontroller
sederhana ialah LCD 16x2, 16 kolom dengan 2 baris.

KETERANGAN :

 Fungsi void setup () dalam sebuah program arduino adalah semua perintah
yang akan di baca sekali.
 Fungsi void loop () dalam sebuah program arduino adalah semua perintah
yang akan di baca berulang-ulang.

begin()
Untuk begin() digunakan dalam inisialisasi interface ke LCD dan mendefinisikan
ukuran kolom dan baris LCD. Pemanggilan begin() harus dilakukan terlebih
dahulu sebelum memanggil instruksi lain dalam library LCD. Untuk syntax
penulisan instruksi begin() ialah sebagai berikut.
lang.begin(cols, rows)
Dengan lang ialah nama variable, cols jumlah kolom LCD, dan rows jumlah baris
LCD.

setCursor()
Instruksi ini digunakan untuk memposisikan cursor awal pesan text di LCD.
Penulisan syntax setCursor() ialah sebagai berikut.
lang.setCursor(col, row)
Dengan lang ialah nama variable, col kolom LCD, dan row baris LCD.

print()
Sesuai dengan namanya, instruksi print() ini digunakan untuk mencetak,
menampilkan pesan text di LCD. Penulisan syntax print() ialah sebagai berikut.
lang.print(data)
Dengan lang ialah nama variable, data ialah pesan yang ingin ditampilkan.

scrollDisplayLeft()
Merupakan salah satu function dalam library LCD yang berfungsi untuk
menggulung tampilan text yang ditampilkan di LCD ke kiri. Sehingga tampilan
text di LCD akan terlihat bergeser ke kiri dan seolah-olah bisa menghilang.
Banyaknya jumlah pergeseran ditentukan oleh perulangan for() yang digunakan.

scrollDisplayRight()
Merupakan salah satu function dalam library LCD yang berfungsi untuk
menggulung tampilan text yang ditampilkan di LCD ke kanan. Sehingga tampilan
text di LCD akan terlihat bergeser ke kanan dan seolah-olah bisa menghilang.
Banyaknya jumlah pergeseran ditentukan oleh perulangan for() yang digunakan.
createChar()
Dengan menggunakan funtion pada library LiquidCrystal, yakni createChar(),
memungkinkan untuk membuat tampilan karakter unik pada LCD. Tampilan dari
setiap karakter tersebut ditentukan oleh array dari data 8 bit untuk setiap barisnya.
Dengan lima bit paling belakang terkecil (LSB), dari setiap data menentukan pixel
pada baris tersebut. Sementara function write() digunakan untuk menampilkan
karakter unik tersebut di LCD.
Untuk penulisan function createChar() ialah sebagai berikut.
lang.createChar(num, data)
Dengan lang ialah variable terkait LCD yang dideklarasikan sebelumnya, num
nomor karakter dari 0 hingga 7, dan data merupakan nama untuk karakter unik
tersebut.
write()
Sementara itu cara penggunaan function write(), ialah sebagai berikut.
lang.write(byte(num))
Dengan lang ialah variable terkait LCD yang dideklarasikan sebelumnya, num
ialah nomor karakter dari 0 hingga 7 yang telah dibuat sebelumnya.
Perbedaan antara function print() dengan write() terletak pada apa yang
ditampilkannya. Untuk function print() digunakan dalam mencetak text ke LCD.
Sedangkan untuk function write() digunakan untuk mencetak sebuah karakter
unik yang berupa data byte

KESIMPULAN

1. PinMode berfungsi untuk mengkonfigurasi pin tertentu agar berperilaku


sebagai input atau output. Lihat deskripsi pin digital untuk rincianya.
2. LCD (Liquid Crystal Display) merupakan suatu komponen elektronika
yang digunakan untuk menampilkan data atau program.
3. Pulse Width Modulation (PWM) secara umum adalah sebuah cara
memanipulasi lebar sinyal yang dinyatakan dengan pulsa dalam suatu
perioda, untuk mendapatkan tegangan rata-rata yang berbeda.
4. Serial Komunikasi adalah komunikasi yang pengiriman datanya per-bit
secara berurutan dan bergantian

Anda mungkin juga menyukai