Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Servo.h>
- //VARIABLES--------------
- int lsens = 140;
- int pulseR3 = 1340;
- int pulseR2 = 1390;
- int pulseR1 = 1440;
- int pulseOff = 1500;
- int pulseL1 = 1550;
- int pulseL2 = 1600;
- int pulseL3= 1650;
- int greens= 0;
- int reds= 0;
- int random0 = 0;
- int random1 = 0;
- int random2 = 0;
- int random3 = 0;
- int random4 = 0;
- int gameSpeed = 3000;
- int gameTime = 0;
- int Score = 0;
- int gStreak = 0;
- //------------------------
- //millis------------------
- long bPreviousMillis = 0;
- unsigned long bCurrentMillis = 0;
- long downtime = 10000;
- //LDR PINS----------------
- int sensorPin0 = A0;
- int sensorValue0 = 0;
- int sensorPin1 = A1;
- int sensorValue1 = 0;
- int sensorPin2 = A2;
- int sensorValue2 = 0;
- int sensorPin3 = A3;
- int sensorValue3 = 0;
- int sensorPin4 = A4;
- int sensorValue4 = 0;
- //-----------------------
- //LED & SERVO PINS-------
- int servopin = 2;
- int ledpin0R = 3;
- int ledpin0G = 4;
- int ledpin1R = 5;
- int ledpin1G = 6;
- int ledpin2R = 7;
- int ledpin2G = 8;
- int ledpin3R = 9;
- int ledpin3G = 10;
- int ledpin4R = 11;
- int ledpin4G = 12;
- //-----------------------
- //LED RANDOMIZER------------------------------
- void LedRandomizer(){
- random0 = random(1, 4);
- if(random0 == 1) {
- digitalWrite(ledpin0R, LOW);
- digitalWrite(ledpin0G, HIGH);
- greens+=1;
- }
- if(random0 == 2) {
- digitalWrite(ledpin0R, HIGH);
- digitalWrite(ledpin0G, LOW);
- reds+=1;
- }
- if(random0 == 3){
- digitalWrite(ledpin0R, LOW);
- digitalWrite(ledpin0G, LOW);
- }
- random1 = random(1, 4);
- if (random1 == 1) {
- digitalWrite(ledpin1R, LOW);
- digitalWrite(ledpin1G, HIGH);
- greens+=1;
- }
- if(random1 == 2) {
- digitalWrite(ledpin1R, HIGH);
- digitalWrite(ledpin1G, LOW);
- reds+=1;
- }
- if(random1 == 3){
- digitalWrite(ledpin1R, LOW);
- digitalWrite(ledpin1G, LOW);
- }
- random2 = random(1, 4);
- if (random2 == 1) {
- digitalWrite(ledpin2R, LOW);
- digitalWrite(ledpin2G, HIGH);
- greens+=1;
- }
- if(random2 == 2) {
- digitalWrite(ledpin2R, HIGH);
- digitalWrite(ledpin2G, LOW);
- reds+=1;
- }
- if(random2 == 3){
- digitalWrite(ledpin2R, LOW);
- digitalWrite(ledpin2G, LOW);
- }
- random3 = random(1, 4);
- if (random3 == 1) {
- digitalWrite(ledpin3R, LOW);
- digitalWrite(ledpin3G, HIGH);
- greens+=1;
- }
- if(random3 == 2) {
- digitalWrite(ledpin3R, HIGH);
- digitalWrite(ledpin3G, LOW);
- reds+=1;
- }
- if(random3 == 3){
- digitalWrite(ledpin3R, LOW);
- digitalWrite(ledpin3G, LOW);
- }
- random4 = random(1, 4);
- if (greens == 0) {
- digitalWrite(ledpin4R,LOW);
- digitalWrite(ledpin4G,HIGH);
- greens+=1;
- }
- else { if (random4 == 1) {
- digitalWrite(ledpin4R, LOW);
- digitalWrite(ledpin4G, HIGH);
- greens+=1;
- }
- if(random4 == 2) {
- digitalWrite(ledpin4R, HIGH);
- digitalWrite(ledpin4G, LOW);
- reds+=1;
- }
- if(random4 == 3){
- digitalWrite(ledpin4R, LOW);
- digitalWrite(ledpin4G, LOW);
- }
- greens=0;
- reds=0;
- }
- }
- //--------------------------------------------
- void AllOff() {
- digitalWrite(ledpin0R, LOW);
- digitalWrite(ledpin0G, LOW);
- digitalWrite(ledpin1R, LOW);
- digitalWrite(ledpin1G, LOW);
- digitalWrite(ledpin2R, LOW);
- digitalWrite(ledpin2G, LOW);
- digitalWrite(ledpin3R, LOW);
- digitalWrite(ledpin3G, LOW);
- digitalWrite(ledpin4R, LOW);
- digitalWrite(ledpin4G, LOW);
- }
- void boardState(){
- bCurrentMillis = millis();
- if(bCurrentMillis - bPreviousMillis > gameSpeed){
- bPreviousMillis = bCurrentMillis;
- LedRandomizer();
- }
- if (sensorValue0 <= lsens && digitalRead(ledpin0G)== HIGH) {
- goodHit();
- bCurrentMillis = 0;
- }
- }
- void goodHit() {
- Score+=1;
- gStreak+=1;
- AllOff();
- }
- void setup() {
- // put your setup code here, to run once:
- Serial.begin(9600);
- pinMode(ledpin0G, OUTPUT);
- pinMode(ledpin0R, OUTPUT);
- pinMode(ledpin1G, OUTPUT);
- pinMode(ledpin1R, OUTPUT);
- pinMode(ledpin2G, OUTPUT);
- pinMode(ledpin2R, OUTPUT);
- pinMode(ledpin3G, OUTPUT);
- pinMode(ledpin3R, OUTPUT);
- pinMode(ledpin4G, OUTPUT);
- pinMode(ledpin4R, OUTPUT);
- pinMode(servopin, OUTPUT);
- }
- void loop() {
- //--------------------------------------------
- //LDR READ------------------------------------
- sensorValue0 = analogRead(sensorPin0);
- sensorValue1 = analogRead(sensorPin1);
- sensorValue2 = analogRead(sensorPin2);
- sensorValue3 = analogRead(sensorPin3);
- sensorValue4 = analogRead(sensorPin4);
- //--------------------------------------------
- //BOARD STATE---------------------------------
- boardState();
- //HIT REGISTER--------------------------------
- Serial.println(Score);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement