Upload
yusuf-fahruroji
View
216
Download
0
Embed Size (px)
DESCRIPTION
Bab 5
Citation preview
Bab 5
Input/Output 5.2 Dimmer
a. Percobaan kali ini akan mengatur terang redupnya lampu LED tanpa menggunakan push
button.
Gambar 5. 1 Rangkaian Sederhana Untuk Dimmer
Program 5. 1 Hasil Dimmer dengan push button
/*
Fade = Lampu meredup secara perlahan-lahan
Pada contoh ini akan di perlihatkan bagaimana untuk
meredupkan LED pada pin 9, 10 dan 11 secara bersamaan.
Syntax yang di gunakan analogWrite() function.
Input : PinDigital Pin 2
Output : PinDigital Pin 9, Pin 10, Pin 11
Resistor : 560 ohm, 10 kohm
LED : 3 buah
PushButton: 1 buah
Modified : 24 Okt 2014
by : Yuwono Marta Dinata
*/
int pushb = 2, led1 = 9, led2 = 10, led3 =11; // inisialisasi pin
yang akan di gunakan
// Menggunakan
variabel sehingga lebih flexibel
int brightness = 0; // Variabel untuk mengatur terang-redupnya led
int fadeAmount = 5; // Varibel untuk penambahan intensitas cahaya
// Inisialisai Program
void setup() {
// Pendeklarasian led1 = pin 9, led2 = 10 dan led3 = 11 sebagai
Output
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
// Pendeklarasian pushb = 2 sebagai Input
pinMode(pushb, INPUT);
//Inisialisasi nilai awal Brightness pada pin 9,10,dan 11
analogWrite(led1, brightness);
analogWrite(led2, brightness);
analogWrite(led3, brightness);
}
// Looping agar program dapat berjalan terus menerus
void loop() {
// membaca inputan dari pin 2
pushb = digitalRead(2);
// Jika pushbutton di tekan maka brightnesnya di tambah
if (pushb == HIGH){
/* Agar terang redup dapat bertambah terus maka brigthnessnya perlu
di tambahkan
dengan konstanta fadeAmount
*/
brightness = brightness + fadeAmount;
delay(20); // waktu tunda agar keliatan perubahannya
analogWrite(led1, brightness);
analogWrite(led2, brightness);
analogWrite(led3, brightness);
/* Mengecek apakah konstanta brightness sudah 0 atau sudah maksimal
255
Jika sudah 0 maka perlu di tambahkan 5
Jika telah 255 maka di kurangi 5
*/
if (brightness == 0 || brightness == 255) {
fadeAmount = -fadeAmount ;
}
// delay untuk melihat effek fade ON atau fade OFFnya
delay(30);
} //end if
else {
analogWrite(led1, brightness);
analogWrite(led2, brightness);
analogWrite(led3, brightness);
}
} // end void loop()