Jak osiągnąć stan n...
 
Powiadomienia
Wyczyść wszystko

Jak osiągnąć stan niski GPIO po uruchomieniu  

  RSS
sindap
(@sindap)
Młodzik

Witam. Kombinuję na wszelkie sposoby ale zawsze i co gorsza nieregularnie mam przeważnie wysoki stan na wyjściu GPIO, które ustawiam do sterowania przekaźnika. Czy jest sposób aby do pełnego uruchomienia ESP stan GPIO był zawsze niski?

Cytuj
Dodane : 03/08/2020 10:31 pm
isom
 isom
(@isom)
Prezes Moderator Zasłużony dla Forum, Donator 2019, Donator 2K20

Wszystko zależy od tego które to GPIO , niektóre przy starcie zawsze dają stan wysoki , najlepiej poczytać o konkretnym esp i jego GPIO . Są też takie jak GPIO 0 że nie mogą przy starcie być w stanie niskim.

OdpowiedzCytuj
Dodane : 03/08/2020 10:48 pm
sindap
(@sindap)
Młodzik

Konkretnie chodzi o ESP12F. Teraz przekaźniki mam podłączone do GPIO 12 i 13.

Hm. Tak po przemyśleniach skoro i tak przekaźniki steruje przez TXS0108E to myślę, że wykorzystam jego wejście OE które wysteruje dopiero po określonym ustaleniu GPIO.

Ewentualnie pokombinuje coś jeszcze z MCP23017. 

Może ktoś już robił takie rozwiązania? 

OdpowiedzCytuj
Dodane : 03/08/2020 10:55 pm
sindap
(@sindap)
Młodzik

Nikt nie opowiada więc pozwolę sobie odpowiadać w tym wątku i z jednej strony może się komuś to przyda a może ktoś naprowadzi mnie na rozwiązanie.

Okazuje się, że po usunięciu wszystkich reguł i dodaniu tej:

on System#Wake do
GPIO,12,0
endon

To zgodnie z jej założeniem na GPIO 12 po uruchomieniu ESP mam to co chcę czyli stan niski. Nie mam kłopotu z tym, że występują jakieś nieustalone stany. Niby wszystko w porządku.

Jednak gdy dodam regułę:

on przycisk2#State do
if [przekaznik2#State]=1
gpio,12,0
else
gpio,12,1
endif
endon

wtedy mam problem. Przy każdym restarcie ESP reguła ta powoduje, że przy starcie ESP to GPIO 12 zmienia swój stan. Wygląda to tak, że jeżeli przy starcie GPIO 12 jest w stanie 0 to druga reguła go zmienia na 1.

Natomiast jak pierwszą regułę zmodyfikuję na 12,1 to druga reguła zmienia na stan 0. Niby w porządku ale do czasu zadziałania drugiej mam stan wysoki. Więc jest źle.

OdpowiedzCytuj
Dodane : 05/08/2020 9:21 pm
sindap
(@sindap)
Młodzik

OK. Już wiem.

Druga reguła powinna mieć postać:

on przycisk2#State do
if [przycisk2#State]=0
gpio,12,0
else
gpio,12,1
endif
endon

Jak ktoś ma jeszcze jakieś sugestie to chętnie przeczytam.

OdpowiedzCytuj
Dodane : 05/08/2020 9:43 pm
Udostępnij: