0% menganggap dokumen ini bermanfaat (0 suara)
36 tayangan9 halaman

Panduan Blinking LED dengan Arduino

Dokumen ini menjelaskan cara menggunakan Arduino untuk membuat LED berkedip dan mengubah durasi serta kecerahan LED. Selain itu, terdapat penjelasan tentang penggunaan beberapa LED dengan pengaturan yang lebih kompleks menggunakan loop dan array. Contoh kode pemrograman disertakan untuk menghidupkan LED satu per satu dan mengatur komponen yang diperlukan.

Diunggah oleh

adi santoso
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
36 tayangan9 halaman

Panduan Blinking LED dengan Arduino

Dokumen ini menjelaskan cara menggunakan Arduino untuk membuat LED berkedip dan mengubah durasi serta kecerahan LED. Selain itu, terdapat penjelasan tentang penggunaan beberapa LED dengan pengaturan yang lebih kompleks menggunakan loop dan array. Contoh kode pemrograman disertakan untuk menghidupkan LED satu per satu dan mengatur komponen yang diperlukan.

Diunggah oleh

adi santoso
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd

Project LED

Setelah mengetahui dasar-dasar tentang breadboard, kita coba menggunakannya dengan


Arduino. Rangkaian dasar yang biasa dipakai untuk belajar Arduino adalah Blinking LED

Gambar 16. Rangkaian Blinking LED

Gambar 17. Led dan Resistor


Script

Di bawah ini adalah kode pemrograman yang digunakan untuk blinking LED. Tidak perlu
mengetiknya karena sudah tersedia pada software Arduino. Klik menu File > Examples
> [Link] > Blink.
/*
Blink Turns on an LED on for one second, then off for one second, repeatedly.
This example code is in the public domain.
*/

void setup() {
// initialize the digital pin as an output.
// Pin 13 has an LED connected on most Arduino boards:
pinMode(13, OUTPUT);
}

void loop() {
digitalWrite(13, HIGH); // set the LED on delay(1000); // wait for a
second digitalWrite(13, LOW); // set the LED off delay(1000); // wait
for a second
}

• Membuat Perubahan
• Bila tidak terdapat kesalahan, maka rangkaian anda akan berupa LED yang
berkelap-kelip dengan durasi hidup 1 detik dan mati 1 detik yang dilakukan
berulang-ulang.
Bagaimana kalau kita melakukan beberapa
perubahan pada program agar kita dapat lebih memahami cara kerjanya.
• Beberapa perubahan yang bisa kita lakukan, antara lain:
• Mengganti pin
• Pada program diatas, LED kita terhubung pada pin
13, tetapi kita bisa menggunakan pin Arduino yang lain. Untuk menggantinya, ambil
kabel jumper yang terpasang pada pin 13 dan pindahkan pada pin lain sesuai yang
anda inginkan (dari 0-13) (anda juga bisa
menggunakan pin analog 0-5, pin 0 analog adalah pin
14, dst).
• Kemudian rubah baris kode program, ganti angka 13 dengan pin baru yang sudah
dipilih.
• Lalu upload sketch-nya (ctrl+U)Merubah durasi kelap-kelip
Kalau anda kurang puas dengan kelap-kelip berdurasi
1 detik, berikut caranya:

Rubah baris kode program:


digitalWrite(13, HIGH);
delay(durasi hidup); // (detik * 1000)
digitalWrite(13, LOW);
delay(durasi mati); // (detik * 1000)

Merubah cerahnya LED (brightness)


• Selain pengaturan digital yang hidup atau mati, Arduino dapat juga
melakukan pengaturan beberapa
pin digital seperti layaknya analog yang akan kita gunakan untuk mengatur
cerahnya LED. Untuk mencobanya, lakukan langkah berikut ini:
• Rubah pin LED menjadi pin 9 (jangan lupa rubah juga kabel jumpernya).
Rubah baris kode program,
ganti 13 menjadi angka 9.
• Rubah kode dalam { } pada bagian loop() dengan kode berikut:
• void loop() {
analogWrite(9,angkabaru);
}
• angka baru = angka antara 0 – 255. 0 = mati, 255 = hidup, angka diantaranya
= perbedaan tingkat kecerahan

Multiple LEDs / running led


• Sejalan dengan pengaturan LED kita akan mencoba
untuk membuat kode pemrograman lebih sederhana dengan beberapa metode.

• for () loops – digunakan ketika kita ingin menjalankan sejumlah baris


kode berulang-ulang.

• arrays[] – digunakan untuk mengatur penggunaan variabel dengan lebih mudah


(array = grup dari variabel).

• Rangkaian
Komponen yang diperlukan:
8 buah LED
8 buah resistor 330 ohm
Kabel jumper
Gambar 17. Skema Running Led

Menghidupkan LED satupersatu dari PIN 2 ke 9 dan mematikan dari PIN 9 ke 2

//LED Pin Variables


int ledPins[] = {2,3,4,5,6,7,8,9}; //An array to hold the pin each LED is connected
to //i.e. LED #0 is connected to pin 2, LED #1, 3 and so on //to address an array use
ledPins[0] this would equal 2 and ledPins[7] would equal 9

/*
* setup() - this function runs once when you turn your Arduino on
* We the three control pins to outputs
*/
void setup()
{
//Set each pin connected to an LED to output mode
(pulling high (on) or low (off)
for(int i = 0; i < 8; i++){ //this is a loop and will repeat eight times
pinMode(ledPins[i],OUTPUT); //we use this to set each LED pin to output
} //the code this replaces is below

/* (commented code will not run)


* these are the lines replaced by the for loop above they do exactly the
* same thing the one above just uses less typing
pinMode(ledPins[0],OUTPUT); pinMode(ledPins[1],OUTPUT);
pinMode(ledPins[2],OUTPUT); pinMode(ledPins[3],OUTPUT);
pinMode(ledPins[4],OUTPUT); pinMode(ledPins[5],OUTPUT);
pinMode(ledPins[6],OUTPUT); pinMode(ledPins[7],OUTPUT);
(end of commented code)*/
}

* loop() - this function will start after setup finishes and then repeat
* we call a function called oneAfterAnother(). if you would like a different
behaviour
* uncomment (delete the two slashes) one of the other lines
*/
void loop() // run over and over again
{
oneAfterAnotherNoLoop(); //this will turn on each
LED one by one then turn each off
}
/*
* oneAfterAnotherNoLoop() - Will light one LED
then delay for delayTime then light
* the next LED until all LEDs are on it will then turn them off one after another
*
* this does it without using a loop which makes for a lot of typing.
* oneOnAtATimeLoop() does exactly the same thing with less typing
*/
void oneAfterAnotherNoLoop(){
int delayTime = 100; //the time (in milliseconds) to pause between LEDs
//make smaller for quicker switching and larger for slower
digitalWrite(ledPins[0], HIGH); //Turns on LED #0 (connected to pin 2 )

delay(delayTime); //waits delayTime


milliseconds
digitalWrite(ledPins[1], HIGH); //Turns on LED #1
(connected to pin 3 )
delay(delayTime); //waits delayTime
milliseconds
digitalWrite(ledPins[2], HIGH); //Turns on LED #2
(connected to pin 4 )
delay(delayTime); //waits delayTime
milliseconds
digitalWrite(ledPins[3], HIGH); //Turns on LED #3
(connected to pin 5 )
delay(delayTime); //waits delayTime
milliseconds
digitalWrite(ledPins[4], HIGH); //Turns on LED #4
(connected to pin 6 )
delay(delayTime); //waits delayTime milliseconds
digitalWrite(ledPins[5], HIGH); //Turns on LED #5 (connected to pin 7 )
delay(delayTime); //waits delayTime milliseconds
digitalWrite(ledPins[6], HIGH); //Turns on LED #6 (connected to pin 8 )
delay(delayTime); //waits delayTime milliseconds
digitalWrite(ledPins[7], HIGH); //Turns on LED #7 (connected to pin 9 )
delay(delayTime); //waits delayTime milliseconds

//Turns Each LED Off


digitalWrite(ledPins[7], LOW); //Turns off LED #7 (connected to pin 9 )
delay(delayTime); //waits delayTime milliseconds
digitalWrite(ledPins[6], LOW); //Turns off LED #6 (connected to pin 8 )
delay(delayTime); //waits delayTime milliseconds
digitalWrite(ledPins[5], LOW); //Turns off LED #5 (connected to pin 7 )
delay(delayTime); //waits delayTime milliseconds
digitalWrite(ledPins[4], LOW); //Turns off LED #4 (connected to pin 6 )
delay(delayTime); //waits delayTime milliseconds
digitalWrite(ledPins[3], LOW); //Turns off LED #3 (connected to pin 5 )
delay(delayTime); //waits delayTime milliseconds
digitalWrite(ledPins[2], LOW); //Turns off LED #2
(connected to pin 4 )
delay(delayTime); //waits delayTime
milliseconds
digitalWrite(ledPins[1], LOW); //Turns off LED #1
(connected to pin 3 )
delay(delayTime); //waits delayTime
milliseconds
digitalWrite(ledPins[0], LOW); //Turns off LED #0
(connected to pin 2 )
delay(delayTime); //waits delayTime
milliseconds
}

F. Evaluasi
1. Bagaiamana cara Membuat led berjalan berhenti sejenak ?
2. Apa yang harus di periksa ketika proses upload ke board gagal ?

Anda mungkin juga menyukai