Skocz do zawartości

Daggett

Użytkownicy
  • Zawartość

    2
  • Rejestracja

  • Ostatnio

Posty napisane przez Daggett


  1. Przy okazji możecie sprawdzić moje pozostałe zadania. Chyba jedyny problem jaki z nimi mam to z 4.6 gdyż dioda najbardziej po lewej czyli na pinie 12 nie chce mi się zaświecić. Nie wiem czy to problem z programem czy po prostu nie osiągnąłem takiej różnicy na dzielnikach, żeby się zaświeciła. Z góry bardzo dziękuję

    4.4

    int odczytanaWartosc = 0;
    int naszLimit = 0;
    float napiecie = 0;
    
    void setup() {
     pinMode(8, OUTPUT);
     Serial.begin(9600); 
    }
    
    void loop() {
     odczytanaWartosc = analogRead(A5);
     naszLimit = analogRead(A4);
     napiecie = odczytanaWartosc * (5.0/1023.0);
     if (odczytanaWartosc < naszLimit) {
        digitalWrite(8, HIGH);
        Serial.println(napiecie);
        while (odczytanaWartosc < naszLimit){
         odczytanaWartosc = analogRead(A5);
         naszLimit = analogRead(A4);
         delay(50);
         }
     } else {
        digitalWrite(8, LOW);      
     }
    
     delay(50);
    }

    4.5

    #define zielona 8
    #define zolta 9
    #define zolta2 10
    #define czerwona 11
    #define przycisk 7
    String odebraneDane = "";
    int naszaLiczba = 0;
    boolean reset = true;
    int proby = 0;
    int liczba = 0; 
    
    
    void setup () {
     Serial.begin(9600);
    
     pinMode(zielona,OUTPUT);
     pinMode(zolta,OUTPUT);
     pinMode(zolta2,OUTPUT);
     pinMode(czerwona,OUTPUT);
     pinMode(7,INPUT_PULLUP);
    
    }
    void loop () {
     if(reset == true){
       reset = !reset;
       proby = 0;
       Serial.println("Przekręć potencjometr i wciśnij przycisk");
       liczba = analogRead(A5);
       while(digitalRead(przycisk) == HIGH) {}
       digitalWrite(zielona,LOW);
       digitalWrite(zolta,LOW);
       digitalWrite(zolta2,LOW);
       digitalWrite(czerwona,LOW);
       Serial.println("Podaj liczbę:");
     }
     if(Serial.available()>0){
       odebraneDane = Serial.readStringUntil('\n');
       naszaLiczba = odebraneDane.toInt();
       if(naszaLiczba>liczba-50 and naszaLiczba<liczba+50){
         digitalWrite(zielona,HIGH);
         digitalWrite(zolta,LOW);
         digitalWrite(zolta2,LOW);
         reset = !reset;
       }
       if(naszaLiczba<liczba-50 or naszaLiczba>liczba+50){
         proby = proby+1;
         if(proby==1)
           digitalWrite(zolta,HIGH);
         if(proby==2)
           digitalWrite(zolta2,HIGH);
         if(proby==3){
           digitalWrite(czerwona,HIGH);
           reset = !reset;
         }
       }
     }
    }

    4.6

    void setup(){
     Serial.begin(9600);
     pinMode(8,OUTPUT);
     pinMode(9,OUTPUT);
     pinMode(10,OUTPUT);
     pinMode(11,OUTPUT);
     pinMode(12,OUTPUT);
    }
    void loop(){
     czujnikLewy = analogRead(A3);
     czujnikPrawy = analogRead(A5);
     roznica = czujnikLewy - czujnikPrawy;
     naszaSkala = map(roznica,-1023,1023,1,5);
     digitalWrite(8,LOW);
     digitalWrite(9,LOW);
     digitalWrite(10,LOW);
     digitalWrite(11,LOW);
     digitalWrite(12,LOW);
     if(naszaSkala == 1) //1 oznacza ze duzo wiecej swiatla po prawej stronie
       digitalWrite(8,HIGH);
     if(naszaSkala == 2)
       digitalWrite(9,HIGH);
     if(naszaSkala == 3)
       digitalWrite(10,HIGH); // 3 oznacza ze mniej wiecej po rowno swiatla
     if(naszaSkala == 4)
       digitalWrite(11,HIGH);
     if(naszaSkala == 5) //5 oznacza ze duzo wiecej swiatla po lewej stronie
       digitalWrite(12,HIGH);
     delay(50); 
    }
×
×
  • Utwórz nowe...