SENAI - CURSO SUPERIOR DE TECNOLOGIA EM MECATRÔNICA INDUSTRIAL
Disciplina: Microcontroladores
Data: 09/06/2015
Professor: Henrique Foresti
Alunos: Carlos Antônio Costa de Oliveira
Francisco Roberto N. Lima
Special Modes
Power saving - Sleep
Introdução
De modo a economizar energia os processadores podem ser comandados
para entrarem em um modo de baixo consumo de energia quando estão
ociosos. Cada processador tem vários modos de economia de energia.
Os modos de baixo consumo de energia foram introduzidos nos
processadores, com o tempo, no entanto, mais modos de economia de
energia foram criados e melhoramentos foram feitos em cada modo existente
para permitir que o processador consumisse ainda menos energia quando
estivesse em um desses modos.
A ideia básica por trás desses modos é cortar o sinal de clock e a alimentação
de certas partes ociosas dentro do processador. Quanto mais partes ociosas
você parar (cortando o sinal de clock), reduzir a tensão de alimentação ou até
mesmo completamente desligar, mais energia você economizará. Em
contrapartida, mais tempo será necessário para o processador “acordar” e
voltar a ficar 100% operacional.
Os modos de economia de energia (Power Saving Modes) em sistemas
embarcados são geralmente utilizados em aplicações móveis, em que o sistema
é alimentado por uma fonte de energia finita, como baterias ou pilhas.
O desafio para os próximos anos será melhorar a eficiência energética das
tecnologias on-line. Essa melhoria já foi conseguida com a tecnologia de standby de equipamentos eletrônicos desconectados da internet. Depois de quase 30
anos de pesquisas e investimentos, a indústria de conseguiu reduzir bastante o
consumo desses aparelhos quando estão no modo de espera.
Aparelhos
Consumo mín Consumo médio Consumo máx
Equip. áudio
2
4
15
DVD
2
4
12
Rádio/relógio
1
2
3
Portão eletrônico
2
3
4
Sist. de segurança
4
14
22
Microondas
1
3
6
Computador
1
2
4
Impressora
4
5
6
Caixa TV a cabo
5
12
25
Decod. TV satélite
8
12
18
Vídeo game
1
2
3
Secretária eletrôn.
2
3
5
Telefone s/ fio
2
3
5
Televisão
1
5
22
Vídeo cassete
1
3
4
Exemplos de Aparelhos que utilizam economia de energia
Modo Sleep (suspensão) é um modo de baixa energia para dispositivos
eletrônicos, como computadores, televisões, aparelhos de controle remoto,
celulares, sistemas de segurança. Estes modos economizam
significativamente no consumo de energia elétrica em comparação com o
aparelho ou dispositivo totalmente ligado.
O Modo de suspensão passou por vários nomes, incluindo Stand By
(Microsoft e Mac)
Suspender ( Windows ) e suspensão para a RAM ( Linux ).
O estado da máquina é mantido em RAM e, quando colocado em modo de
suspensão, o computador corta a energia para subsistemas desnecessários
e coloca a RAM em um estado de energia mínima, apenas suficiente para
reter seus dados. Devido à grande economia de energia, a maioria dos
laptops entra automaticamente neste modo quando o computador estiver
funcionando com baterias e a tampa é fechada.
Um computador deve consumir alguma energia durante o sono, a fim de
alimentar a RAM e ser capaz de responder a um evento de despertar.
Hibernação
Hibernação, também chamado de suspensão para o disco no Linux,
guarda todos os dados operacionais de computador no disco rígido antes de
desligar o computador completamente. Ao ligar novamente o computador, o
computador é restaurado ao seu estado anterior à hibernação, com todos os
programas e arquivos abertos, e os dados não salvos intactos. Em modo de
espera, estado do computador são salvos na memória RAM; no modo de
hibernação, o estado do computador está guardado no disco rígido.
A suspensão híbrida
Modo de suspensão e hibernação podem ser combinados: o conteúdo da
RAM primeiro são copiados para armazenamento não-volátil como para a
hibernação regular, mas, em seguida, em vez de desligar, o computador
entra em modo de suspensão. Esta abordagem combina os benefícios do
modo de suspensão e hibernação.
ACPI
ACPI é o padrão atual para gerenciamento de energia em computadores
modernos.
No caso dos controladores de sinais digitais do PIC, existem dois modos:
O SLEEP MODE e o IDLE MODE
Modo SLEEP (Power Down – Modo de Repouso – Dormir – Economia
de Energia)
No modo Sleep, o processador, os osciladores e qualquer periférico que
opere com esses osciladores são desabilitados, causando desta forma o
modo com menor consumo de energia desses componentes.
O FSCM (Fail-Safe clock Monitor- Monitoramento Seguro de Falha do Clock)
não opera nesse modo, enquanto o LVD (Low Voltage Detect - Detector de
Baixa Voltagem) e WDT (Watchdog timer), se ativos, continuarão operando
quando o componente entrar no modo Sleep.
O LPRC (Low Power RC Oscilator) também continuará a ser executado se o
WDT (Watchdog Timer) estiver ativo.
Modo IDLE
O modo Idle consiste em desabilitar a execução das instruções pelo
processador, desligando o sistema oscilador e limpar o Watchdog Timer. Os
periféricos continuam operando normalmente com o oscilador, apenas o
processador não receberá mais esse sinal.
Se o WDT ou o Fail-Safe Clock Monitor (FSCM) estiverem ativos, o Low
Power RC Oscilador (LPRC) continuará ativo.
Ocorre um evento de wake-up (acordar) do processador em um modo IDLE,
quando há qualquer interrupção, alguma forma de reset ou um time-out do
WDT.
Para que não ocorra um wake-up indesejado, é preciso desabilitar todas as
interrupções, definindo prioridade zero para elas. Para utilizar uma
interrupção como wake-up (evento acordar do processador), ela deve ter
prioridade um ou maior.
O modo Power-down, mais conhecido por modo SLEEP, faz com que o chip
entre em estado praticamente inerte, onde o chip em si passa a consumir
aproximadamente 60uA (contra 7mA em operação normal).
Esta característica aliada aos pull-ups do PORTB (são ligações físicas entre
o microcontroladores e o mundo exterior – possui 8 pinos) e a interrupção
nas mudanças de estado permitem que o sistema opere usando a bateria
com longa duração, como os controles remotos em geral.
Para entrar no modo Power-down, o sistema executa a instrução SLEEP.
Neste modo, se o WATCH DOG estiver habilitado, o mesmo será zerado e
continuará rodando, o bit PD\ (Power down) que sinaliza o modo será
zerado e o bit TO\(timer-out) será setado, o oscilador interno é desligado,
não gerando mais fases Q1 a Q4 do clock e parando tanto a CPU (unidade
central de processamento) quanto o TIMER 0.
O estado dos pinos I/O permanecem inalterados.
Saindo do modo power-down (SLEEP)
Existem três maneiras de sair do modo SLEEP:
- Reset externo pelo pino MCLR\(entrada de reset - nível 0).
- Time-out do WATCH DOG, caso esteja habilitado.
- Interrupção externa RB0/INT, ou seja, interrupção por mudanças no
PORTB e interrupção de fim de escrita na EEPROM.
O TIMER 0 não finaliza o modo SLEEP porque não funciona sem o clock.
Se sair pelo reset no pino MCLR\ a CPU iniciará.
As interrupções citadas, para tirarem a CPU do SLEEP precisam estar com
os bits de requisição individuais habilitados.
Alguma Dúvida?
Obrigado a todos!
Download

Modo Sleep