switch(GAME_MODE) { "hata alıyorum "

sskn

Yeni Üye
12 May 2019
1
0
0
antalye
Cinsiyet
Erkek
switch(GAME_MODE) {


Bu hatayı alıyorum yardımcı olurmusunuz Kodun tamamı kırmızı renkli olan yer

Kod:
#include "SevSeg.h"
SevSeg sevseg;

int role_pin = A1;
int button_pin = A0;

int seconds = 0;
int minute = 3;

boolean siren = false;
boolean button_enable = true;
int button_interval = 0;

static unsigned long timer = millis();

typedef enum {
  READY,
  START,
  GAME_OVER,  
  END,
  RESET
} GAME_MODE_ENUM;

GAME_MODE_ENUM GAME_MODE = 0;

boolean buzzerStatus = false;
boolean buzzerEnable = false;
int buzzerPin = 2;
int notaSayisi = 8;
int C = 262;
int D = 294;
int E = 330;
int F = 349;
int G = 392;
int A = 440;
int B = 494;
int C_ = 523;
int notalar[] = {C, D, E, F, G, A, B, C_};

void setup() { 
  Serial.begin(9600);
  pinMode(role_pin, OUTPUT);
  pinMode(button_pin, INPUT);
  initScreen();
}

void initScreen(){
  byte numDigits = 4;
  byte digitPins[] = {A3, 3, 4, 5};
  byte segmentPins[] = {6, 7, 8, 9, 10, 11, 12, 13};
  bool resistorsOnSegments = false; // 'false' means resistors are on digit pins
  byte hardwareConfig = COMMON_CATHODE; //COMMON_ANODE; // See README.md for options
  bool updateWithDelays = false; // Default. Recommended
  bool leadingZeros = false; // Use 'true' if you'd like to keep the leading zeros
  sevseg.begin(hardwareConfig, numDigits, digitPins, segmentPins, resistorsOnSegments, updateWithDelays, leadingZeros);
  sevseg.setBrightness(90);
}

void loop() {

  switch(GAME_MODE){
    case READY:
      sevseg.setNumber(300,2);
      sevseg.refreshDisplay(); // Must run repeatedly
      if(button_enable){
        if(analogRead(button_pin) == 1023){
          button_enable = false;
          siren = true;
          digitalWrite(role_pin, HIGH);
          GAME_MODE = START;
          timer = millis();
        }
      }
      break;
    case START:

      if(button_enable){
        if(analogRead(button_pin) == 1023){
          button_enable = false;
          siren = false;
          digitalWrite(role_pin, LOW);
          GAME_MODE = END;
        }   
      }
      break;
    case GAME_OVER:
      siren = false;
      buzzerStatus = false;
      buzzerEnable = false;
      noTone(buzzerPin);
      digitalWrite(role_pin, LOW);
      sevseg.setNumber(000,2);
      sevseg.refreshDisplay(); // Must run repeatedly
      if(button_enable){
          button_enable = false;
          GAME_MODE = RESET;
      }
      break;
    case END:
    

          GAME_MODE = RESET;
        }   
      }



  switch(GAME_MODE) {


    case RESET:
      sevseg.setNumber(000,2);
      sevseg.refreshDisplay(); // Must run repeatedly
      seconds = 0;
      minute = 3;
      if(button_enable){
          GAME_MODE = READY;}
      }
    default:
      break;


  if(buzzerEnable){
    timeIntervalBuzzer(seconds);
  }

  timeInterval();
   
}

void timeIntervalBuzzer(int value){

  static unsigned long timerBuzzer = millis();
  if (millis() >= timerBuzzer) {
    timerBuzzer += (100 * (value / 2));
    if(!buzzerStatus){
      tone(buzzerPin, A);
      buzzerStatus = true;
    }else{
      noTone(buzzerPin);
      buzzerStatus = false;
    } 
  }
 
}

void timeInterval(){
  static unsigned long timerr = millis();
  if (millis() >= timerr) {
    Serial.println(GAME_MODE);
    timerr += 1000;
    if(!button_enable){
        button_interval++;
        if(button_interval >= 5){
          button_enable = true;
          button_interval = 0;
        }
    }   
  }
}

void timeStart (){

  if (millis() >= timer) {
   
    timer += 1000;
    String titext = String(0000);
   
    if(seconds == 0){
      minute -= 1;
      seconds = 59;
    }else{
      seconds--;
    }
   
    if(seconds<10){
      titext = String(minute) + String(0) + String(seconds);
    }else{
      titext = String(minute) + String(seconds);
    }

    if(minute == 0 && seconds==10){
      buzzerEnable = true;
    }

    if(siren){
        // Siren kesme ve açma
    }
    
    if(minute == 0 && seconds == 0){
      GAME_MODE = GAME_OVER;
    }else{
      sevseg.setNumber(titext.toInt(),2);
    }
   
  }
 
  sevseg.refreshDisplay(); // Must run repeatedly
 
}
 

Robotikforum.net Nedir?

  • Robotikforum.net 2020 yılında kurulup yayın hayatına başlayan ve Türkiye’de robotik kodlama alanının gelişimine katkıda bulunmak için bu alan ile ilgilenen bireylerin bir birleri ile yardımlaşmaları ve fikir danışmalarını sağlayarak daha iyi öğrenmek için her bir bireyin bilgisini ve tecrübesini alarak kendini geliştirebileceği ve sorularına cevap bulabileceği bir platform olarak kurulmuştur.

Bilgilendirme!!!

İçerik sağlayıcı paylaşım sitelerinden biri olan www.robotikforum.net Adresimizde T.C.K 20.ci Madde ve 5651 Sayılı Kanun'un 4.cü maddesinin (2).ci fıkrasına göre TÜM ÜYELERİMİZ yaptıkları paylaşımlardan sorumludur.

Sayfamızı beğendin mi?

X Merhaba ziyaretçi Robotikforum.net adresine hoşgeldin. Robotikforum.net
adresi gelişen teknoloji ile günden güne yaygınlaşan robotik teknolojileri
hakkında yardımlaşabileceğin ve tartışabileceğin bir platformdur.
Aramıza katılmaya ne dersin?
Kayıt Ol