logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak połączyć obwód 3.3V z GPIO2 w ESP01 do detekcji stanu?

Vexator 03 Sty 2024 13:59 2325 11
REKLAMA
  • #1 20889485
    Vexator
    Poziom 10  
    Posty: 176
    Ocena: 36
    Hej,
    w ESP01 mam sprawdzanie stanu na GPIO2. Gdy podłączę GND, to pojawia się 1, gdy odłączę, pojawia się 0.
    Mam do tego obwód (wspólny VCC i GND z tym od ESP) z fizycznym przełącznikiem i LEDem.
    Chciałbym sprawdzać czy ten dodatkowy obwód jest zamknięty, ale na nim jest 3.3v, a nie GND.

    Jak jedno z drugim połączyć? Jakiś tranzystor pomiędzy GND i GPIO2, z środkową nóżką do mojego obwodu? Tylko jaki? Jestem kompletnie zielony w tych kwestiach :/
  • REKLAMA
  • #2 20889506
    jarekgol
    Poziom 40  
    Posty: 5164
    Pomógł: 644
    Ocena: 1144
    Vexator napisał:
    Gdy podłączę GND, to pojawia się 1, gdy odłączę, pojawia się 0.

    To jakoś na odwrót? I "się pojawia" to znaczy gdzie się pojawia, gdzie i jak to widzisz?

    Normalnie jak chcesz podłączyć psztyczek do kontrolera, to łączysz GPIO.n do psztyczka, psztyczek do masy i włączasz pull-up na porcie, lub dajesz zewnętrzny rezystor do + i GPIO.n
    Można też styki od + do portu, jeśli kontroler obsługuję pull-down lub dodać opornik do masy.
  • REKLAMA
  • #3 20889550
    Vexator
    Poziom 10  
    Posty: 176
    Ocena: 36
    jarekgol napisał:
    Vexator napisał:
    Gdy podłączę GND, to pojawia się 1, gdy odłączę, pojawia się 0.

    To jakoś na odwrót? I "się pojawia" to znaczy gdzie się pojawia, gdzie i jak to widzisz?
    w oprogramowaniu
    jarekgol napisał:
    Normalnie jak chcesz podłączyć psztyczek do kontrolera, to łączysz GPIO.n do psztyczka, psztyczek do masy i włączasz pull-up na porcie
    i to by pięknie działało z GND, a ja potrzebuję z VCC
    jarekgol napisał:
    , lub dajesz zewnętrzny rezystor do + i GPIO.n
    Można też styki od + do portu, jeśli kontroler obsługuję pull-down lub dodać opornik do masy.

    pull-down nie zadziała. Jak to inaczej mogę to ogarnąć?
    mam z grubsza coś takiego:
    Schemat z przyciskiem, diodą LED i modułem elektronicznym z oznaczeniem VCC i GND.
  • #4 20889782
    Konto nie istnieje
    Poziom 1  
  • #5 20889793
    jarekgol
    Poziom 40  
    Posty: 5164
    Pomógł: 644
    Ocena: 1144
    Schemat połączeń z diodą LED i przełącznikiem połączonym z modułem elektronicznym.
    Chyba że chcesz użyż jednego pinu jednocześnie jako wejście i wyjście co jest trudne.
    Lub swiecić leda od przełącznika i znać jego stan?
    Opisz jakoś pełnymi zdaniami w czym dzieło.
  • REKLAMA
  • #6 20890717
    Vexator
    Poziom 10  
    Posty: 176
    Ocena: 36
    khoam napisał:
    GPIO2 w ESP8266 ma wewnętrzny pull-up i bez podłączania czegokolwiek powinieneś odczytać 1.
    masz rację, to był z mojej strony skrót myślowy. Domyślnie jest 1, po podłączeniu GND jest 0, ale ja w kodzie to odwróciłem
    jarekgol napisał:
    Lub swiecić leda od przełącznika i znać jego stan?
    Opisz jakoś pełnymi zdaniami w czym dzieło.
    Ten przełącznik na obrazku to jedyny jaki znalazłem w symulatorze, w rzeczywistości jest tam zwykły ON/OFF.
    Pełnymi zdaniami dzieło:
    Mam w skrzynce z bezpiecznikami zasilacz 3.3V DC. Do niego jest podłączony (pod -) przewód który wchodzi w ścianę. Później on wraca i jest podłączony pod diodę i dalej do zasilacza (pod +).
    Mogę to zasilić na odwrót i też działa (po odwróceniu diody).
    Ten przewód idzie do zbiornika z cieczą i gdy jest jej dużo, to zaczyna przepuszczać prąd, dioda zaczyna świecić.
    Z tego samego zasilacza, równolegle zasiliłem ESP01.
    Chcę sprawdzić, czy dioda się świeci (a dokładniej, to czy prąd płynie, a nie fotodiodą ;) )
  • #7 20891471
    jarekgol
    Poziom 40  
    Posty: 5164
    Pomógł: 644
    Ocena: 1144
    Pewnie ładniej by było dać tam komparator po drodze, ale jak Ci świeci, to powinno działać.
    Uważaj, bo takie sprawdzanie poziomu, potrafi zjeść kable ze względu na elektrolizę.

    ps. Być może będziesz musiał jeszcze dać jakiś opornik do masy od tej zielonej linii pomiarowej, ale to Ci wyjdzie w praniu.
    Załączniki:
    • Jak połączyć obwód 3.3V z GPIO2 w ESP01 do detekcji stanu? czunik_poziomu.png (11.93 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #8 20891666
    Konto nie istnieje
    Poziom 1  
  • REKLAMA
  • #9 20892200
    Vexator
    Poziom 10  
    Posty: 176
    Ocena: 36
    jarekgol napisał:
    Uważaj, bo takie sprawdzanie poziomu, potrafi zjeść kable ze względu na elektrolizę.
    nie wiem co jest w zbiorniku, ale led działa już naście lat, więc może tam jest jakiś pływaczek który załącza na sucho obwód?
    Może źle rozumiem Twój rysunek, ale gdy wzrośnie poziom cieczy, to czy na GPIO nie pojawi się `+`, gdy ja potrzebuję `-`?
    Moja wiedza z elektroniki jest niska, więc wybacz jeśli napiszę jakieś głupoty... czy nie mogę tego zrobić podłączając tranzystor NPN z zewnętrznymi nóżkami do GND i GPIO, a środkową pomiędzy LEDem, a zbiornikiem?
    khoam napisał:
    GPIO2 nie może być podłączane do masy. Spowoduje to problemy z bootowaniem ESP01.
    dotyczy to zarówno GPIO0, jak i GPIO2?
  • Pomocny post
    #10 20892375
    Konto nie istnieje
    Poziom 1  
  • #11 20892949
    jarekgol
    Poziom 40  
    Posty: 5164
    Pomógł: 644
    Ocena: 1144
    Co do 0,1 to możesz
    1) ogarnąć programowo
    2) Odwrócić mój schemat (jak narysujesz, możesz wrzucić do sprawdzenia.
    3) Zanegować sprzętowo, czyli tranzystor, przy czym pamiętaj żeby w bazie był opornik przynajmniej kilka kilo omów.

    Może zajrzyj do zbiornika i zobacz co tam jest ;)


    @khoam do czego się używa tych funkcjonalności? Bo w tym artykule jest że "can be prevented from booting if some pins are pulled LOW or HIGH. " ale po co, to nie widzę.
    Jakiś bezpośredni dostęp do pamięci w takim stanie?
  • #12 20893003
    Konto nie istnieje
    Poziom 1  

Podsumowanie tematu

✨ Użytkownik ESP01 chce zrealizować detekcję stanu obwodu zasilanego 3.3V, który jest połączony z GPIO2. Opisuje, że przy podłączeniu GND na GPIO2 odczytuje 0, a przy odłączeniu 1. W dyskusji poruszono kwestie związane z podłączeniem przełącznika i LED-a, a także z użyciem tranzystora NPN do połączenia obwodu. Uczestnicy wskazali, że GPIO2 ma wewnętrzny pull-up, co oznacza, że bez podłączenia powinno odczytywać 1. Zasugerowano również, aby użytkownik rozważył użycie komparatora oraz dodał opornik do masy. Podkreślono, że GPIO2 nie powinno być podłączane do masy, aby uniknąć problemów z bootowaniem ESP01.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA