lihatlah gambar di atas dan rangkailah arduino yang saudara miliki seperti di atas.. Yang kita butuhkan pada kesempatn kali ini adalah :
- Mikrokontroller Arduino Uno
- Led sebanyak 6 buah.
- Breadboard dan kabel jamper secukupnya.
Jika peralatannya belum tersedia monggo beli dulu... hihihihi
Percobaan Pertama
Listing Led Berjalan menggunakan While do
--------------------------------------------------------------------
void setup() {
pinMode (4,OUTPUT); pinMode (7,OUTPUT);
pinMode (5,OUTPUT); pinMode (8,OUTPUT);
pinMode (6,OUTPUT); pinMode (9,OUTPUT);
}
void loop() {
do
{
digitalWrite (x,y);
x=x+1;
delay(100);
} while (x <=9 );
if (x>9) {
x=4;
if (y==1) y=0;
else y=1;
}
}
-------------------------------------------------------------------
Coba perhatikan hasil percobaan di atas. Program di atas kakang Modifikasi dan hasilnya seperti di bawah ini . Ayo praktekan dan perhatikan hasilnya. coba simpulkan apa perbedaannya.
-------------------------------------------------------------------
int x=4;
void setup() {
pinMode (4,OUTPUT); pinMode (7,OUTPUT);
pinMode (5,OUTPUT); pinMode (8,OUTPUT);
pinMode (6,OUTPUT); pinMode (9,OUTPUT);
}
void loop() {
do { digitalWrite (x,1);
delay(70);
digitalWrite (x,0);
x=x+1;
delay(70);
} while (x <=9 );
if (x>9) x=4;
}
--------------------------------------------------------------------
Nah coba sekarang program di bawah ini dan perhatikanlah perbedaannya.. Seruu kan .. dengan rangkaian elektronik yang sama tetapi hasilnya berbeda tergantung kita mengatur programnya.
--------------------------------------------------------------------
int x=4;
boolean y=false;
void setup() {
pinMode (4,OUTPUT); pinMode (7,OUTPUT);
pinMode (5,OUTPUT); pinMode (8,OUTPUT);
pinMode (6,OUTPUT); pinMode (9,OUTPUT);
}
void loop() {
if (y==false) {
do { digitalWrite (x,1);
delay(70);
digitalWrite (x,0);
x=x+1;
delay(70);
} while (x <=9 );
if (x=9) { y=true;}
}
if (y==true) {
do { x=x-1;
digitalWrite (x,1);
delay(70);
digitalWrite (x,0);
delay(70);
} while (x >4 );
if (x=4) { y=false;}
} }
--------------------------------------------------------------------
Percoaan Kedua
Listing Led Berjalan menggunakan for
--------------------------------------------------------------------
int x; int y=1;
void setup() {
pinMode (4,OUTPUT); pinMode (7,OUTPUT);
pinMode (5,OUTPUT); pinMode (8,OUTPUT);
pinMode (6,OUTPUT); pinMode (9,OUTPUT);
}
void loop() {
for ( x=4;x<=9;x=x+1){
digitalWrite (x,y);
delay(100);
}
if (x>9) {
x=4;
if (y==1) y=0;
else y=1;
}
}
--------------------------------------------------------------------
Listing Led Berjalan menggunakan stetment if
--------------------------------------------------------------------
int x=4; int y=1;
void setup() {
pinMode (4,OUTPUT); pinMode (7,OUTPUT);
pinMode (5,OUTPUT); pinMode (8,OUTPUT);
pinMode (6,OUTPUT); pinMode (9,OUTPUT);
}
void loop() {
delay(100);
digitalWrite (x,y);
x=x+1;
if (x>9) {
x=4;
if (y==1) y=0;
else y=1;
} }
--------------------------------------------------------------------
int x=4; int y=1;
void setup() {
pinMode (4,OUTPUT); pinMode (7,OUTPUT);
pinMode (5,OUTPUT); pinMode (8,OUTPUT);
pinMode (6,OUTPUT); pinMode (9,OUTPUT);
}
void loop() {
delay(100);
digitalWrite (x,y);
x=x+1;
if (x>9) {
x=4;
if (y==1) y=0;
else y=1;
} }
--------------------------------------------------------------------
latihan di atas walaupun programnya berbeda namun hasil prakteknya sama yaitu led berjalan. Nah sekarang kita akan menambahkan dua buah saklar digital. satu saklar akan mempercepat kecepatan led berjalan dan satu lagi untuk mengurangi kecepatan. yang di atur adalah delaynya tentunya
--------------------------------------------------------------------
int x; int y=1; int z =40;
void setup() {
pinMode (4,OUTPUT); pinMode (7,OUTPUT);
pinMode (5,OUTPUT); pinMode (8,OUTPUT);
pinMode (6,OUTPUT); pinMode (9,OUTPUT);
pinMode (2,INPUT); pinMode (3,INPUT);
}
void loop() {
for ( x=4;x<=9;x=x+1){
digitalWrite (x,y);
delay(z);
}
if (x>9) {
x=4;
if (y==1) y=0;
else y=1;
}
if (digitalRead(2)==HIGH) {z=z+20; delay(50); }
if (digitalRead(3)==HIGH) {z=z-20; delay (50);
if ( z< 0) z=0; }
}
Latihan Lanjutan..
Nah sekarang kita akan belajar yang sedikit unik yaitu led berjalan tetapi harus diaktipkan dahulu dengan cara menekan tombol selama kurang lebih hampir 2 detik. dan bila tombolnya ditekan lagi maka lampu berjalannya akan mati semua.. Waaaah bikin berabe yaaaaa.... Males aach praktekannya juga.., hahahaha
int x; int y=1; int z =60;
int a; int b=2;
boolean kondisi= false;
void setup() {
pinMode (4,OUTPUT); pinMode (7,OUTPUT);
pinMode (5,OUTPUT); pinMode (8,OUTPUT);
pinMode (6,OUTPUT); pinMode (9,OUTPUT);
pinMode (3,INPUT);
}
void loop() {
if (b==2){
for ( x=4;x<=9;x=x+1){ digitalWrite (x,LOW); }
if (digitalRead(3)==HIGH) {
a=a+1; delay (50);
if (a==30) { b=1; a=0; }
}}
if (b==1 ){
if (digitalRead(3)==LOW) kondisi=true;
if (digitalRead(3) ==HIGH && kondisi ==true ){
b=2; kondisi=false; }
for ( x=4;x<=9;x=x+1){
digitalWrite (x,y);
delay(z); }
if (x>9) { x=4;
if (y==1) y=0;
else y=1;
} }
}