A. TUJUAN PRAKTIKUM
1. Mengetahui apa yang dimaksud pulse with modulation.
2. Mengukur dan menganalisis hasil dari pulse width modulation.
3. Mengetahui pemograman menggunakan input analog dan output pada
ATMEGA 16.
B. DASAR TEORI
Pulse Width Modulation (PWM) secara umum adalah sebuah cara memanipulasi lebar
sinyal yang dinyatakan dengan pulsa dalam satu periode, untuk mendapatkan tegangan
rata-rata yang berbeda. Bebarapa contoh aplikasi PWM adalah pemodulasian data untuk
telekomunikasi, pengontrolan daya atau tegangan yang masuk ke beban, regulator
tegangan, audio effect dan penguatan, serta aplikasi-aplikasi lainnya.
D. LANGKAH KERJA
1. Membuat kode program pada software Arduino.
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
#include <Wire.h>
byte duty_cyclePersen=0;
void setup() {
lcd.init();
lcd.backlight();
pinMode(12, OUTPUT);
pinMode(A0, INPUT);
pinMode(A1, INPUT);
}
void loop() {
// put your main code here, to run repeatedly:
digitalRead(A0)==1?duty_cyclePersen = duty_cyclePersen:
duty_cyclePersen=duty_cyclePersen +10;
digitalRead(A1)==1?duty_cyclePersen = duty_cyclePersen:
duty_cyclePersen=duty_cyclePersen -10;
duty_cyclePersen >100?duty_cyclePersen =100: duty_cyclePersen=
duty_cyclePersen;
byte duty_cycle=map(duty_cyclePersen,0,100,0,255);
analogWrite(15,duty_cycle);
lcd.print("duty_cyclePersen = ");
lcd.print(duty_cyclePersen);
}
1. Duty Cycle 0%
2. Duty Cycle 10%