Protegendo os pinos de entrada do microcontrolador do soft power switch

10

Estou trabalhando em um botão liga / desliga suave para um microcontrolador, onde um interruptor momentâneo pode ligar o circuito (incluindo o microcontrolador) e, quando o interruptor é pressionado uma segunda vez, o microcontrolador pode se desligar após realizar uma limpeza.

desenho de circuito

Eu tenho o circuito acima até agora, mas não tenho certeza se será confiável. Estou usando uma bateria de íon de lítio (3,7-4,2V) e o regulador TC1015 (saída de 3,0V). A idéia é que, quando o interruptor é pressionado, o regulador liga e o microcontrolador fica uC Poweralto, mantendo-se ligado. Quando o interruptor é pressionado uma segunda vez, uma interrupção uC Switchpermite que o microcontrolador fique uC Powerbaixo, desligando-se.

O que não tenho certeza é se preciso proteger o microcontrolador da tensão da bateria. O microcontrolador que estou usando tem uma tensão máxima absoluta nos pinos de E / S de Vdd + 0,4V, portanto, não tenho certeza de como lidar melhor com isso.

Segundo, esse circuito realmente impedirá o regulador de ligar quando estiver no estado "desligado"? Eu tinha pensado em usar um resistor de pulldown na linha de ativação, mas estou preocupado com o consumo atual enquanto o chip está ligado.

Edit: O microcontrolador é a carga principal que será comutada, portanto, colocá-lo em modo de baixa energia, infelizmente, não funcionará aqui.

Editar # 2 (depois que as respostas foram postadas):

Acabei usando o circuito abaixo:

diagrama de circuito fixo

O circuito publicado anteriormente não funcionou muito bem e teve problemas com uma linha de ativação flutuante quando o microcontrolador não estava ligando.

O novo circuito usa um flip flop, com a linha de dados normalmente baixa. Pressionar o botão acerta o relógio, ligando o sistema. Pressões subsequentes do interruptor elevam a CLOCKlinha (permitindo que o microcontrolador detecte a pressão), mas não afetam a saída do regulador. Quando o microcontrolador estiver pronto para desligar, ele define a DATAlinha alta e, em seguida, a CLOCKlinha alta, o que fará com que o regulador seja desligado.

Uma das coisas realmente legais sobre essa configuração é que o primeiro pressionamento do botão liga o regulador e o mantém ligado até que o microcontrolador esteja pronto para desligar. O ressalto não é um problema, porque não importa quantas vezes a linha do relógio fique alta, a linha de dados ainda será mantida baixa pelo menu suspenso. Além disso, o consumo de corrente deve ser muito mínimo (apenas o flip-flop e o TC1015 enquanto estiver desligado), e há um consumo mínimo de corrente nos resistores enquanto estiver ligado.

O microcontrolador precisa ser protegido da tensão da bateria na linha do relógio, mas como @ Andy sugeriu, isso pode ser feito com um resistor ligado CLOCK.

Carson Darling
fonte

Respostas:

4

R1 e R2 limitarão a corrente em pinos no seu uC e isso geralmente é suficiente para proteger seu dispositivo - você só precisa verificar nas especificações o que é essa corrente "limite" e escolher um valor de resistor adequado, dado que a fonte de alimentação é fornecida pode estar em 0V (sem energia). Os zeners podem ser deixados de fora nessa base.

Confiabilidade é outra questão. Mudar de salto pode fazer com que o seu uC seja ligado e desligado algumas vezes, então escreva seu código para ficar ciente disso.

Eu acho que pode ser aconselhável ter um resistor ativado, mas provavelmente na região de + 10K e talvez isso possa ser maior, possivelmente 100k.

A tensão no pino de desligamento deve ser de pelo menos 45% de Vin, portanto isso não deve ser um problema.

Andy aka
fonte
3

Isso parece um sistema de travamento automático, que em teoria deveria funcionar, como um circuito de relé com travamento automático (Um botão é usado para ligar o relé e, em seguida, porque o pino de carga e o pino da bobina estão amarrados juntos, o relé permanece ligado contanto que a energia vá para os pinos de carga).

Para testá-lo, sem arriscar um microcontolador, você pode fazer isso. Adicione uma carga simulada para manter o regulador feliz (alguns leds, para que você possa ver que está funcionando) e amarre a saída no ponto em que está marcada uC Power. Depois de pressionar o interruptor, o regulador deve iniciar, ligando os leds e a energia uC, que por sua vez deve manter o pino de habilitação em alta lógica (a lógica alta de desligamento é no mínimo 45% do VIN, portanto 1,89V a 4,2V in. )

Portanto, se você pressionar o botão e os LEDs permanecerem ativados após a liberação, ele funcionará. Caso contrário, não funcionará como está.

Aviso: eu digo isso, não tendo certeza de como os diodos Zener farão com que o circuito reaja.

Transeunte
fonte
0

O circuito que liga a bateria, os sinais do microcontrolador e a entrada SHDN * do regulador (renomeada EN) parece desonesto.

Que tal usar uma trava (funcionando com bateria) para capturar o fechamento da chave. Em seguida, a saída dessa trava pode ser OR'ed com um sinal de sinal do MCU para acionar o pino SHDN * do regulador (renomeado para EN no esquema). Ao inicializar, o MCU deve acionar sua linha de habilitação primeiro e depois limpar a trava, garantindo assim que a EN permaneça ativada.

A ação subsequente do botão pode ser monitorada através da trava: se o interruptor for pressionado novamente, a trava ficará alta novamente. O MCU percebe isso e limpa a trava e seu sinal de habilitação, acionando o desligamento. Como o interruptor está travado, o MCU pode monitorar isso de maneira muito conveniente, simplesmente pesquisando-o com uma frequência de lazer.

Um refinamento a mais opcional seria um circuito para garantir que, quando a bateria estiver online, o sistema seja ligado sem o uso do botão. Pode ser algum tipo de pulso que ajusta a trava.

Kaz
fonte
0

Puxe EN baixo com um resistor adequado e amarre-o a um pino io no MCU. O interruptor liga um pino de entrada do mcu. Pressionar o botão aciona uma interrupção no pino de entrada do mcu que alterna o pino de saída que controla o pino EN do seu LDO.

Colocar o mcu em sono profundo permitirá que o pino seja puxado para baixo e desabilitará o LDO. Ao acionar uma interrupção com o interruptor, ele será ativado, puxando o pino para cima novamente e ativando a ativação do LDO novamente.

três
fonte
Desculpe, eu deveria ter especificado um pouco mais claramente, o microcontrolador é a carga principal que o LDO alternará, portanto, deixá-lo em um estado de baixa energia não funcionará.
Carson Querido