Ir ao conteúdo
  • Cadastre-se

ESP8266 Pino Reset


MINFO

Posts recomendados

Olá, tenho um ESP12E onde o pino RESET está ligado a um botão PUSH normal. Ao pressionar o botão ele gera um pulso GND no pino reset e com isso reseta o ESP. Eu gostaria de um circuito que por software eu possa habilitar ou desabilitar essa funcionalidade. Ou seja ao acionar um nível alto ou baixo em uma determinada GPIO eu "abra" este circuito e mesmo que o botão push seja pressionado esse circuito impeça que o pino RESET do ESP receba o sinal. Eu consigo fazer isso via relé mas eu gostaria de fazer de forma eletrônica, sem o relé.
Por favor, alguém tem alguma sugestão?

Obrigado,

 

 

Link para o comentário
Compartilhar em outros sites

Está falando de uso de capacitor igual aos usados nos Arduinos para evitar eles resetarem quando estão em modo ISP? 

 

Só colocar um capacitor entre o terra e o resete se for o mesmo caso. Por programação o reste é o botão que reseta a programação é o ovo que vem antes da galinha X)

 

você pode mudar isso mas se der é coisa de micro-programação(tipo de bootloader e coisa do tipo) e eu ainda boio nisso X)

Link para o comentário
Compartilhar em outros sites

Oi, obrigado por sua resposta. Eu não entendi bem como o capacitor iria impedir que ao pressionar o botão PUSH o sinal GND chegue ao pino do RESET. Eu preciso desabilitar por software, utilizando algum hardware montado sobre uma porta GPIO,   que ao pressionar o botão do reset este fisicamente envia um sinal GND e reseta o ESP, eu preciso que em determinado momento mesmo que o usuário pressione o botão do reset este esteja como desligado fisicamente do pino RESET, ou seja, o sinal GND seja impedido de chegar até o pino do RESET. Eu consigo fazer isso com um relé, mas a solução fica pobre né, um relé não foi feito para isso.

Link para o comentário
Compartilhar em outros sites

É porque algumas vezes esses programas tem auto resete ... não aprofundei muito nisso, sabia porque estava fazendo um programador com Arduino e ele tem esses problemas de auto reset e o capacitor segura a tensão já que a mesma normalmente fica alta no Arduino pelo tempo necessário.

 

Teoricamente se você meter um capacitor ele aguenta a tensão por alguns milissegundos... quanto maior mais tempo ele fica com a tensão alta(ou seja sem resetar). 

 

Ao pressionar o reset você criar um curto com terra... a tensão/corrente vai preferir ir para o terra do que ir para o circuito que tem resistência. Ou seja, ou você muda esse caminho fisicamente retirando esse gnd ou modifica o micro-código do processador para ele não dar resete quando ficar em LOW ou sei lá o que.

 

 

Vou dar uma pesquisada aqui também nisso...

 

 

Mas usar um resete na tua programação tem algo muito ruim ai, cara!

Link para o comentário
Compartilhar em outros sites

O reset é para tirar o ESP do modo DEEP SLEEP. Ou seja, quando o ESP8266 estiver dormindo o RESET deve funcionar fisicamente ligado ao botão e este por sua vez ao GND. Porém quando o ESP está acordado, se o usuário pressionar o botão eu não gostaria que o ESP reinicia-se, ou seja, se o ESP estiver funcionando, o botão RESET não deve conseguir reiniciar o ESP.  

Link para o comentário
Compartilhar em outros sites

https://github.com/esp8266/Arduino/issues/1722

tente usar ESP.restart() e colocar um botão a mais na tua estrutura e no pino do teu microcontrolador usar um attachinterrupt para quando apertar o botão ele faz um if verificando os estados que você quer e se tiver ok ele manda um ESP.restart().

 

Será que isso resolve?

Link para o comentário
Compartilhar em outros sites

Olá, obrigado por sua resposta. Eu não quero resetar o ESP por software, isso seria fácil. O que eu quero é manter o botão reset ligado fisicamente ao pino RESET, para que funcione quando o ESP estiver no modo deep sleep e uma vez que o ESP estiver funcionando fora do modo sleep caso o botão seja fisicamente pressionado o ESP NÃO reset. Ou seja, eu preciso de um interruptor eletrônico, no qual eu desligue fisicamente o botão do pino reset. 

Link para o comentário
Compartilhar em outros sites

É que to te dizendo ... em vez de você mandar o usuário apertar o botão reset do bagulho(aquele que você tem que mudar configurações de forma avançado) ele vai apertar um botão "reset2" criado por você que pode ou não restar via software o que você quer ^^

Link para o comentário
Compartilhar em outros sites

A única forma de retirar o ESP do modo deep sleep é resetando através do pino RESET ou programando um tempo de 0.1 a 70 minutos ao entrar no modo deep sleep. Dessa forma não possível mover o circuito de reset para uma interrupção pois ela não funciona no modo deep sleep. 

Link para o comentário
Compartilhar em outros sites

Depois de revirar a internet gringa por um bom tempo

https://github.com/esp8266/Arduino/issues/1729

 

 

ou

 

https://github.com/chaeplin/esp8266_and_arduino/blob/master/_48-door-alarm-deepsleep/README.md

 

 

você pode controlar em vez de uma porta normalmente berta por um transistor ou talvez um mosfet...Cara, eu li muito coisa e aprendi também lol valeu X) 

adicionado 2 minutos depois

tem um discussão aqui dos gringos https://www.bountysource.com/issues/30145191-deep-sleep-and-wake-up-using-interrupt que vai dar no mesmo. Acredito que a solução geral veio dai.

adicionado 12 minutos depois

Fora isso, como você falou ou você pode desligar o negocio através de comandos através do teu micro controlador, vai ser um relé com uso de mosfet de potencia ou coisa do tipo...

 

Li alguns manuais e não tem como sair por software do deepsleep X) a não ser que você faças essa ligações ai em cima e controle por níveis altos e baixos de um microcontrolador.

 

 

Se ainda não é isso que você quer... fale ai que outro pode lhe ajudar @MINFO

 

^^ fuizzzzzzzzzzzz tenho aula as tenho que acordar 5:30 amanhã lol

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...