Ao projetar um circuito, os dados do registro serão armazenados em um cartão SD. As informações virão de um circuito pai ao qual este se conecta. O circuito pai fornecerá 5V à minha placa filha. A placa filha usa um MCU que opera em 3.3V, por isso estou usando apenas alguns diodos para diminuir a tensão de 5V.
MEU DESAFIO É: No caso de uma falta de energia, desejo que o MCU da minha placa filha consiga detectar a principal perda de energia e, em seguida, liberar imediatamente os dados da RAM para o cartão SD e ficar ocioso antes de desligar. . Ao gravar em um cartão SD, você pode causar corrupção se perder energia no meio de um procedimento de gravação.
Estou pensando em usar um grande capacitor para apenas amortecer a energia um pouco. Eu sei que existem alguns ICs do supervisor do MCU por aí que fariam um trabalho muito bom, mas eles são destinados a casos em que você precisa manter a energia por dias. Eu só preciso de um ou dois segundos, no máximo. Mas tenho que ter cuidado para não deixar o MCU "piscar", pois a energia do capacitor diminui abaixo do limite do IC. Alguém tem um esquema ou pode oferecer alguma sugestão de como devo fazer isso?
Aqui está o que eu tenho até agora ... (a tampa .5F é o meu capacitor de reserva)
fonte
Respostas:
Usando diodos para diminuir a tensão? Que nojo. Use um regulador de 3.3V. É a coisa certa a fazer. Você e / ou seus clientes terão prazer em fazê-lo.
Você tem a ideia certa, geralmente. Use um boné enorme, embora .5F possa ser um pouco grande demais .
Em vez de usar um comparador, você pode usar um divisor de tensão e executar a saída em um dos pinos de interrupção na mudança do PIC. Configure o divisor para que a entrada fique um pouco acima do máximo Vih quando o 5V estiver ativo. Isso tem o bônus adicional de também baixar os 5V mais rapidamente quando a fonte é removida.
Você também pode tentar usar uma bateria e um power mux. Quando o 5V desaparecer, o mux mudará para a energia da bateria. http://focus.ti.com/paramsearch/docs/parametricsearch.tsp?family=analog&familyId=422&uiTemplateId=NODE_STRY_PGE_T
fonte
Como ajs410 e Thomas dizem, usar gotas de diodo para ir de 5V a 3,3V é uma Bad Idea ™. Isso porque, apesar do que foi informado na escola, a tensão do diodo é tudo menos constante. As 3 gotas de diodo podem fornecer aproximadamente algo entre 2,3V e 3,2V, que pode ou não ser muito baixo para o seuμ C ou cartão SD. μ Um típico. Isso nos dará algumas centenas de mV extras para o capacitor de buffer.
Eu começaria substituindo D4 por um tipo Schottky como um BAT54 , que tem uma corrente de fuga baixa <1
Em seguida, há a fonte de alimentação de 3.3V. Use um LDO de baixa corrente à terra , como o Microchip MCP1703 , que possui uma corrente à terra de apenas 2μ R. (A Seiko S-812C40 é a minha favorita e tem especificações ainda melhores, mas parece ter pouca disponibilidade para quantidades baixas.)
Então você deseja detectar a perda de sua fonte de alimentação de 5V. Para isso, eu costumo usar um MAX809 . Isso criará um sinal de saída baixo quando a tensão de entrada cair abaixo de um determinado limite. Para um limite de alimentação de 5V, estão disponíveis tensões de 4,63V, 4,55V e 4,38V. A saída do MAX809 vai para o seuμ Pino de interrupção de C , para que você seja avisado imediatamente quando o 5V cair e você pode gravar o buffer no cartão SD sem demora.
Agora, resta apenas 1 ponto: o tamanho do capacitor de buffer . Você precisa saber quanta corrente você está consumindo da fonte de 3,3V ao escrever no cartão SD. Vamos supor que isso seja 20mA. A tensão do capacitor diminuirá linearmente quando uma corrente constante for consumida:
ou
Vamos supor ainda que você precisa de 100ms para gravar o buffer no cartão SD. Então a única variável restante éΔ V . Começamos com 5V menos 1 gota de diodo Schottky, resultando em 4,5V. A queda de tensão mínima para o MCP1703 é de 725mV, para que possamos descer para 4V eΔV = 0,5V. Então
Agora, os valores que usei são estimativas aproximadas, e você terá que fazer o cálculo com os números corretos, mas a estimativa de estimativa indica que talvez você nem precise da supercap 0.5F, apesar de oferecer uma margem de segurança séria. Por exemplo, você teria 10s em vez de 100ms para liberar o buffer no cartão SD.
(o abandono do Seiko S812C é de apenas 120mV, portanto, isso dobrará sua diminuição de tensão permitida e, portanto, o tempo disponível.)
fonte
Uma solução para isso é usar os comparadores do seu microcontrolador.
Você não mencionou qual microcontrolador está usando, portanto, só podemos adivinhar se ele realmente possui comparadores no chip. Se o seu micro tiver uma referência de tensão, melhor ainda.
Mas, supondo que sim, você pode configurar uma interrupção para pular para um ISR. O ISR pode mudar o relógio (se possível) para uma rotina de baixa energia e depois desligar. Se você estiver executando com uma frequência baixa, poderá ter muito mais tempo para realizar o salvamento - a desvantagem é, no entanto, que o salvamento leva mais ciclos.
fonte