OK,
spróbowałem i zrobiłem takie coś - znaną już kostkę do gry z drobną modyfikacją.
I znów cuda - nie muszę wciskać przycisku aby kostka działała, wystarczy dotknąć kabelek i działa. Baa powiem więcej wystarczy usiąść przy biurku i działa.
A żeby nie było, że to przez luźny kabelek, to dotykając przewód kombinerkami nic się nie dzieje...
Tu filmik: http://w49.wrzuta.pl/film/6wY43g0p9VL/video0006
Tu zdjęcia układu:
http://w49.wrzuta.pl/obraz/5oVUKNIIaG5/imgp6001
http://w49.wrzuta.pl/obraz/6nG4GvyFLVn/imgp6002
http://w49.wrzuta.pl/obraz/4FpzCxKcgHf/imgp6003
A tu cały kod:
int pinLeds1 = 10;
int pinLeds2 = 9;
int pinLeds3 = 8;
int pinLed4 = 7;
int buttonPin = 6;
int buttonState;
int ran;
int time = 2000;
void setup ()
{
pinMode (pinLeds1, OUTPUT);
pinMode (pinLeds2, OUTPUT);
pinMode (pinLeds3, OUTPUT);
pinMode (pinLed4, OUTPUT);
pinMode (buttonPin, INPUT);
randomSeed(analogRead(0));
}
void loop()
{
buttonState = digitalRead(buttonPin);
if (buttonState == HIGH){
digitalWrite (pinLeds1,HIGH);
delay (100);
digitalWrite (pinLeds2,HIGH);
delay (100);
digitalWrite (pinLeds3,HIGH);
delay (100);
digitalWrite (pinLed4,HIGH);
delay (100);
digitalWrite (pinLeds1,LOW);
delay (100);
digitalWrite (pinLeds2,LOW);
delay (100);
digitalWrite (pinLeds3,LOW);
delay (100);
digitalWrite (pinLed4,LOW);
delay (100);
ran = random(1, 7);
if (ran == 1){
digitalWrite (pinLed4, HIGH);
delay (time);
}
if (ran == 2){
digitalWrite (pinLeds1, HIGH);
delay (time);
}
if (ran == 3){
digitalWrite (pinLeds3, HIGH);
digitalWrite (pinLed4, HIGH);
delay (time);
}
if (ran == 4){
digitalWrite (pinLeds1, HIGH);
digitalWrite (pinLeds3, HIGH);
delay (time);
}
if (ran == 5){
digitalWrite (pinLeds1, HIGH);
digitalWrite (pinLeds3, HIGH);
digitalWrite (pinLed4, HIGH);
delay (time);
}
if (ran == 6){
digitalWrite (pinLeds1, HIGH);
digitalWrite (pinLeds2, HIGH);
digitalWrite (pinLeds3, HIGH);
delay (time);
}
}
digitalWrite (pinLeds1, LOW);
digitalWrite (pinLeds2, LOW);
digitalWrite (pinLeds3, LOW);
digitalWrite (pinLed4, LOW);
}
Jakieś pomysły?