List Program :
int ledrPin = 9; int ledgPin = 10; // LED connected to digital pin 9,10,11 int ledbPin = 11; int ledShow = 13; int faderValue; int fadegValue; int fadebValue; int sw =0; void setup() { pinMode(ledrPin,OUTPUT); pinMode(ledgPin,OUTPUT); pinMode(ledbPin,OUTPUT); pinMode(ledShow,OUTPUT); Serial.begin(9600); faderValue=0; fadegValue=0; fadebValue=0; randomSeed(analogRead(0)); } void loop() { faderValue=random(0,256); fadegValue=random(0,256); fadebValue=random(0,256); if(sw==0){sw=1;digitalWrite(ledShow,HIGH);} else {sw=0;digitalWrite(ledShow,LOW);} analogWrite(ledrPin, faderValue); analogWrite(ledgPin, fadegValue); analogWrite(ledbPin, fadebValue); delay(1000); }
4 comments:
Pak, saya pengen banget belajar micro pake Arduino tapi dana sedikit .. hii... hi... Eh ternyata tambah tertarik setelah membaca blog bapak ini. Mohon sudi kiranya bapak bisa memberikan kepad sy pcb board Arduino S3v3rino yang sudah jadi ini. Saya bersedia deh pak untuk biaya penggantianya pembuatan pcb ini.
Terimakasih ya pak... ditunggu banget kabarnya.
zakaria@fe.unpad.ac.id
Oh ya pak saya udah konfirmasi balik lewat email zakaria@fe.unpad.ac.id. Thx
pa aan, gimana medeklarasikan "if " majemuk yang dikombinasikan dengan "variable" contoh misalkan saya ingin mengedipkan led di pin 8 sebanyak 5 kali, setelah itu led di pin 9 mengedip 5x dan setelah itu kembali ke awal.... saya menulis prog spt ini
void setup() {
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
}
byte val = 0;
byte valb = 0;
void loop() {
val++;
digitalWrite(8, HIGH);
delay(1000);
digitalWrite(8, LOW);
delay(1000);
if(val == 5){
val = 0;
valb++;
digitalWrite(9, HIGH);
delay(1000);
digitalWrite(9, LOW);
delay(1000);
if(valb == 5){
valb = 0;
}
}
}
tapi hasilnya led pin 8 mengedip 5 kali dan sesudah nya led pin 9 mengedip 1x dan kembali ke awal...
trimakasih sebelumnya mohon pencerahan
Halo Pa Hendri,
Bagaimana kalau dengan loop for? jika diijinkan maka prog nya jauh menjadi lebih simpel :
byte val = 0;
void setup() {
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
}
void loop() {
for(val=1;val<=5;val++){
digitalWrite(8, HIGH);
delay(1000);
digitalWrite(8, LOW);
delay(1000);
}
for(val=1;val<=5;val++){
digitalWrite(9, HIGH);
delay(1000);
digitalWrite(9, LOW);
delay(1000);
}
}
Tapi jika ingin tetap menggunakan if dan counter prog nya sbb :
byte val = 0; // val utk counter 5x (0,1,2,3,4)
byte valb = 0; // valb utk switch, jika valb=0 led pin8 kedip, valb=1 led pin 9 kedip
void setup() {
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
}
void loop() {
// kalau valb=0,led pin8 kedip 5x
if(valb==0){
digitalWrite(8, HIGH);
delay(1000);
digitalWrite(8, LOW);
delay(1000);
val++;
// kalau sudah kedip 5x, val di reset jadi 0, valb menjadi 1
if(val == 5){
val = 0;
valb=1;
}
}
// kalau valb=1, led pin9 kedip 5x
if(valb==1){
digitalWrite(9, HIGH);
delay(1000);
digitalWrite(9, LOW);
delay(1000);
val++;
// kalau sudah kedip 5x, val dan valb direset ke 0
if(val == 5){
val = 0;
valb=0;
}
}
}
Demikian pendapat saya,
Thanks
Post a Comment