Skocz do zawartości

Problem z pinami arduino.


polishbeer

Pomocna odpowiedź

@Elvis Zgadza się, ale program powinien przestać je wysyłać w momencie puszczenia guzika - a tak się nie dzieje.

A więc:

Co ciekawe, gdy wyrzuciłem z kodu fotorezystory, zostawiłem tylko potencjometr program działał poprawnie:

//int swiatlo1 = 0;           //zmienna fotorezystora1
//int swiatlo2 = 0;           //zmienna fotorezystora2
int przycisk = 0;           //ilosc nacisnięć przycisku
int potencjometr = 0;       //odczyt z potencjometra

void setup() { 
 Serial.begin(9600);
 pinMode(2, INPUT_PULLUP);
}

void loop() {
 //  swiatlo1 = analogRead(A4);
 //  swiatlo2 = analogRead(A3);
   potencjometr = analogRead(A5);

 if(digitalRead(2) == LOW) {
   delay(150);
   przycisk = przycisk + 1;
   Serial.println("");
  // Serial.print(" Fotorezystor1: ");
  // Serial.print(swiatlo1);
  // Serial.print("\t");
  // Serial.print(" Fotorezystor2: ");
  // Serial.print(swiatlo2);
  // Serial.print("\t");
   Serial.print(" Potencjometr: ");
   Serial.print(potencjometr);
   Serial.print("\t");
   Serial.print(" Wcisniecia guzika: ");
   Serial.print(przycisk);
   delay(10);
     }   
    else {
      delay(50);
   }

}

Gdy zostawiłem oryginalny kod i dodałem pętle while, ograniczającą tylko jedną wiadomość też podziałało.

Podpiąłem diodę, mruga bez problemu, z różnymi delayami.

A co do badania woltomierzem - tu już ciekawiej.

W momencie włączenie monitora - 4,3V

W momencie wciśnięcia przycisku - 0,6V

W momencie gdy przycisk został puszczony, a program spamuje - 3,42 V

Gdy wstawiłem ten kod bez fotorezystorów napięcie było 4,3V przed wciśnięciem i 4,3V po puszczeniu... tylko w układzie był tylko potencjometr. Fotorezystory nawet nie były wpięte. Więc? W czym siedzi problem? Ewentualnie co jeszcze sprawdzić?

while.thumb.PNG.0d982a73b24f30a30056139bf63417d3.PNG

potencjometr.thumb.PNG.11ab8a075149310701de50e54d0b6b58.PNG

Link do komentarza
Share on other sites

Masz może schemat układu który podłączasz? Dziwi mnie trochę ten odczyt:
W momencie wciśnięcia przycisku - 0,6V

Podłączyłeś przełącznik przez diodę?

Nie, nie podłączyłem przez diode, ale... mea culpa, błąd pomiaru. Nie poczekałem. Przy ponownym pomiarze napięcie spadło do 0V.

Schemat połączenia wygląda tak:

[ Dodano: 21-03-2016, 11:44 ]

A z kolei gdy podłączyłem przycisk przez diode tak:

To program nie wykrywał jego naciśnięcia. Owszem, dioda się zapalała (i świeciła dużo mocniej w porównaniu do innych pinów), jednak monitor nic nie wyświetlał.

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Gość
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.